مرحبا يا هبر! في هذه المقالة ، أود أن أخبرك عن تجربتي في اجتياز مختبر
Friendzone على بوابة hackthebox. بالنسبة لأولئك الذين لم يسمعوا ما هو
hackthebox ، هذه بوابة يمكنك من خلالها اختبار مهاراتك المكبوتة في الممارسة العملية ، وهناك أقنعة CTF وآلات المختبرات نفسها ، وسيتم مناقشة مرور أحدها في هذه المقالة.
سأقول على الفور أن قواعد الخدمة تقول:
"لا تشارك في كيفية اختراق كل جهاز مع الأعضاء الآخرين. ويشمل ذلك إنشاء رمز الدعوة وجميع التحديات .
" ولكن نظرًا لأن هذا الجهاز لم يعد نشطًا ويتم تخزينه في قسم "الأجهزة المتقاعدة" ، فإن أعضاء VIP فقط يمكنهم الوصول إلى الأجهزة الموجودة في هذا القسم والكتابة ، وهذا المقال لا ينتهك أي شيء وهو قانوني تمامًا. لذلك دعونا نبدأ!

جمع المعلومات
دعنا نبدأ استكشافنا عن طريق بدء مسح المنفذ باستخدام nmap.

مما سبق ، يمكن ملاحظة أن المنافذ 21 (ftp) و 22 (ssh) و 53 (المجال) و 80 (http) و 139 (netbios-ssn) و 443 (https) مفتوحة. دعنا ننظر إليهم.
تعداد 139 / tcp (netbios-ssn)
سنستخدم الأداة المساعدة
enum4linux لسرد الموارد المشتركة على المضيف. من ناتج الأداة المساعدة ، من الواضح أنه يُسمح بإدخال الموارد / العامة و / التطوير

الآن نحن بحاجة للتحقق من هذه الموارد.
باستخدام
smbclient //10.10.10.123/general ، نجد ملف
creds.txt الذي يحتوي على بعض بيانات الاعتماد ، واحفظه.


تعداد DNS
سنستخدم الأداة المساعدة
للحفر ، والتي تتيح التحقق من السجلات على خادم DNS المحدد للمجال / النطاق الفرعي. اسم مجال friendzone.red مأخوذ من شهادة SSL CommonName (إخراج nmap لـ 443 / tcp).

نذهب إلى
10.10.10.123
نلاحظ صندوق البريد info@friendportal.red ونستخدم الحفر مرة أخرى.

أضف الإدخالات الناتجة إلى
/ etc / hostsلدينا الآن قائمة بالعناوين التي تحتاج إلى مراجعة للعروض التالية. سوف أغفل جزءًا من القصة حيث تبين أن الصفحات عبارة عن ثقوب أرنب. نحن نعتبر النتائج المفيدة فقط.
نذهب إلى
administartor1.friendzone.red وأدخل بيانات الاعتماد الموجودة في / 10.10.10.123/general/creds.txt


زيارة / لوحة المعلومات

يطلب منهم إدخال معلمات معينة للحصول على الصور. نتيجة لذلك ، تتوفر صورتان لنا.


بالتجربة والخطأ ، نتفهم أن الصفحة عرضة لـ
LFI (تضمين الملف المحلي) . وبإمكاننا تحميل shell من خلال smbclient والوصول إليها باستخدام مشكلة عدم الحصانة هذه. نحن نحاول!
قم بتنزيل shell في التطورات.


نعود إلى الصفحة ونشير إلى الغلاف المحمّل.

قبل ذلك ، بالطبع ، عن طريق تشغيل netcat للاستماع على المنفذ 1234.

نحصل على غلاف مستخدم بيانات www.
بعد الانتقال إلى ملف volunbox ، نجد ملف mysql_data.conf ، والذي يحتوي على بيانات اعتماد من صديق المستخدم.


دعونا نحاول الحصول على محطة وتسجيل الدخول كصديق.

نذهب إلى الدليل الرئيسي / الصفحة الرئيسية / صديق والتقاط علم المستخدم.
الاستيلاء على الجذر
قم بتنزيل pspy64 على volunbox لتتبع العمليات الجارية.
المفسد العنوانpspy هي أداة مصممة لتتبع العمليات دون الحاجة إلى امتيازات الجذر. يتيح لك رؤية الأوامر التي ينفذها مستخدمون آخرون ، وظائف cron ، إلخ. لأنها تقدم.

نبدأ تشغيل pspy64 ، قبل ضبط "التنفيذ" على ملف chmod + x.

نلاحظ أن reporter.py يتم تشغيله من مستخدم له معرف UID = 0 (أي الجذر). دعونا نرى محتويات ملف reporter.py

يتم تعليق جميع الخطوط تقريبًا ولا معنى لها ، باستثناء السطر الأول ، حيث يتم استيراد وحدة os.
اختطاف المكتبة ؟
حصل قرار وحدة os.py على 777 ، لذلك يمكننا إجراء تغييرات بأمان من صديق المستخدم.
بإضافة
نظام الخط
("cp /root/root.txt /home/Friend/root.txt") إلى وحدة os.py والانتظار لبعض الوقت لبدء البرنامج النصي.

حصلنا على علم الجذر. النصر!
