
تحقيق DFIR + 7 قواعد Suricata على اختراق محاكى لشركة NexaCorp (vsftpd 2.3.4 CVE-2011-2523 + MITRE Caldera C2). مشاركة فردية لمدة 4 أيام (BeCode Brussels Mission 01). تقرير من 54 صفحة، 10 نتائج، 7/7 قواعد تم التحقق منها بواسطة إعادة تشغيل PCAP.
DFIR تحقيق وهندسة كشف على اختراق محاكى ضد البنية التحتية لـ NexaCorp. تم إجراؤه كمهمة فردية لمدة 4 أيام (معسكر BeCode Brussels للفرق الزرقاء والحمراء، المهمة 01). التسليم هو تقرير نتائج من 54 صفحة (PDF) بالإضافة إلى 7 قواعد Suricata مُحققة تلتقط الحادثة المُلتقطة في تشغيل PCAP.
يُوثق هذا المستودع مهمة محلل SOC تم إجراؤها كجزء من معسكر BeCode للأمن السيبراني (دفعة 2025-2026). يُعيد بناء اختراق كامل من أدلة الشبكة والسجلات، ثم يُقدم مجموعة مُحققة من قواعد كشف Suricata. وهي أول حادثة في سلسلة NexaCorp DFIR.
هذه مهمة معملية ضد بنية تحتية خيالية. NexaCorp هو عميل خيالي يُستخدم كسيناريو لمهمة BeCode Brussels 01. المضيف المُخترق هو جهاز Metasploitable 2 قابل للاختراق عن قصد للتدريب الأمني، وبرنامج Caldera Sandcat الخبيث هو جزء من المعمل الذي يُعلم المحلل كيف يبدو حركة مرور المُخترق الحقيقي. لم يتم مهاجمة أي منظمة حقيقية أو شبكة أو إنسان.
جميع عناوين IP وأسماء المضيفين ومؤشرات الاختراق المنشورة في هذا التقرير (172.16.50.10، 192.168.10.10، 10.40.0.200، blue11، mesdec، إلخ.) هي قطع أثرية محلية للمعمل، وليست معلومات استخباراتية عن تهديدات حقيقية. لا تقم بتغذيتها إلى SIEM كمؤشرات IOC.
النشر مصرح به من قبل مدرب معمل BeCode (توماس ب.) بتاريخ 2026-05-17. يظهر بيان السرية الكامل في تقرير النتائج (قسم "التوزيع والتصنيف").
| بيانات المهمة | القيمة |
|---|---|
| المرجع | BCC-2026 / INC-2026-001 |
| المدة |
السيناريو (خيالي). اتصلت شركة NexaCorp، وهي عميل مؤسسي متوسط الحجم، بالفريق الأزرق لـ BeCode Corp بعد أن رصدت مراقبتهم الداخلية حركة مرور غير متوقعة إلى الخارج من أحد خوادم لينكس الداخلية لديهم. سجل جدار الحماية الخاص بهم حركة المرور لكنه لم يُصدر تنبيهًا قابلًا للتنفيذ. كان مجلس الإدارة بحاجة إلى تحديد الموقف قبل اتخاذ قرار بشأن الإفصاح والإخطار التنظيمي.
التفويض. التحقيق في نافذة الحادثة المشتبه بها، وتوصيف مسار دخول المهاجم ونشاطه بعد الاستغلال، وتقييم ما التقطته مجموعة الكشف الحالية (وما فاتها)، وتقديم خطة علاج ذات أولوية. أضافت المرحلة الثانية هندسة الكشف: إنتاج قواعد IDS شبكة جاهزة للنشر للكشف عن تكرار الحادثة في الوقت الفعلي.
حزمة الأدلة المستلمة من العميل.
السياق التعليمي. تم تسليم هذه المهمة خلال معسكر BeCode Brussels للفرق الزرقاء والحمراء (نوفمبر 2025 إلى سبتمبر 2026) كمهمة 01: تحقيق فردي محدد بوقت يحاكي مهمة استشارية حقيقية في DFIR. البنية التحتية للمعمل، وهوية NexaCorp، وقيم IOC خيالية عن قصد. تتبع المنهجية والأدوات وتنسيق التقرير المعايير الواقعية (NIST SP 800-61r2، SANS PICERL، MITRE ATT&CK).
📄 تقرير النتائج الكامل المكون من 54 صفحة هو التسليم الأساسي. تحميل PDF (215 كيلوبايت) أو تصفح مصدر Markdown للبحث والاستشهاد.
في مساء 2026-05-09 الساعة 22:53 UTC، اخترق مهاجم خارجي (172.16.50.10) خادمًا داخليًا لـ NexaCorp (192.168.10.10) عن طريق استغلال CVE-2011-2523، الباب الخلفي الموجود في vsftpd 2.3.4 (إصدار تم توثيق اختراقه علنًا منذ يوليو 2011). طلب FTP واحد USER ينتهي بـ :) أدى إلى فتح شل ارتباط جذر غير موثَّق على TCP/6200. قام المهاجم بتشغيل 8 أوامر استطلاعية خلال جلسة مدتها 20 ثانية (لا ثبات، لا استخراج بيانات، لا حركة جانبية عبر هذا المتجه) ثم قطع الاتصال.
بشكل مستقل، تم العثور على نفس المضيف يشغل وكيل MITRE Caldera "Sandcat" موجود مسبقًا في /opt/caldera/sandcat (جذر، كخفيّة) يُرسل إشارات كل 40-50 ثانية عبر HTTP بنص واضح إلى 10.40.0.200:8888 طوال النافذة المُلتقطة. هذا هو "الاتصال الخارجي غير المعتاد" الذي أبلغ عنه العميل في البداية ويشير إلى اختراق سابق غير ممثل في حزمة الأدلة (كان البرنامج الخبيث نشطًا بالفعل في إطار PCAP الأول).
قام Wazuh SIEM الحالي بإدخال 397 حدثًا من المضيف المستهدف لكنه أثار فقط 4 تنبيهات عالية الشدة (1.0% من الإجمالي)، جميعها صُنفت على أنها هجوم تخمين كلمة مرور عام (MITRE T1110). لم يحدد أي منها حمولة استغلال CVE-2011-2523، أو شل الارتباط على TCP/6200، أو قناة Caldera C2: البايت المستغل (USER baduser:)) لم يُسجل أبدًا بواسطة vsftpd نفسه، ولم يكن لدى SIEM أي معلومات عن الشبكة لرؤية الباقي. قواعد Suricata السبعة المُسلَّمة في المرحلة 2 تُسد الفجوات الثلاث.
مؤشرات IOC الرئيسية (محدودة بالمختبر، لا تُغذى إلى SIEM حقيقي):
للحادثة المُلتقطة خيطان متميزان، تم إعادة بنائهما من PCAP:
vsftpd 2.3.4، إصدار به باب خلفي مُوثق علنًا (CVE-2011-2523)، كان متاحًا على الشبكة الداخلية (النتيجة I1).USER ينتهي بـ :) أدى إلى تفعيل الباب الخلفي (النتيجة I3).10.40.0.200:8888 طوال النافذة، دليل على اختراق سابق غير ممثل في حزمة الأدلة (النتيجة I5).تم تنظيم المستودع بحيث يمكنك الغوص بالعمق المناسب لدورك:
التسليم الأساسي: ملف PDF في reports/. مصدر Markdown هو نفس المحتوى، محفوظ في المستودع للبحث وإدارة الإصدارات.
مسار التحقيق: notes/journal.md هو دفتر عمل المحلل (الفرضيات التي تم اختبارها ودحضها، جرد الأدلة، حالة الخطة). يُكمِّل التقرير الرسمي من خلال إظهار كيف تم الوصول إلى الاستنتاجات، وليس فقط الاستنتاجات نفسها.
مجموعة قواعد الكشف: detection/lab.rules يحتوي على 7 قواعد Suricata مع تبرير كامل لكل كلمة رئيسية في تعليقات مضمنة. detection/README.md يُوثق سير عمل النشر والتحقق من إعادة التشغيل المستخدم لتأكيد أن كل قاعدة تُطلق على الحادثة المُلتقطة.
تتبع المهمة ثلاثة أطر عمل قياسية في الصناعة متداخلة معًا.
نموذج NIST ذو الـ 4 مراحل (الإعداد، الكشف والتحليل، الاحتواء / الاستئصال / الاسترداد، النشاط بعد الحادثة) يوفر الهيكل عالي المستوى. في هذه المهمة، المرحلة 1 من التسليم تُطابق NIST "الكشف والتحليل" (الطب الشرعي لـ PCAP، ربط أحداث SIEM، إعادة بناء الجدول الزمني للمهاجم). المرحلة 2 تُطابق NIST "الدروس المستفادة" المترجمة إلى ضوابط وقائية (قواعد Suricata السبعة وقائمة التوصيات ذات الأولوية في قسم التقرير 7).
PICERL (الإعداد، التحديد، الاحتواء، الاستئصال، الاسترداد، الدروس المستفادة) هي عملية الاستجابة للحوادث من SANS. مُطبقة في هذه المهمة:
كل نتيجة تُعيّن إلى تقنية واحدة أو أكثر من MITRE ATT&CK للسماح للعميل بربط هذه الحادثة بنموذج التهديد الحالي الخاص به. 14 تقنية مميزة تم الإشارة إليها عبر النتائج العشر:
جدول التقنيات الكامل لكل نتيجة موجود في قسم التقرير 4 (مؤشرات IOC) والغوص العميق لكل نتيجة في القسمين 3 و5.
كل ادعاء في التقرير يمكن تتبعه إلى قطعة أثرية في حزمة الأدلة، مع مرشح tshark الدقيق، أو استعلام Wazuh، أو أمر إعادة تشغيل Suricata اللازم لإعادة إنتاجه. انظر الملحق أ (أوامر قابلية إعادة الإنتاج) في التقرير وقسم قابلية إعادة الإنتاج أدناه لبداية سريعة.
الطب الشرعي للشبكة
tshark: Wireshark سطر الأوامر لفرز PCAP، وإعادة بناء تدفق TCP (-z follow,tcp,ascii)، وتصفية البروتوكول، واستخراج الحقولtcpreplay وtcprewrite: إعادة تشغيل PCAP على واجهة مراقبة حية للتحقق من صحة قواعد Suricata، مع ضبط MTU ليناسب ens19 المعملي (1450 بايت)نظام IDS للشبكة / هندسة الكشف
afpacket، خيط واحد، Hyperscan معطل في المختبر): تأليف والتحقق من صحة وضبط القواعد السبعة في هذا التسليمsuricata -T: التحقق من صحة التكوين والقواعد أثناء النشر والضبطkill -USR2 $(pgrep suricata): إعادة تحميل القواعد الحية أثناء الضبط التكراريSIEM وقياس عن بعد للمضيف
rule.id 11452، 5551، إلخ.)، تصدير CSV لـ 397 حدثًاgrep، awk، jq): التنقيب في السجلات وتحليل JSONسياق محاكاة الخصم (مشار إليه، لم يُشَغَّل)
الأطر المرجعية
النتائج العشر (I1 إلى I10) موثقة بالتفصيل في تقرير النتائج. يتضمن كل إدخال الأدلة، وأوامر قابلية إعادة الإنتاج، وتعيين MITRE ATT&CK، وإرشادات العلاج.
توزيع الشدة: 3 حرجة / 3 عالية / 2 متوسطة / 2 منخفضة
ترتيب القراءة الموصى به: ابدأ بـ I1 (الخدمة الضعيفة)، ثم I3 ثم I4 (سلسلة الاستغلال الفعلية)، ثم I5 (وكيل C2 الموازي غير المرتبط). I2 وI6 يعطيان سياق الاستطلاع. I7 إلى I10 هي نتائج الوضع الدفاعي (ما رآه الرصد مقابل ما فاته).
المرحلة 2 من المهمة أنتجت 7 قواعد Suricata (SID 9000001 إلى 9000007) تغطي الحادثة المُلتقطة من ثلاث زوايا: توقيع الاستغلال، وشل ما بعد الاستغلال، وقناة C2 الموازية. يتم التحقق من صحة كل قاعدة عن طريق إعادة تشغيل PCAP دون اتصال بالشبكة ضد مثيل Suricata 6.0.4 على محطة عمل SOC.
يعكس الفارق 40 مقابل 314 تخفيفًا متعمدًا على القواعد 9000003 و9000004 و9000005 و9000006 لإعطاء محللي SOC رؤية تشغيلية نظيفة مع الحفاظ على تيار التنبيه الخام في eve.json للغوص العميق في الطب الشرعي.
أربعة إصلاحات تكرارية أثناء النشر مُوثقة في detection/README.md. الدروس الرئيسية:1. كشف HTTP مستقل عن المنفذ. تمت كتابة القاعدتين 9000004 و9000005 (Caldera) في البداية باستخدام الكلمات المفتاحية alert http و http.uri، والتي تعمل فقط على تشغيل محلل HTTP الخاص بـ Suricata على المنفذ 80. يعمل خادم Caldera C2 على المنفذ 8888، لذلك تم تجاوز المحلل ولم يتم تشغيل القواعد أبدًا. الإصلاح: إعادة الكتابة في وضع TCP+content (alert tcp ... content:"POST /beacon"; content:"Go-http-client/1.1";) والذي يطابق وحدات HTTP الخام بغض النظر عن المنفذ.
2. عدم موثوقية flow:established أثناء إعادة تشغيل PCAP. يؤدي مصافحة TCP الملتقطة خارج نافذة إعادة التشغيل إلى ترك آلة حالة التدفق في حالة غير محددة. إزالة flow:established من قواعد Caldera يجعلها تتطابق في كل من الوضع المباشر ووضع إعادة التشغيل.
3. اتجاه تدفق صريح لقواعد SYN فقط. أثارت القاعدة 9000003 (المنفذ 6200) SC_WARN_POOR_RULE: SYN-only ... w/o direction specified. تم الإصلاح بإضافة flow:to_server,not_established.
4. HOME_NET مقابل EXTERNAL_NET في مختبرات RFC1918 فقط. عندما يعيش المهاجم والهدف وC2 جميعًا في مساحة خاصة، يصبح فارغًا ولا تتطابق القواعد من النموذج أبدًا. إصلاح المختبر: استخدام في كليهما. إصلاح الإنتاج: تضييق إلى القطاع المحمي فقط.
توثيق تحليل الإيجابيات الكاذبة لكل قاعدة في القسم 8.5 من التقرير. تحمل معظم القواعد مخاطرة ضئيلة في بيئة محددة النطاق بشكل جيد؛ تتطلب القاعدتان 9000005 (رأس خادم aiohttp) و9000006 (curl/Wget على المسارات الإدارية) ضبطًا إذا كانت خدمات Python الداخلية الحميدة أو البرمجة النصية الإدارية موجودة.
NexaCorp-DFIR-INC-2026-001/ ├── README.md (this file) ├── LICENSE (MIT) ├── .gitignore ├── .github/ │ └── workflows/ │ └── ci.yml markdownlint + typography + Suricata rule check ├── reports/ │ ├── INC-2026-001_Findings_Report.pdf canonical 54-page deliverable │ └── INC-2026-001_Findings_Report.md same content, Markdown source ├── detection/ │ ├── lab.rules 7 Suricata rules (SID 9000001-9000007) │ └── README.md deploy + replay validation workflow ├── evidence-summary/ │ └── ioc-summary.md indicators of compromise (SIEM-ingestible) ├── methodology/ │ ├── attack-timeline.md incident timeline (UTC) │ └── attck-mapping.md MITRE ATT&CK mapping table └── notes/ └── journal.md analyst investigation journal (hypotheses, plan, IOCs, timeline)
**تصنيفات الملفات:**
| المسار | الدور | الجمهور المستهدف |
|---|---|---|
| `reports/*.pdf` | وثيقة تسليم رسمية، تقرير رسمي | العميل، مسؤول التوظيف، المدقق |
| `reports/*.md` | نفس المحتوى، مصدر ملائم للبحث عبر grep | أي شخص يستشهد أو يقارن باستخدام diff |
| `detection/lab.rules` | مجموعة قواعد Suricata جاهزة للإنتاج | SOC / مهندس الكشف |
| `detection/README.md` | دليل النشر والتحقق من إعادة التشغيل | تأهيل مهندس الكشف |
| `evidence-summary/ioc-summary.md` | مؤشرات الاختراق، حسب الفئة | SOC / صيد التهديدات |
| `methodology/attack-timeline.md` | الجدول الزمني للحادث (UTC) | ممارس DFIR |
| `methodology/attck-mapping.md` | جدول تعيين MITRE ATT&CK | DFIR / مهندس الكشف |
| `notes/journal.md` | مفكرة العمل التحقيقي | ممارس DFIR يدرس المنهجية |
| `.github/workflows/ci.yml` | التحقق الآلي من markdownlint والتدقيق الطباعي والتحقق من صحة قواعد Suricata (`suricata -T`, يعمل عندما يكون `detection/*.rules` موجودًا) عند الدفع | CI |
## قابلية إعادة الإنتاج
كل ادعاء في تقرير النتائج يمكن تتبعه إلى أثر في حزمة الأدلة. لا يتم إعادة توزيع ملف PCAP نفسه (ملكية مختبر BeCode)، ولكن يتم توثيق الأوامر والاستعلامات بحيث يمكن لأي شخص لديه نسخته الخاصة إعادة إنتاج التحليل.
### إعادة إنتاج النتائج الرئيسية (تحليل PCAP)
يتطلب `tshark` (واجهة سطر أوامر Wireshark) وملف `attack.pcap` الأصلي:```bash
# 1. PCAP overview
tshark -r attack.pcap -q -z io,stat,0
# 2. TCP conversations (reveals attacker, target, C2)
tshark -r attack.pcap -q -z conv,tcp | head -30
# 3. Confirm vsftpd 2.3.4 banner exposure (Finding I1)
tshark -r attack.pcap -Y "ftp && ip.src == 192.168.10.10" \
-T fields -e frame.time -e ftp.response.code -e ftp.response.arg | head -5
# 4. Find the CVE-2011-2523 exploit payload (Finding I3)
tshark -r attack.pcap -Y 'ftp.request.command == "USER"' \
-T fields -e frame.time -e ftp.request.arg
# 5. Reconstruct the root shell session on TCP/6200 (Finding I4)
tshark -r attack.pcap -q -z follow,tcp,ascii,70
# 6. Reconstruct the Caldera C2 beacon (Finding I5)
tshark -r attack.pcap -q -z follow,tcp,ascii,6 | head -50
يتطلب Suricata 6.0.x, tcpreplay, وواجهة مراقبة (ens19 في المختبر؛ استبدلها بواجهتك الخاصة):```bash
sudo cp detection/lab.rules /etc/suricata/rules/learner/lab.rules
sudo kill -USR2 $(pgrep -f suricata) sleep 5
sudo truncate -s 0 /var/log/suricata/fast.log
sudo tcpreplay --intf1=ens19 --topspeed attack_mtu.pcap
sudo grep -oE '[1:[0-9]+:' /var/log/suricata/fast.log | sort | uniq -c | sort -rn
الإخراج المتوقع (بعد إعادة تشغيل كاملة واحدة):```text
30 [1:9000002: (vsftpd banner repeated per session)
3 [1:9000007: (FTP USER enumeration threshold)
3 [1:9000006: (HTTP admin path enumeration)
1 [1:9000005: (Caldera C2 response)
1 [1:9000004: (Caldera Sandcat beacon, throttled)
1 [1:9000003: (Backdoor port 6200 SYN)
1 [1:9000001: (vsftpd USER smiley exploit)
7/7 قواعد تعمل بشكل صحيح. يتم سرد حزمة الأدلة الكاملة (fast.log، eve.json، تكوين الحد، لقطة إصدار Suricata) في الملحق E من تقرير النتائج.
full_log في Wazuh، وليس من المشاهدة المباشرة.auth.log و syslog المحلية بعد حوالي 5 ساعات من انتهاء ملف PCAP، حيث يكون الإدخال الأول هو syslogd restart (على الأرجح إعادة تشغيل الجهاز الافتراضي). لم يتم تقديم أي ملفات سجلات مدورة. تم توثيق هذا كاكتشاف I10.USER)، أو إعادة ترجمة Caldera مع وكيل مستخدم مختلف، أو نقل C2 إلى HTTPS المشفر (سيكون تحليل بيانات TLS الوصفية مثل JA3/JA4 هو الخيار الاحتياطي). القواعد مناسبة لسيناريو التهديد الذي تم التقاطه؛ يجب أن تضيف استراتيجية الكشف طويلة المدى اكتشافات سلوكية وقائمة على البيانات الوصفية.HOME_NET إلى للمختبر. في نشر NexaCorp الحقيقي، يجب تضييق إلى القطاع المحمي فقط (مثل ) بحيث يغطي مساحة المهاجم بشكل صحيح. القواعد كما تم تسليمها مضبوطة للمختبر وتحتاج إلى هذا التغيير الفردي في التكوين قبل الاستخدام في الإنتاج.مشاركة DFIR فردية تم تقديمها خلال معسكر تدريب BeCode Brussels للفريقين الأزرق والأحمر (نوفمبر 2025 إلى سبتمبر 2026)، المهمة 01، في 2026-05-15.
المؤلف: Johan-Emmanuel Hatchi (LinkedIn).
مفتوح لفرص التدريب في مجال الأمن السيبراني ابتداءً من سبتمبر 2026 في بلجيكا. أبحث عن أدوار في SOC / DFIR / هندسة الكشف حيث يكون هذا النوع من العمل الاستقصائي الشامل (تحليل PCAP، ربط SIEM، كتابة قواعد IDS، إعداد تقارير العملاء الرسمية) ضمن النطاق.
MIT، 2026 Johan-Emmanuel Hatchi.
قواعد Suricata في detection/lab.rules ونص التقرير كلاهما صادران بموجب نفس ترخيص MIT: حرية النسخ والتكيف وإعادة النشر مع الإسناد. يظل ملف PCAP والبنية التحتية للمختبر وإحاطات المشاركة ملكًا لـ BeCode Brussels ولا يتم إعادة توزيعها.
| 4 أيام (فردي) |
| المراحل | DFIR (الطب الشرعي) + هندسة الكشف |
| التسليم | 2026-05-15 |
| الحالة | مكتمل (المرحلة 1 + المرحلة 2) |
| مخرجات التحقيق | القيمة |
|---|
| النتائج | 10 (3 حرجة، 3 عالية، 2 متوسطة، 2 منخفضة) |
| تقنيات MITRE ATT&CK المُحددة | 14 |
| تحليل التقاط الشبكة | 5,194 حزمة على مدى 5 ساعات و31 دقيقة (ملف PCAP بحجم 943 كيلوبايت) |
| أحداث Wazuh المترابطة | 397 من الوكيل 020 |
| قواعد Suricata المُؤلَّفة | 7 (SID 9000001-9000007) |
| القواعد المُحققة عن طريق تشغيل PCAP | 7/7 (40 تنبيهًا في fast.log، 314 سجلاً في eve.json) |
| القطعة الأثرية | التغطية | ملاحظة |
|---|
| التقاط الشبكة (PCAP) | من 2026-05-09 20:08 إلى 2026-05-10 01:39 UTC (5 ساعات و31 دقيقة، 5,194 حزمة) | تبدأ في منتصف الحادثة: البرنامج الخبيث يُرسل إشارات بالفعل في الإطار الأول |
| سجل مصادقة المضيف | من 2026-05-10 06:47 UTC فصاعدًا | بعد الحادثة فقط (فجوة تبلغ حوالي 5 ساعات بعد انتهاء PCAP) |
| سجل النظام للمضيف | من 2026-05-10 06:37 UTC فصاعدًا | الإدخال الأول هو syslogd restart، مما يشير إلى إعادة تشغيل الجهاز الافتراضي |
| تصدير تنبيهات SIEM (Wazuh) | غير متاح | كان الملف استجابة HTTP 404، وليس بيانات. تم استرداد 397 حدثًا لاحقًا عن طريق استعلام مباشر للوحة المعلومات |
| النوع | القيمة | السياق |
|---|
| عنوان IP المصدر (المهاجم) | 172.16.50.10 | استغلال vsftpd، استطلاع متعدد البروتوكولات، هجوم تخمين SSH |
| عنوان IP الهدف | 192.168.10.10 | خادم داخلي مُخترق (Metasploitable 2) |
| عنوان IP لـ C2 | 10.40.0.200:8888 | قيادة وتحكم Caldera Sandcat |
| منفذ الباب الخلفي | 6200/tcp | شل ارتباط جذر CVE-2011-2523 |
| حمولة الاستغلال | USER في FTP ينتهي بـ :) | نمط تشغيل الباب الخلفي |
| إذا كنت... | ابدأ من هنا | الوقت |
|---|
| مسؤول توظيف أو مدير توظيف | ملف README هذا + تصفح PDF الملخص التنفيذي | 5 دقائق |
| محلل SOC يقيِّم الملاءمة | قسمي PDF 5 (فجوة الكشف) و8 (هندسة الكشف) + detection/lab.rules | 20 دقيقة |
| ممارس DFIR | PDF كامل + notes/journal.md لمسار التحقيق | 60 دقيقة |
| مهندس كشف | detection/lab.rules + detection/README.md للنشر والتحقق من إعادة التشغيل | 30 دقيقة |
| أي شخص يريد البحث أو الاستشهاد أو المقارنة | مصدر Markdown للتقرير | حسب الحاجة |
| مرحلة PICERL |
|---|
| هذه المهمة |
|---|
| الإعداد | بيئة معملية مُحققة من المدرب، حزمة أدلة موقعة، نطاق محدد (الطب الشرعي + هندسة الكشف)، صندوق زمني 4 أيام |
| التحديد | فرز PCAP + ربط أحداث Wazuh + تحليل قائم على الفرضيات (7 فرضيات، تم دحض واحدة، تأكيد 5، واحدة غير حاسمة) |
| الاحتواء / الاستئصال / الاسترداد | تم توثيقها كتوصيات P0 (عزل المضيف، إزالة vsftpd، تنظيف برنامج Caldera الخبيث) ولكن لم تُنفذ (خارج النطاق: تحليل طب شرعي فقط، وليس استجابة نشطة) |
| الدروس المستفادة | المرحلة 2 هندسة الكشف: 7 قواعد Suricata + ملاحظات ضبط + تحليل إيجابي كاذب (قسم التقرير 8) |
| المعرف | الشدة | العنوان | تقنية MITRE الأساسية |
|---|
| I1 | 🔴 حرجة | تعريض خدمة vsftpd 2.3.4 الضعيفة على الشبكة الداخلية | T1190 |
| I2 | 🟡 متوسطة | مرحلة استطلاع ممتدة ومنخفضة وبطيئة قبل الاستغلال | T1595.002, T1589 |
| I3 | 🟠 عالية | استغلال CVE-2011-2523 عبر مشغل الباب الخلفي لـ USER بابتسامة | T1190 |
| I4 | 🔴 حرجة | شل ارتباط جذر غير موثَّق على TCP/6200، تم تنفيذ 8 أوامر تعداد | T1059.004, T1082 |
| I5 | 🔴 حرجة | وكيل MITRE Caldera Sandcat C2 موجود مسبقًا (مستقل عن هجوم FTP) | T1071.001, T1102 |
| I6 | 🟢 منخفضة | تعداد خدمات متعدد البروتوكولات (HTTP، SSH، SMTP، Telnet، MySQL) | T1046 |
| I7 | 🟡 متوسطة | محاولات هجوم تخمين SSH مرئية في Wazuh، خارج نافذة التقاط PCAP | T1110 |
| I8 | 🟠 عالية | نشاط sudo غير طبيعي يتضمن حدثين sodo لأول مرة | T1548.003 |
| I9 | 🟠 عالية | تغطية كشف غير كافية لـ Wazuh SIEM لهذه الفئة من الهجمات | (فجوة دفاعية) |
| I10 | 🟢 منخفضة | سجلات تدقيق المضيف لا تغطي نافذة الحادثة | (فجوة في الأدلة) |
| SID | هدف الكشف | الطبقة | تقنية MITRE | أُطلقت في إعادة التشغيل |
|---|
| 9000001 | مشغل الباب الخلفي لـ vsftpd 2.3.4: وسيط USER ينتهي بـ :) | حمولة TCP/21 | T1190 | ✅ 1/1 |
| 9000002 | لافتة vsftpd 2.3.4 الضعيفة المُعلنة (220 (vsFTPd 2.3.4)) | حمولة TCP/21 | T1190 | ✅ 30 (اللافتة تتكرر في كل جلسة FTP) |
| 9000003 | اتصال TCP وارد إلى منفذ الباب الخلفي 6200 (SYN فقط) | TCP/6200 | T1059.004 | ✅ 1/1 (اتصال شل الارتباط) |
| 9000004 | إشارة وكيل MITRE Caldera Sandcat (POST /beacon + UA Go-http-client/1.1) | TCP+محتوى (غير محدد المنفذ) | T1071.001, T1102 | ✅ 1 (مخفَّضة إلى 1 لكل مصدر كل 60 ثانية) |
| 9000005 | استجابة خادم C2 لـ Caldera (HTTP Server: Python/3.10 aiohttp/3.13.4) | TCP+محتوى (غير محدد المنفذ) | T1071.001 | ✅ 1 (مخفَّضة إلى 1 لكل مصدر كل 300 ثانية) |
| 9000006 | تعداد مسار إداري HTTP من curl/Wget (/admin, /login, /phpmyadmin) | حمولة TCP/80 | T1595.002, T1592.002 | ✅ 3 |
| 9000007 | تعداد USER FTP بطيء السرعة (5+ محاولات في 30 دقيقة من نفس المصدر) | TCP/21 + حد | T1589, T1078.003 | ✅ 3 |
| المقياس | القيمة |
|---|
| القواعد المُؤلَّفة | 7 |
| القواعد التي أطلقت بشكل صحيح في إعادة تشغيل PCAP | 7/7 ✅ |
التنبيهات في fast.log (بدون تكرار، عرض SOC) | 40 |
السجلات في eve.json (خام، قبل التخفيف) | 314 |
| إصدار Suricata | 6.0.4 (afpacket، خيط واحد) |
| أمر إعادة التشغيل | tcpreplay --intf1=ens19 --topspeed attack_mtu.pcap |
| التحقق من CI | markdownlint، الطباعة، والتحقق من قاعدة suricata -T عند كل دفعة |
EXTERNAL_NET = !$HOME_NET$EXTERNAL_NET any -> $HOME_NET 21anyHOME_NETanyHOME_NET192.168.10.0/24EXTERNAL_NET = !$HOME_NETfull_log لجميع أحداث sudo البالغ عددها 80 لتحديد أي حسابات مستخدمين قامت بتشغيلها (والطوابع الزمنية بالنسبة لاستغلال FTP)، ومراجعة عمليات مصادقة SSH الـ 12 الناجحة لتمييز جلسات المدير الشرعية عن تلك التي يتحكم فيها المهاجم. تم توثيق كلاهما في ملحق "الأسئلة المفتوحة" للتقرير.