23/12/2025
فهم واختبار إدخالات المستخدم باستخدام Burp Suite
User Input Testing – من الألف إلى الياء
أي اختراق في تطبيقات الويب
بدايته: Input من المستخدم
1️⃣ شنو هو User Input؟
أي حاجة المستخدم يدخلها أو يعدلها:
Login form
Search box
URL parameters
Cookies
Headers
JSON body
📌 القاعدة الذهبية:
أي Input = نقطة هجوم محتملة
2️⃣ ليه نختبر User Input؟
لأنو:
السيرفر ممكن ينفذ الكلام
أو يخزنو في قاعدة بيانات
أو يعرضو لمستخدمين تانين
ومن هنا بتطلع:
SQL Injection
XSS
Command Injection
IDOR
3️⃣ تجهيز البيئة (المعمل)
المطلوب:
Kali Linux
Burp Suite
DVWA (أو أي Web Lab)
خطوات الإعداد:
افتح Kali
شغّل Burp Suite
تأكد المتصفح مربوط بـ Proxy بتاع Burp
IP: 127.0.0.1
Port: 8080
افتح DVWA في المتصفح
4️⃣ التعرف على Burp Suite (بالتفصيل)
الأقسام المهمة:
Proxy: اعتراض الطلبات
HTTP History: كل Request/Response
Repeater: إعادة إرسال الطلبات
Intruder: الهجمات المتكررة
Decoder: فك الترميز
Comparer: مقارنة الردود
📌 في الدرس ده نركز على:
Proxy + Repeater
5️⃣ اعتراض Request فعلي
مثال: Login Form
افتح صفحة Login في DVWA
فعّل Intercept في Burp
أدخل:
username: test
password: test
اضغط Login
الطلب حيتوقف في Burp
6️⃣ تحليل الطلب (مهم جدًا)
حتشوف حاجة زي دي:
نسخ التعليمات البرمجية
POST /login.php HTTP/1.1
Host: dvwa.local
Content-Type: application/x-www-form-urlencoded
username=test&password=test&Login=Login
نحلل:
Method: POST
Endpoint: /login.php
Parameters:
username
password
📌 دي النقاط البنجرب نلعب فيها
7️⃣ إرسال الطلب لـ Repeater
كليك يمين على الطلب
Send to Repeater
افتح تبويب Repeater
8️⃣ التلاعب بالإدخال (اختبار فعلي)
تجربة 1: تغيير القيم
غيّر:
نسخ التعليمات البرمجية
username=admin
password=admin
Send → راقب الرد
تجربة 2: اختبار SQL Injection
غيّر:
نسخ التعليمات البرمجية
username=admin' OR '1'='1
password=anything
اضغط Send
📌 راقب:
Status Code
Response Length
هل دخل ولا لا؟
9️⃣ تفسير النتيجة
لو حصل دخول:
التطبيق:
ما فلتر الإدخال
ما استخدم Prepared Statements
عندك ثغرة SQLi
لو ما دخل:
جرب Payloadات مختلفة
راقب الفرق في الردود