TryHackMe CTF: Game Zone بالعربي
و سحب المعلومات من قاعدة البيانات من ثم تسجيل sqlmap باستخدام أداة SQLi في هذه المشين سوف نتعلم استغلال ثغرة
و في النهاية سوف نرفع صلاحياتنا الى روت باستغلال سيرفر بداخل الشبكة SSH الدخول بها ب
https://tryhackme.com/room/gamezone : رابط الروم
نوع الروم : مدفوعة
مستوى الصعوبة : سهلة
:الأدوات التي تم استخدامها في هذا الشرح
nmap -
burpsuite -
sqlmap -
metasploit -
:عبر الأمر التالي nmap في البداية فحصنا البورتات المفتوحة على الهدف بأداة
nmap -A TARGET_IP
فهو ينفذ السكربتات على البورتات المفتوحة و يفحص الاصدارات و ينفذ -sC -sV --traceroute -O اختصار ل -A الخيار
:و في النهاية يفحص نظام تشغيل الهدف.. الرد لهذا الامر traceroute
.Apache httpd 2.4.18 و بورت 80 وهو سيرفر ويب SSH نجد أن هناك بورت 22 الخاص ب
(Ubuntu) الخاص ب لينكس OpenSSH نعلم الان أيضا انه جهاز لينكس لانه يستخدم
عندما نذهب لصفحة الويب نجد أنه موقع العاب, في السؤال الاول يطلب مننا معرفة اسم الشخصية التي في الصورة (من اللعبة الشهيرة
يمكنك البحث عن شخصية هذه اللعبة أو اخذ الصورة و البحث بواسطتها على قوقل للحصول على اسم الشخصية ( Hitman
في نفس الصفحة نجد انه يمكننا تسجيل الدخول بواسطة الاسم و كلمة السر.
هي لغة برمجة خاصة بقواعد البيانات. عندما نرسل معلومات تسجيل الدخول (غالبا) نرسل Structured Query Language او SQL
:هذا الامر لقاعدة البيانات
SELECT * FROM users WHERE username = الاسم AND password = كلمة السر
و اذا لم يكن هناك فحص للمدخلات قبل ارسالها الى قاعدة البيانات يمكننا اذا حقنها و بالتالي تخطي ادخال معلومات تسجيل الدخول في هذه الحالة أو استخراجها و هذا مايسمى ب
SQL Injection
الان يمكننا تجربة تخطي تسجيل الدخول بوضع الاسم الاتي
' or 1=1 -- -
!و كلمة سر عشوائية و من ثم تسجيل الدخول. نرى أنه قد سجل الدخول بنجاح
الذي حدث هنا هو أننا عدلنا الامر الذي ارسلناه الى قاعدة البيانات و اصبح
SELECT * FROM users WHERE username = '' or 1=1 -- - AND password = 'كلمة السر'
بالاسم الذي ادخلناه أجبرنا قاعدة البيانات على ادخالنا الى اول مستخدم متوفر و هو غالبا ادمن, و تجاهل كل ماهو بعد الاسم و هي كلمة السر
في السؤال الثاني ضع اسم الصفحة التي دخلناها بعد تسجيل الدخول
الان عندما دخلنا نجد أن هناك مكان اخر لادخال اسم لعبة للحصول على تقييم لها. و هنا غالبا هناك نفس الثغرة, فنستخدم هذا المدخل sqlmap لسحب قاعدة البيانات بواسطة اداة
(ابحث ان كنت لا تعرف كيف) و افتح البروكسي burpsuite الان افتح اداة
Proxyو افتح البروكسي و من ثم ادخل شيئا بداخل المدخل في الصفحة و اسحب الركيوست في
sqlmap لاستخدامه في اداة request.txt هنا انسخ الركيوست بالكامل و ضعه بداخل ملف باسم
الان نضع الامر
sqlmap -r request.txt --dbms=mysql --dump
في هذه الحالة request.txt لوضع ملف يحتوي على الركيوست وهو -r
MySQL لتحديد نوع قاعدة البيانات و تسريع عملية الحقن, في هذه الحالة نوع قاعدة البيانات هي --dbms
لاستخراج جميع المعلومات من قاعدة البيانات --dump
post و users حقنت المدخل المصاب و استخرجت جدولين و هم sqlmap الان اداة
بداخل جدول المستخدمين سوف نجد هاش لكلمة سر المستخدم
يمكنك الان الجواب على الاسئلة الثلاث في التاسك الثالث
john the ripper الان سوف نكسر الهاش لكلمة السر التي وجدناها في قاعدة البيانات باستخدام أداة
الخاصة بكسر هاشات كلمات السر بأنواعها
hash.txt في البداية نحفظ الهاش المستخرجة في ملف باسم
:و من ثم ننفذ هذا الامر
john --wordlist=/usr/share/wordlists/rockyou.txt --format=Raw-SHA256 hash.txt
لرؤية كلمة السر --show و بعد التنفيذ اكتب الامر مرة أخرى و اضف
rockyou.txt لتحديد ملف كلمات السر المحتمل ان الهاش تكون واحدة منها, في هذه الحالة استخدمنا --wordlist
الشهيرة و التي تحتوي على أشهر كلمات السر و هي 14 مليون كلمة سر
hashanalyzer يمكنك ايجاد نوعها من مواقع عدة ك .sha-256 لتحديد نوع الهاش, في هذه الحالة نوعها --format
يتم استخدامها بعد كسر الهاش لطباعة كلمة السر المكسورة --show
الشهير لكسر الهاش اونلاين crackstation استخدام موقع john the ripper يمكنك بدلا من استخدام
SSH الان بما ان لدينا اسم المستخدم و كلمة السر, يمكننا تسجيل الدخول بهم في
الخاص بالمستخدم flagو ايجاد ال
SSH الان سوف أشرح اعادة توجيه المنافذ (البورتات) الداخلية بواسطة
و هو ببساطة اعادة توجيه بورت داخلي في شبكة داخلية الى بورت على شبكتك الخاصة port forwardingأو مايسمى ب
لتخطي جدار الحماية الذي يمنع البورت الداخلي من عرضه على الانترنت
CopyRight (Photo Link) |
و سنستخدم هذه الطريقة لتصعيد صلاحياتنا من مستخدم عادي الى روت
الان ننفذ الامر
ss -tulpn
لنرى جميع المنافذ المفتوحة داخليا
127.0.0.1 أو localhost مفتوح داخليا فقط على tcp سنرى أن هناك منفذ 10000 على
سنرى ايضا البورتات الاخرى التي وجدناها مفتوحة عندما فحصنا الهدف و هم 80 و 22
بواسطة الامر الاتيSSH الان لكي نرى ماهو معروض على منفذ 10000 يمكننا عمل اعادة توجيه عكسية للمنفذ بواسطة
ssh -L 10000:localhost:10000 agent47@<TARGET_IP>
سنضع ايبي الهدف <TARGET_IP> مكان كلمة
على المتصفح سوف نجد هذه الصفحةlocalhost:10000 الان اذا ذهبنا الى
و هو ويب سيرفر. الان يمكنك حل السؤال الذي تليه
inspect لمعرفة اصدار الويب سيرفر يمكنك ايجاده في الهيدرز في الريسبونس بواسطة
/file/show.cgi عن اسم الويب سيرفر مع الاصدار سوف نجد ثغرة تنفيذ اوامر بصلاحيات روت في metasploit الان اذا بحثنا في اداة
روت flag ف نستخدم هذه الثغرة لفتح شيل بصلاحيات روت و من ثم اخذ
ملاحظة: لاستغلال الثغرة تحتاج الى تسجيل الدخول بالويب سيرفر, في هذه الحالة يمكنك استخدام نفس اسم المستخدم و كلمة السر التي وجدتهما في قاعدة البيانات
payload/cmd/unix/reverse :ضع البايلود
بما ان نظام الهدف لينكس
تم
:ملاحظاتي الخاصة
https://pastebin.com/XQU4MQQb
Comments
Post a Comment