الفصل السادس: التدريب العملي في الأمن السيبراني
حزمة عملية شاملة لبناء مهارات الأمن: من إعداد المعمل إلى اكتشاف الهجوم والاستجابة وكتابة تقرير الحادث.
1 — إعداد معمل عملي آمن (Lab Setup)
مكونات موصى بها للمعمل:
- Host: جهاز بذاكرة 16GB+ وقرص SSD.
- Hypervisor: VirtualBox أو VMware.
- VMs: Kali Linux (مهاجم)، Metasploitable أو OWASP Juice Shop (ضحايا)، ELK Stack (Logstash/Elasticsearch/Kibana).
- الشبكة: أنشئ شبكة Host-only لعزل الحركة ومنع تسرب التجارب إلى الإنترنت.
التقط Snapshots لكل VM قبل البدء؛ هذا يسهل الاسترجاع عند حدوث خطأ.
2 — الأدوات الأساسية والتثبيت
أدوات مهمة للمعمل مع أوامر تثبيت على Kali:
sudo apt update
sudo apt install -y nmap nikto wireshark tshark suricata openvas burpsuite
pip3 install pefile
يمكنك تثبيت ELK عبر Docker أو VM مُجهز مسبقًا لتجميع اللوجات وعرض التنبيهات.
3 — الاستطلاع والمسح (Recon & Scanning)
ابدأ بالمسح السلبي ثم الانتقال لمسح نشط. أمثلة أوامر:
# مسح SYN سريع
nmap -sS -Pn 192.168.56.102
# مسح كامل مع اكتشاف الخدمات
nmap -sS -sV -O -p- -oX scan_results.xml 192.168.56.102
احفظ النتائج (XML، grepable) لأتمتة التحليل لاحقًا.
4 — تحليل الشبكة (Packet Analysis)
تسجيل الحزم باستخدام tshark/Wireshark:
sudo tshark -i eth0 -w capture.pcap
tshark -r capture.pcap -Y http.request -T fields -e ip.src -e http.host -e http.request.uri
استخدم Wireshark للبحث عن علامات IOC مثل اتصالات DNS مشبوهة أو محاولات تحميل ملفات غريبة.
5 — تقييم الثغرات وتسجيل التقارير
أدوات مثل Nikto وOpenVAS تفيد في فحص تطبيقات الويب:
nikto -h http://192.168.56.102:3000 -output nikto_report.html
صنّف الثغرات حسب CVSS وأعد الفحص بعد تطبيق التصحيحات.
6 — أمن التطبيقات (AppSec)
ممارسات وقائية ونماذج كود آمن. مثال لمنع SQL Injection في Python:
import sqlite3
conn = sqlite3.connect('example.db')
cur = conn.cursor()
username = input("user: ")
cur.execute("SELECT * FROM users WHERE username = ?", (username,))
rows = cur.fetchall()
print(rows)
استخدم أدوات DAST/ SAST (مثل OWASP ZAP وBandit) لفحص التطبيقات.
7 — الكشف والاستجابة (Detection & IR)
أبسط سكربت مراقبة لوج SSH والكشف عن محاولات فشل الدخول:
#!/usr/bin/env python3
import time, re
from pathlib import Path
LOGFILE = Path("/var/log/auth.log")
PATTERN = re.compile(r"Failed password for .* from (?P<ip>\d+\.\d+\.\d+\.\d+)")
def follow(f):
f.seek(0,2)
while True:
line = f.readline()
if not line:
time.sleep(0.5); continue
yield line
with LOGFILE.open() as f:
for line in follow(f):
m = PATTERN.search(line)
if m:
print("[ALERT] Failed login from", m.group('ip'))
# إجراء اختياري: إضافة إلى قائمة حظر
# os.system(f"sudo iptables -A INPUT -s {m.group('ip')} -j DROP")
8 — قواعد Suricata (مثال تعليمي)
# قاعدة بسيطة لاكتشاف استعلام DNS على مجال مشبوه
alert dns any any -> any any (msg:"DNS query to suspicious domain"; content:"bad-example"; sid:1000001; rev:1;)
ادمج قواعد Suricata مع ELK لعرض التنبيهات في Kibana.
9 — تحليل برمجيات خبيثة (مقاربة آمنة)
إرشادات وأوامر للتحليل الثابت: strings وfile ثم تحليل ديناميكي داخل VM معزول.
file suspect.bin
strings suspect.bin | head -n 50
# استخدام pefile في بايثون لتحليل PE headers
أغلق الشبكة الخارجية عن VM الذي تعمل عليه عند اختبار عينات مشبوهة.
10 — سيناريو مشروع نهائي (كشف/استجابة)
وصف المهمة العملية:
- من Kali نفّذ مسحًا على OWASP Juice Shop:
nmap -sS -Pn 192.168.56.102. - التقط حركة الشبكة عبر tshark وادفعها إلى ELK.
- اضبط قاعدة Suricata لاكتشاف مسح SYN ومن ثم تنبيه/حظر IP.
- حلّل pcap واكتب تقرير حادث يتضمن أدلة (pcap، لوجات، ناتج nmap).
أوامر مساعدة للمشروع
# التقاط الحزم
sudo tshark -i eth0 -w capture.pcap
# حظر مؤقت لمصدر الهجوم
sudo iptables -A INPUT -s 192.168.56.101 -j DROP
# استخراج ملخص الاتصالات من pcap
tshark -r capture.pcap -q -z conv,ip
11 — كتابة تقرير الحادث (نموجي)
بنية التقرير:
- الملخص التنفيذي: ما حدث بإيجاز.
- سرد الحوادث: تسلسل الأحداث وتوقيت كل خطوة.
- الأدلة: ملفات pcap، لوجات، nmap xml، لقطات شاشة.
- التحليل الفني: كيفية الهجوم، الأدوات المستخدمة، الثغرات.
- الإجراءات المتخذة: حظر، تصحيح، عزل الأنظمة.
- التوصيات: تحديثات، سياسات تنفيذ، تدريب الموظفين.
12 — موارد إضافية وممارسات متقدمة
- المشاركة في CTFs: TryHackMe, HackTheBox.
- تعلم أدوات SIEM وكتابة قواعد كشف متقدمة.
- تحسين المهارات في البرمجة (Python) لأتمتة مهام الأمن.

تعليقات
إرسال تعليق