Bandit Level 24 and 25 (Arabic)
بسم الله
-------------------------------------------------------------
في المرحلة 24←25 يقول إنه فيه daemon شغال على بورت 30002 وبيعطيك كلمة السر
للمرحلة الجاية إذا أعطيته كلمة السر للمرحلة الحالية مع رقم من 4 خانات. وما في
طريقة إنك تحصل على هذا الرقم غير إنك تجرب كل التباديل الممكنة، واللي هي 10000
تبدأ من 0000 وتنتهي عند 9999.
كيف
قلنا إنها 10000 قيمة؟ لأن هي 4 خانات، كل خانة ممكن تحمل 10 قيم (من 0 إلى 9) إذن
10 مرفوعة للقوة 4 يساوي 10000.
طيب الحل أكيد ما راح يكون إننا كل مرة نتصل
على الـlocalhost بـ nc ثم نعطيه كلمة السر لـ 24 ومعها رقم من 4 خانات،
ونجلس نجرب 10000 مرة بنفسنا. بنسوي سكريبت يسوي عننا هذا الشغل.
#!/bin/bash
bandit24pass=VAfGXJ1PBSsPSnvsjI8p759leLZ9GGar
for pin in {0000..9999}; do
echo "$bandit24pass $pin"
done | nc localhost 30002
هنا أول شيء حطينا الـshebang، ثم عرفنا متغير اسمه bandit24pass وخزنا فيه كلمة السر للمرحلة 24. بعد كذا
بدأنا باللوب حقتنا، بالبداية حددنا المدى إنه يبدأ من 0000 ويتوقف عند 9999، ثم قلنا
له يطبع كلمة السر لـ24 وقيمة pin اللي هو المتغير اللي يلف باللوب، فهو إذن الرقم المكون من 4
خانات. وخلينا بين كلمة السر والرقم مسافة مثل ما طلب بالسؤال. بعد كذا، في نهاية
كل لفة من اللوب بيأخذ المُخرج من اللوب ويدخّله على اتصال بالـlocalhost على بورت 30002.
الحين السكريبت اللي بيلف على كل الاحتمالات
جاهز. نروح على /tmp نسوي مجلد جديد، ثم نحفظ
السكريبت في ملف جديد، ونعطيه صلاحية التشغيل، وبعدين نشغله، كل شيء واضح بالصورة
تحت:
إذا شغلناه بيجلس يجرب وعلى كل محاولة بيطبع
لنا رسالة خطأ
أما إذا وصل للرقم الصحيح رح يطبع لنا correct وكلمة السر للمرحلة 25 ويخرج.
ناخذ كلمة السر وننتقل للمرحلة اللي بعدها
ssh bandit25@bandit.labs.overthewire.org -p 2220
------------------------------------------------------------------------------
في المرحلة 25←26 يقولي إنها جدا سهلة، وهي
فعلا كذلك. مشكلتنا بتكون بالدخول لمرحلة 26 زي ما بنشوف قدام.
أول ما ندخل على المرحلة نعرض الملفات، بنلقى
ssh key للمرحلة 26
ننسخه في ملف على جهازنا، ونسمي هذا الملف bandit26key مثلا، ثم نغير صلاحياته كمقروء للمالك فقط باستخدام
chmod 400 bandit26key
بعدين نستخدمه للاتصال بالمرحلة اللي بعدها.
ssh bandit26@bandit.labs.overthewire.org -p 2220 -i bandit26key




Comments
Post a Comment