شرح اكتشاف ثغرة CSRF واستغلالها خطوة بخطوة

x32x01
  • بواسطة x32x01 ||
ثغرة Cross-Site Request Forgery (CSRF) واحدة من أخطر الثغرات اللي ممكن تخلي المهاجم ينفّذ عمليات حسّاسة بدل المستخدم الحقيقي، زي تغيير الباسورد، حذف ملفات، إضافة مستخدم جديد… وكل ده بدون ما الضحية يعرف. 😮‍💨

الفكرة ببساطة إن الضحية بيزور رابط خبيث، والرابط بيرسل Request للموقع المصاب بدل المستخدم وبدون Token صحيح.

في البوست ده هنشرح:
  • يعني إيه CSRF؟
  • الثغرة بتحصل ليه؟
  • إزاي نكتشفها؟
  • إزاي نستغلها باستخدام أداة CSRF-POC-Generator 🔥



🤔 يعني إيه ثغرة CSRF؟​

ثغرة CSRF بتجبر المستخدم يعمل فعل هو مش عايزه… زي تغيير الإيميل أو الباسورد بدون ما يحس.

الثغرة بتعتمد على الهندسة الاجتماعية، لأن المهاجم بيبعت للضحية رابط… الرابط ده بيحتوي على صفحة HTML فيها كود جاهز لتنفيذ طلب معين داخل الموقع المصاب. أول ما الضحية يفتح الرابط – الطلب بيتنفّذ فورًا.



⚠️ ليه بتحصل ثغرة CSRF؟​

بيئة الموقع ممكن تستقبل طلبات بدون التحقق من CSRF Token وبالتالي يحصل اختراق.

أشهر الأسباب:

1️⃣ الموقع مش بيفحص صلاحية الـ Token​

المهاجم يقدر يبعت Request بدون Token لأنه أساسًا مش معاه Token الخاص بالضحية (زي الـ Cookies).

2️⃣ عدم وجود Token في الـ Request​

وده أسوأ سيناريو… الموقع سايب الدنيا سايبة.

3️⃣ Token ثابت ومش بيتغير​

لو التوكن نفس القيمة في كل Request… يبقى سهل جدًا تخمينه.

4️⃣ Token صغير وضعيف​

أي قيمة صغيرة وسهلة التخمين تعتبر خطر كبير.



🕵️ خطوات اكتشاف ثغرة CSRF في موقع XVWA​

هندخل دلوقتي على سيناريو عملي باستخدام BurpSuite:

🔎 1. تحليل الطلب الطبيعي (Normal Request)​

لما الضحية يغيّر الباسورد في الموقع، بنشوف الـ Request في BurpSuite.
لو لقينا إن الموقع بيقبل تغيير الباسورد من غير CSRF Token… يبقى الثغرة موجودة بنسبة 100%.

💣 2. المهاجم يستغل الثغرة​

المهاجم يحضر صفحة HTML فيها Form بيبعت Request تغيير الباسورد.
يبعتها للضحية… أول ما يفتحها ويحصل Submit → الباسورد بيتغيّر.

وده يؤدي لدرجة خطيرة جدًا تُسمى:

🚨 CSRF To Account TakeOver​

يعني سيطرة كاملة على حساب الضحية.



🧰 استغلال الثغرة باستخدام CSRF-POC-Generator​

أداة قوية وسهلة بتعمل لك Form جاهز لتنفيذ الهجوم.

رابط الأداة:
Code:
https://github.com/merttasci/csrf-poc-generator

📥 1. تحميل الأداة​

Code:
git clone https://github.com/merttasci/csrf-poc-generator.git

🧭 2. فتح الأداة​

ادخل للمجلد وافتح ملف index.html في المتصفح.

📌 3. وضع الـ Request​

انسخ الـ Request كامل من BurpSuite وحطه في خانة REQUEST.
اضغط Generate PoC Form.

📝 4. التعديل على الـ Form​

غيّر قيمة passwd للقيمة اللي عاوزها.
احفظ الملف بصيغة HTML.

🎯 5. إرسال الرابط للضحية​

أول ما الضحية يضغط Submit → الباسورد يتغير فورًا…
والمهاجم يدخل على الحساب بسهولة.



🧩 الكود المستخدم (Source Code)​

الكود يتم توليده تلقائيًا من الأداة… ويتم حفظه كصفحة HTML جاهزة للهجوم.
 
التعديل الأخير:
المواضيع ذات الصلة
x32x01
الردود
0
المشاهدات
726
x32x01
x32x01
x32x01
الردود
0
المشاهدات
741
x32x01
x32x01
x32x01
الردود
0
المشاهدات
652
x32x01
x32x01
x32x01
الردود
0
المشاهدات
377
x32x01
x32x01
x32x01
الردود
0
المشاهدات
847
x32x01
x32x01
الدخول أو التسجيل السريع
نسيت كلمة مرورك؟
إحصائيات المنتدى
المواضيع
2,050
المشاركات
2,252
أعضاء أكتب كود
495
أخر عضو
Abood
عودة
أعلى