
استخدم Metasploit من جهاز Kali Linux لاستغلال ثغرة معروفة في Samba (CVE-2007-2447). يتم ذلك من أجل التسلل إلى جهاز Metasploitable 2 باستخدام شل عكسي للوصول إلى المجلد الجذر. وبمجرد الوصول إلى هذا المجلد، يجب أن يكشف عن مجلد /etc/shadow مما يقدم دليلاً على الاختراق.
هدفي هنا كان استخدام metasploit من جهاز Kali Linux لاستغلال ثغرة معروفة في Samba (CVE-2007-2447). يتم ذلك من أجل اختراق جهاز Metasploitable 2 بقشرة عكسية للوصول إلى مجلد الجذر. بمجرد الوصول إلى هذا المجلد، فسوف يكشف عن مجلد /etc/shadow الذي يقدم دليلاً على الاختراق.
فحص Nmap وتعداد الأهداف
أولاً أبدأ بتحديد عنوان IP لكل جهاز مضيف.
Metasploitable 2: 192.168.1.3

Kali: 192.168.1.4

بعد ذلك أقوم بعمل ping لجهاز Metasploitable 2 من جهاز kali linux للتأكد من وجود اتصال بين الجهازين.

ثم أجري فحص nmap من جهاز kali باستخدام الخيار -sV لتحديد المنافذ المفتوحة على الجهاز، (في هذه الحالة المنفذ 445) والذي يُظهر أن بروتوكول Server Message Block (SMB) يحمل إصدار Samba 3.X - 4.X وهو الإصدار الذي يحدث أن يكون معرضاً للثغرة.

تنفيذ الاستغلال عبر Metasploit الآن أقوم بتشغيل metasploit على جهاز Kali Linux باستخدام الأمر “msfconsole”.

بعد ذلك أستخدم الأمر “use exploit/multi/samba/usermap_script” للاستفادة من CVE-2007-2447 من أجل تنفيذ أوامر عشوائية. ثم أقوم بتعيين RHOSTS إلى عنوان IP الهدف Metasploitable 2 و LHOST إلى عنوان IP الخاص بجهاز المهاجم Kali. ثم أبدأ بتنفيذ الأمر “payload/cmd/unix/reverse_netcat” لإعادة القشرة إلى الجهاز المضيف، ثم “exploit” لبدء الاستغلال.

الوصول إلى القشرة العكسية الآن بعد بدء جلسة القشرة، يمكنني البدء في اختبار سطر الأوامر للتأكد من أنني متصل بجهاز Metasploitable 2 المستهدف. يُظهر الأمر “whoami” أنني أعمل كمستخدم root، و“uname -a” يُظهر إصدار النواة الذي يمكن أن يساعد المهاجم في التحقق من المزيد من الثغرات، و“id” يتحقق من الصلاحيات الممنوحة لمستخدم root.

دليل الاختراق (/etc/shadow) أخيراً، يجب علينا التحقق مما إذا كان بإمكاننا الوصول إلى مجلد /etc/shadow الذي يثبت الاختراق الكامل، وهو ما يتحقق في هذه الحالة. يمكننا الآن رؤية جميع كلمات المرور المجزأة (hash) المدرجة للمستخدمين على الجهاز.

استراتيجيات التخفيف
من أجل التخفيف من هذه الثغرات، من المهم ضمان إجراء تحديثات منتظمة لمنع الإصدارات القديمة من التسبب في ثغرات خطيرة للأنظمة المهمة. كما أن التصحيح المستمر للبرامج مهم لمنع المخاطر غير الضرورية التي كان من الممكن تفاديها بطرق أخرى. ثانياً، يمكن أن يساعد تقييد الوصول إلى SMB عبر جدران الحماية في منع الجهات الفاعلة المهددة من الوصول إلى هذه الثغرة، وحتى في مراقبة حركة المرور الداخلة إلى الشبكة والخارجة منها لضمان منع الوصول غير المصرح به تماماً. كما أن تطبيق مبدأ الامتياز الأقل (PoLP) والوصول القائم على الأدوار يمكن أن يساعد في ضمان أن المستخدمين المختارين فقط هم من يمكنهم الحصول على وصول root وعرض مجلد /etc/shadow. أخيراً، يمكن أن يساعد تطبيق تقسيم الشبكة في فصل الطبقات المختلفة للشبكة، بحيث إذا تمكنت جهة فاعلة مهددة من التسلل، فإنها لن تكون قادرة على التحرك جانبياً بسهولة عبر الشبكة دون أن يلاحظها محللو الأمن.
الاحترافية والوضوح والتأمل
ساعدني هذا المشروع في فهم مدى أهمية إبقاء الأنظمة الحية مُصححة ومحدثة. كما أن الأنظمة القديمة معرضة للخطر بشدة، إذ قد تحتوي أحياناً على تحديثات منتهية الصلاحية تجعل من الصعب الحفاظ عليها آمنة بشكل صحيح. في هذه الحالة، يُظهر استغلال ثغرة “usermap_script” في Samba مدى سهولة استغلال الخدمات غير المهيأة بشكل صحيح وغير المُصححة لاختراق مجلد الجذر وتحقيق اختراق كامل للنظام. ونظراً لأن SMB يُستخدم بشكل شائع لمشاركة الملفات، فإن هذا يمكن أن يكون ضاراً بالسلامة السيبرانية للشركة.