TryHackMe|AgentSudo WriteUp\Walkthrough (ِArabic)
بسم الله
للي يبغى يشوف الحل مشروح فيديو يرجع للفيديو على قناتي باليوتيوب على
هذا الرابط:
رابط التحدي: https://tryhackme.com/r/room/agentsudoctf
كلمة IP في كل
الكوماندز اللي أكتبها تُستبدل بالـIP للمشين حقتكم على TryHackMe
أول حاجة نشغل الـmachine ونتأكد إننا اتصلنا بشبكة TryHackMe والاتصال مضبوط، بعدين نبدأ بأول خطوة للحل
وهي إننا نسوي scan للشبكة
باستخدام nmap
sudo nmap IP -vv
نرجع نسوي Aggressive سكان على نفس هذه البورتات
sudo nmap IP -vv -p 21,22,80 -A
النتائج اللي طلعت معانا من الـAggressive سكان ما فيها أي شيء مهم، وبما إن الـFTP ما فيه Anonymous مسموح والـssh ما عندنا له كلمة سر او اسم مستخدم فبنبدأ علطول نشيك على بورت 80 ونفتحها بالمتصفح.
طلع لنا رسالة ويقول إننا نغير الـuser agent في الـHTTP request عشان نقدر نوصل للصفحة، والمفروض إنو نستخدم Agent خاص فينا.
لو نلاحظ في نهاية الرسالة مكتوب Agent R، ومن هنا نستنتج إن قيمة User Agent رح تكون حرف.
أول شيء بنحمل User Agent Switcher Plugin على حسب متصفحكم، ابحثو فقط Agent Switcher Plugin وحملو اللي يطلع معاكم، أنا استخدمت هذا الـAgent وتقدرون تحملونه من هذا الرابط
نبدأ نجرب الحروف واحد واحد واللي بيضبط معاكم هو حرف C، تغيرون خانة الـuserAgent إلى C ثم تضغطون Apply Container اللي بالأخضر تحت يمين
ثم سوو تحديث للصفحة وبيطلع لكم رسالة
في الرسالة يقول لـchris إن كلمة سره ضعيفة ولازم يغيرها ومن هنا نستنتج بما إنها ضعيفة معناته نقدر نحصل عليها.
hydra -l chris -P /usr/sahre/wordlists/rockyou.txt ftp://IP/ -t 64
وخليته على ftp لأنه أسرع، وبتطلع معانا كلمة السر *******
ناخذها وندخل على ftp server كيوزر chris، عندي 3 ملفات أحملها كلها مرة وحدة باستخدام
mget *
وفي كل مرة يطلع لنا prompt بنضغط y
نخرج من الـftp ونشوف الملفات، عندي صورتين وحده png والثانية jpg، وعندي ملف نصي، بالملف النصي يقولي إن كلمة السر مخبأة في إحدى الصورتين.
مع الـjpg بنستخدم الأداة steghide ومع الـpng بنستخدم binwalk ونشوف لو نقدر نحصل على أي معلومات.
أول شيء بنبدأ بـ jpg
steghide info cute_alien.jpg
طلب كلمة السر وبما إن ما عندنا فبننتقل للصورة الثانية
binwalk cutie.png
وطلع لنا إنه فيه zip file وبداخله To_agentR.txt وعشان نسوي extract
binwalk -e cutie.png
طلع لنا مجلد
_cutie.png.extracted
بداخله عندي الملف المضغوط ولكن لما حاولنا نسوي فك للضغط ما ضبط لأنه encrypted فنسوي له decrypt باستخدام john
zip2john 8702.zip > hash
john hash
وبتطلع لنا كلمة السر، ناخذها ونفك الضغط عن الـzip file.
7z e 8702.zip
إذا طلع البرمبت نحط y ثم بيطلب كلمة السر، ندخلها وبنحصل على To_agentR.txt.
بداخل هذا الملف فيه رسالة وبداخله سلسلة حروف غير مفهومة بين علامات تنصيص، وهي بالحقيقة hashed وفيه مواقع كثيرة تتعرف على نوع الهاش وتفكه، أنا استخدمت cyberchef.
لما سوينا crack لها طلع معانا كلمة، وهذه بنستخدمها عشان نطلع المعلومات اللي مخبأة بداخل الjpg
steghide extract -sf cute_alien.jpg
ثم بيطلب كلمة السر، ندخل اللي تونا حصلنا عليها وبيطلع معانا ملف اسمه message.txt، بداخل هذا الملف معطينا كلمة السر للمستخدم james بدون تشفير بدون حاجة، مباشرة، فناخذها وندخل على النظام باستخدام SSH كيوزر james وبكلمة السر اللي في الملف.
ssh james@IP
أول ما ندخل بنحصل الـuser_flag.txt.
الحين باقي لنا شيء واحد وهو إننا نحصل على صلاحيات الـroot. أول وأسهل طريقة بنبحث sudo -l ونشوف ايش فيه كوماندز يقدر james ينفذها بصلاحيات root وإذا نقدر نستغلها أو لا. طلع معانا نص غريب، فايش بنسوي؟ بناخذه زي ما هو ننسخه ونبحث عنه في قوقل.
User james may run the following commands on agent-sudo:
(ALL, !root) /bin/bash
فبناخذ (ALL, !root) /bin/bash ونبحث عنه في قوقل، بيطلع أكثر من نتيجة، اللي بنركز عليه هي الـexploit اللي من exploit-db على هذا الرابط واللي باختصار يعلمنا إن طريقة استغلال هذه الثغرة هي من خلال إننا نشغل هالكوماند:
sudo -u#-1 /bin/bash
مجرد ما نشغلها بيعطينا root shell نروح للمجلد الرئيسي لـroot وناخذ آخر فلاق.
cd /root
cat root.txt
وبكذا انتهينا.
في التحدي أجوبة الأسئلة كالتالي- باستثناء كلمات السر😊-:












Comments
Post a Comment