1. مقدمة عن Metasploit وأهميته في اختبار الاختراق
في عالم الأمن السيبراني، ما يكفيش تكون تعرف الثغرات باش تولي محترف في اختبار الاختراق، لازم تعرف كيفاش تستغلها بطريقة منظمة وآمنة. هنا يجي دور Metasploit Framework، واحد من أشهر وأقوى الأدوات في المجال.
Metasploit هو إطار عمل (Framework) مفتوح المصدر، يسهّل على الباحثين الأمنيين والمختبرين (Penetration Testers) عملية اكتشاف الثغرات، تطوير الـ exploits، وتنفيذها على الأنظمة المستهدفة.
الميزة الكبيرة فيه هي أنه يجمع كل الخطوات في مكان واحد: من البحث عن الثغرة، لاستغلالها، وحتى ما بعد الاختراق، كل هذا في بيئة منظمة وآمنة للتجارب.
لماذا Metasploit مهم؟
- يحتوي على مكتبة ضخمة من exploits الجاهزة
- يدعم تطوير واستعمال payloads مخصصة
- يسهل عملية الأتمتة (Automation) في الاختبارات
- أداة أساسية في حقائب أي Pentester محترف
ملاحظة مهمة
استخدام Metasploit بدون إذن صريح يعتبر عمل غير قانوني، الهدف من هذا الشرح هو التعلم في بيئة مخبرية (Lab) فقط.
2. مكونات Metasploit الأساسية
باش تستعمل Metasploit بطريقة احترافية، لازم تعرف المكوّنات الرئيسية لي تخليه مرن وقوي:
1. Modules (الوحدات)
هي قلب Metasploit. كل وحدة تمثل وظيفة معينة، وتجي بأنواع مختلفة:
- Exploit Modules: تستغل ثغرة في نظام أو تطبيق.
- Auxiliary Modules: مهام إضافية مثل المسح (Scanning) أو جمع المعلومات (Information Gathering).
- Post Modules: تُستخدم بعد الاختراق لجمع البيانات أو توسيع الوصول.
2. Payloads (الحمولات)
هي الأكواد التي تُنفّذ على الهدف بعد استغلال الثغرة. أشهر الأنواع:
- Singles: حمولة بسيطة تُنفّذ أمر واحد.
- Stagers: تنشئ قناة اتصال صغيرة لتحميل حمولة أكبر.
- Stages: الجزء الرئيسي من الحمولة الذي يعمل بعد الـ Stager.
3. Encoders (المشفّرات)
تُستخدم لتغيير شكل الحمولة (Payload) لتجاوز أنظمة الحماية مثل مضادات الفيروسات.
4. NOPS (No Operation Instructions)
إدخالات تُستخدم لملء المساحة في الذاكرة لضمان استقرار التنفيذ.
مثال عملي بسيط:
لو تحب تستغل ثغرة معينة، رح تختار Exploit Module مناسب، تربطه بـ Payload مثل meterpreter
, وتشغله ضد الهدف.
3. تثبيت Metasploit على مختلف الأنظمة
الخبر المفرح هو أن Metasploit يجي مثبّت مسبقًا في أغلب توزيعات لينكس المخصصة لاختبار الاختراق، مثل:
- Kali Linux
- Parrot Security OS
- BackArch
يعني إذا كنت تستعمل وحدة من هاذ التوزيعات، غالبًا ما تحتاجش تثبته بنفسك.
أما إذا كنت على توزيعات أخرى (Ubuntu, Debian, Arch, Fedora…) فالأمر بسيط، Metasploit متاح في المستودعات الرسمية أو يمكن تثبيته عبر سكريبت رسمي من Rapid7. العملية ما تحتاجش خطوات معقدة: تحميل الحزم، تشغيل المثبت، وانت جاهز تبدأ التجارب.
نصيحة: حتى لو تقدر تثبته على أي نظام، الأفضل تجرب Metasploit على توزيعة مصممة للاختبارات باش تكون الأدوات الأخرى جاهزة معاه.
4. التعرف على الواجهة (CLI و msfconsole)
Metasploit يوفر لك أكثر من طريقة للتعامل معه، لكن أشهرها هي:
1. CLI (Command Line Interface)
واجهة الأوامر النصية البسيطة، تسمح لك بتشغيل بعض أدوات Metasploit بسرعة بدون الدخول في بيئة كاملة. مفيدة للمهام السريعة أو السكربتات.
2. msfconsole
هنا يبدأ الجد .
هي الواجهة التفاعلية الرئيسية لـ Metasploit، وتعتبر الأقوى، لأنها:
- تعطيك وصول كامل لكل الـ Modules
- توفر أوامر بحث، تشغيل، وحفظ الإعدادات
- تدعم الأتمتة عبر الـ resource scripts
أمر التشغيل:
msfconsole
بعد ما يفتح، راح تشوف شعار Metasploit وبعض المعلومات عن عدد الوحدات المتاحة في نسختك.
نصيحة للمبتدئين: احفظ الأوامر الأساسية مثل:
search
للبحث عن وحدةuse
لاختيار وحدةset
لتعيين الإعداداتexploit
أوrun
للتنفيذ
5. البحث عن الثغرات المناسبة
قبل ما تبدأ أي استغلال، لازم تلقى الثغرة المناسبة للهدف. Metasploit يسهل هذي العملية عبر أوامر البحث المدمجة.
1. البحث داخل Metasploit
داخل msfconsole
تقدر تستعمل:
search type:exploit name:ftp
هنا مثلا نبحث عن كل الثغرات المتعلقة بـ FTP.
تقدر تغيّر type لـ auxiliary
أو post
حسب الحاجة.

