حل تحدى who is admin من CyberTalents CTF


مواصفات التحدى
اسم التحدي: who is admin
المستوى: متوسط
رابط التحدي: https://cybertalents.com/challenges/web/whoisadmin
المطلوب: مهمتك هي معرفة المسؤول الذي يدير هذا الموقع من خلال معرفة بريده الإلكتروني.
بداية التحدى
حسنًا، قم بتشغيل هذا التحدي ، افتح الرابط التالى :
http://wcamxwl32pue3e6mk873oykcwzy0wl32e56nueze-web.cybertalentslabs.com
ستجد ان هذا التحدى لموقع مقالات
عند فتح أي مقال ، ستجد أنه يتكون من عنوان وصورة ووصف بسيط
انظر الآن إلى source code للصفحة ، فلا يوجد شيء يثير الاهتمام
انظر الآن إلى رابط المقال ، ستجد أن هناك parameter (id ) تستدعي البيانات من قاعدة البيانات وفقًا لرقم id
query الخاص بإستدعاء البيانات من قاعدة البيانات في الـ backend
select * from tablename when id=3
حسنًا ، نبدأ الآن في الاختبار.
في SQL injection ، نضيف single quote (') في نهاية الرابط وسنرى ما إذا كان لدينا خطأ
يشير هذا الخطأ إلى أن قاعدة البيانات التي نتعامل معها هي SQL Lite
هذا جيد, لنقم ببعض query في sqlite
يتم الاحتفاظ بجميع البيانات في sqlite_master سنري ما إذا كانت موجودة وما إذا كانت تحتوي على بيانات أم لا
https://www.sqlite.org/schematab.html
?id=3+union select * from sqlite_master
الآن أصبحنا نعرف اسم جدولين. هذا جيّد
دعنا الآن نعرض البيانات الموجودة في جدول المستخدمين (nxf8_users) لأننا نبحث عن البريد الإلكتروني الخاص Admin
?id=3+union select * from nxf8_users
إذا نظرنا إلى البيانات التي حصلنا عليها ، فسنرى أنها تتكون من الاسم والصورة وhash (هذه هي كلمة مرور المستخدم).
حسنًا ، أين البريد الإلكتروني للمستخدم الآن؟ هذا ما نبحث عنه
إذا قمت بعمل inspect علي الصورة ، فسترى أن مسار الصورة يتكون من مجلد img والبريد الإلكتروني للمستخدم مثل هذا
src="img/[email protected]"
هذا ما نبحث عنه ، لكننا نريد البريد الإلكتروني للمسؤول
أعرض الكود المصدري للصفحة واختبر ما إذا كان هذا البريد الإلكتروني مطلوبًا كـ Flag
سيستغرق هذا الكثير من الوقت. بالطبع ، سنحاول طريقة أخرى أفضل
من الأفضل استخدام sqlmap tool
u- نضع عنوان url بالكامل مع parameter المتأثرة
http://wcamxwl32pue3e6mk873oykcwzy0wl32e56nueze-web.cybertalentslabs.com/shownews.php؟id=3
dump-all-- لاسترداد جميع محتويات قاعدة البيانات وعرضها.
أخذ بعض الوقت سيتم عرض البيانات على النحو التالي
سيتم عرض معلومات الجدول "nxf8_news".
هذا ما نحتاجه الآن
والى هنا نكون قد انهينا التحدى الخاص بـ cybertalents والى لقاء اخر فى تحديات واساليب وتقنيات جديدة
Happy hacking