2. البحث بناءً على CVE
إذا عندك رقم CVE لثغرة، تقدر تبحث مباشرة:
search cve:2021-41773
3. الاستعانة بالمصادر الخارجية
- مواقع مثل Exploit-DB أو Rapid7 Vulnerability Database تعطيك تفاصيل الثغرات وأحيانًا رابط مباشر للوحدة في Metasploit.
حاول تكون دقيق في البحث باش ما تضيعش وقتك في وحدات ما تناسبش بيئة الهدف.
6. استغلال الثغرات باستخدام Metasploit
بعد ما تلقى الثغرة المناسبة، تبدأ مرحلة الاستغلال. العملية في Metasploit تمشي غالبًا بنفس الخطوات:
1. اختيار الوحدة (Module)
داخل msfconsole
، تستعمل:
use exploit/path/to/module
2. ضبط الإعدادات (Set Options)
كل وحدة تحتاج إعدادات أساسية، مثل:
- RHOSTS: عنوان الـ IP للهدف
- RPORT: المنفذ المستهدف
- PAYLOAD: نوع الحمولة (مثلاً
windows/meterpreter/reverse_tcp
)
أمر الإعداد:
set RHOSTS 192.168.1.10
set PAYLOAD windows/meterpreter/reverse_tcp
3. التنفيذ
بعد ما تجهز الإعدادات:
exploit
أو
run
4. النجاح أو الفشل
- إذا نجح الاستغلال، راح يفتح لك Session (مثل Meterpreter).
- إذا فشل، جرّب إعدادات مختلفة أو وحدة أخرى.
الاستغلال مش دايمًا ينجح من أول محاولة، بعض الثغرات تعتمد على الإصدارات، الإعدادات، وحتى توقيت التنفيذ.
7. التعامل مع الـ Sessions بعد الاختراق
بعد ما ينجح الاستغلال، Metasploit غالبًا يفتح لك Session على الهدف، وأشهرها Meterpreter Session.
1. التحقق من الجلسات النشطة
sessions
يعرض لك كل الجلسات المفتوحة مع أرقامها.
2. التفاعل مع جلسة معينة
sessions -i 1
(هنا الرقم 1 هو رقم الجلسة)
3. أوامر Meterpreter الشائعة
sysinfo
→ يعرض معلومات عن النظامipconfig
→ يطلع إعدادات الشبكةls
وcd
→ للتنقل في الملفاتdownload
وupload
→ لنقل الملفاتshell
→ للحصول على سطر أوامر النظام المستهدف
4. إدارة أكثر من جلسة
إذا كان عندك عدة أهداف، تقدر تفتح أكثر من Session، وتتنقل بينهم بالأمر sessions -i <id>
.
Meterpreter يوفر أوامر قوية مثل keylogging، screenshot، وحتى webcam streaming، لكن استعملها فقط في بيئة اختبار قانونية.
8. أفضل الممارسات لاستخدام Metasploit
- اشتغل في بيئة اختبار معزولة.
- حدّث Metasploit باستمرار للحصول على أحدث الوحدات.
- وثّق أوامرك ونتائجك لتسهيل المراجعة.
- افهم إعدادات الـ exploit والـ payload قبل التشغيل.
9. CTFs وغرف التدريب على Metasploit
(سيتم إضافة روابط لاحقًا)
إذا حاب تطبّق مهاراتك في Metasploit، أفضل طريقة هي تجربة غرف التدريب وتحديات CTF المخصصة. هذه البيئات تعطيك سيناريوهات حقيقية لاختبار قدراتك على البحث، الاستغلال، وإدارة الجلسات.
10. الخاتمة والموارد الإضافية
Metasploit هو أكثر من مجرد أداة؛ هو بيئة متكاملة للاختبار والتعلم. اليوم أخذنا جولة على أساسياته، لكن في المقالات القادمة راح ندخل أعمق في:
- كتابة واستعمال payloads مخصصة
- استغلال ثغرات متقدمة
- أتمتة الاختبارات باستخدام Metasploit
موارد مفيدة: