اعرف اللي قصادك. احمي أرضك.

Burp Suite

المنصة القياسية لاختبار اختراق تطبيقات الويب، تدمج بين الـ Proxy التفاعلي وأدوات التكرار (Repeater) والتحليل الآلي.

هجومLinuxmacOSWindows
portswigger.net/burp

دليل منصة Burp Suite الشامل

تُعد Burp Suite المنصة القياسية والأكثر انتشاراً في قطاع اختبار اختراق تطبيقات الويب (Web Pentesting). توفر نسخة Community المجانية الأدوات الأساسية (Proxy, Repeater, Decoder)، بينما تضيف نسخة Pro ميزات متقدمة مثل الماسح الضوئي (Scanner)، وأداة Intruder بكامل سرعتها، و Burp Collaborator، ومتجر إضافات BApp Store. يركز هذا الدليل على منهجيات العمل باستخدام النسخة الاحترافية (Pro).

التثبيت (Install)

يمكن تحميل الأداة من الموقع الرسمي portswigger.net/burp/releases. تتطلب النسخة الاحترافية مفتاح ترخيص، وتأتي الأداة مدمجة مع بيئة JRE الخاصة بها، لذا لا حاجة لتثبيت جافا بشكل منفصل.

الإعداد الأولي (Initial setup)

  1. المشروع (Project): File ← New project ← حفظ المشروع في ملف (/path/engagement.burp).
  2. المتصفح (Browser): استخدم متصفح Chromium المدمج (Proxy ← Intercept ← Open Browser) أو قم بإعداد متصفح Firefox باستخدام إضافة FoxyProxy للاتصال بـ 127.0.0.1:8080.
  3. شهادة الأمن (CA cert): عبر المتصفح المهيأ، انتقل إلى http://burp ← قم بتحميل cacert.der ← استورد الشهادة إلى مخزن الشهادات الموثوقة في نظام التشغيل أو المتصفح. بدون هذه الخطوة، ستظهر أخطاء TLS في حركة مرور HTTPS.
  4. النطاق (Scope): Target ← Scope ← أضف target.com والنطاقات الفرعية. يجب دائماً تحديد النطاق قبل البدء بأي فحص لتجنب استهداف جهات خارجية خارج نطاق العمل عن طريق الخطأ.

الأدوات الرئيسية (Left tabs)

الأداةالوظيفة
Dashboardعرض عمليات الفحص المباشرة، الثغرات المكتشفة، والمهام الحالية
Targetخريطة الموقع (Sitemap)، النطاق (Scope)، ولوحة الثغرات المكتشفة
Proxyاعتراض حركة مرور HTTP(S)، سجل الطلبات (History)، و WebSockets
Intruderأتمتة التلاعب بالطلبات (Fuzzing)
Repeaterإعادة إرسال وتعديل الطلبات يدوياً
Sequencerتحليل درجة العشوائية للرموز الأمنية (Tokens)
Decoderفك وتشفير البيانات (Base64, URL, Hex, Hash)
Comparerمقارنة الاختلافات (Diff) بين استجابتين
Loggerسجل شامل وقابل للبحث لكل طلب واستجابة HTTP
Extender / BApp Storeتثبيت وإدارة الإضافات (البرمجيات الملحقة)
Collaborator clientاختبار التفاعلات الخارجية (OAST callback testing)

احتراف استخدام الـ Proxy

  • الاعتراض (Intercept): إيقاف الطلبات/الاستجابات مؤقتاً لتعديلها يدوياً. في معظم العمليات، يُفضل إبقاؤه بوضعية OFF والاعتماد على سجل الطلبات (HTTP history).
  • سجل الطلبات (HTTP history): يعرض كل طلب تم إرساله عبر المتصفح من خلال Burp. يمكن تصفيته حسب المضيف، النوع، الحالة، أو نوع البيانات (MIME). بالضغط بالزر الأيمن، يمكن إرسال أي طلب إلى Repeater أو Intruder أو Scanner.
  • المطابقة والاستبدال (Match & Replace): إعادة كتابة ترويسات (Headers) الطلبات بشكل شامل (مثلاً: إضافة X-Forwarded-For أو تغيير User-Agent).

منهجية العمل في Repeater

  1. ابحث عن طلب مثير للاهتمام في سجل الطلبات (HTTP history).
  2. اضغط بالزر الأيمن ← Send to Repeater (أو اختصار Ctrl+R).
  3. قم بتعديل الطلب (الرابط، الترويسات، المعاملات، الجسم).
  4. اضغط على Send.
  5. قارن الاستجابة الأصلية بالمعدلة جنباً إلى جنب.

نصائح متقدمة:

  • استخدم Ctrl+Space للإكمال التلقائي للترويسات.
  • اضغط Ctrl+R لنسخ الطلب الحالي في تبويب جديد.
  • قم بتسمية التبويبات وتنظيمها لتسهيل الرجوع إليها.

أداة Intruder (أداة الـ Fuzzing)

  1. أرسل الطلب إلى Intruder.
  2. حدد نقاط الحقن باستخدام الرمز § (يتم التعرف عليها تلقائياً، ويمكنك إضافتها أو إزالتها يدوياً).
  3. اختر نوع الهجوم:
    • Sniper: قائمة كلمات واحدة، يتم تجربتها في كل نقطة حقن بالتسلسل.
    • Battering ram: نفس القيمة يتم وضعها في جميع نقاط الحقن في آن واحد.
    • Pitchfork: قوائم كلمات متوازية (كل نقطة حقن لها قائمتها الخاصة، وتجرب في نفس الوقت).
    • Cluster bomb: يجرب كافة الاحتمالات الممكنة بين القوائم (ينتج عنه عدد ضخم من الطلبات).
  4. حمّل قائمة الكلمات (Wordlist) في تبويب Payloads.
  5. في تبويب Settings، استخدم Grep-match لتمييز استجابات معينة في النتائج.
  6. ابدأ الهجوم.

[!tip] حدود السرعة نسخة Community تقوم بإبطاء Intruder بشكل متعمد. نسخة Pro تعمل بكامل السرعة. لعمليات الـ Fuzzing الضخمة، قد يكون استخدام ffuf أسرع، مع الاحتفاظ بـ Intruder للعمليات الدقيقة.

الماسح الضوئي Scanner (نسخة Pro فقط)

  • Active scan (الفحص النشط): يرسل حمولات (Payloads) لاكتشاف الثغرات.
  • Audit (التدقيق): مرحلة البحث المعمق عن الأخطاء البرمجية.
  • Crawl (الزحف): استكشاف الروابط والمحتوى قبل البدء بالتدقيق.
  • يمكن تخصيص ملفات التعريف (Profiles) للفحص عبر Dashboard ← New scan لتوازن بين السرعة والدقة.

يكتشف الـ Scanner: SQLi, XSS, SSTI, Command Injection, XXE, Deserialization, Open Redirects, وغيرها من الثغرات المتقدمة.

Burp Collaborator (اختبارات OAST)

  • افتح Collaborator client ← انسخ الرابط (مثل xyz.oastify.com) واستخدمه كعنوان رجوع (Callback host) في أي حمولة هجومية.
  • راقب التفاعلات؛ ستظهر أي اتصالات DNS أو HTTP أو SMTP مع الطوابع الزمنية وعناوين IP المصدر، مما يثبت وجود ثغرات مثل Blind RCE أو SSRF أو Log4Shell.

إضافات BApp الموصى بها

  • Logger++: سجل متطور وقابل للبحث بشكل معمق.
  • Autorize: لاختبار ثغرات الصلاحيات (IDOR / Authorization).
  • Turbo Intruder: نسخة برمجية من Intruder تعتمد على بايثون وسريعة جداً.
  • JWT Editor: للتعامل مع رموز JWT وتعديلها.
  • Param Miner: لاكتشاف الترويسات والمعاملات المخفية.
  • Hackvertor: لتشفير وتحويل الحمولات الهجومية بأنواع متعددة.

منهجية العمل النموذجية في اختبار الاختراق

  1. تحديد النطاق (Scope)، وتصفح التطبيق يدوياً لبناء خريطة الموقع.
  2. تشغيل عملية Crawl + Audit (في الخلفية للنسخة الاحترافية).
  3. تحديد نقاط النهاية (Endpoints) ذات القيمة العالية (تسجيل الدخول، الإدارة، رفع الملفات، واجهات API).
  4. استخدام Repeater للتلاعب بالمعاملات وتغيير أنواع الطلبات (Verbs).
  5. استخدام Intruder عند الحاجة لتجربة مدخلات متعددة بناءً على مؤشرات اكتشفت في Repeater.
  6. استخدام Autorize لاختبار الصلاحيات الأفقية (الوصول لبيانات مستخدم آخر).
  7. استخدام Collaborator لإثبات الثغرات العمياء (Blind vulnerabilities).
  8. استخراج التقرير النهائي (Generate report) بصيغة HTML أو PDF مع إثبات المفهوم (PoC).

استكشاف الأخطاء وإصلاحها

العرضالسبب المحتملالحل المقترح
أخطاء TLS في المتصفحشهادة Burp غير موثوقةأعد استيراد الشهادة وأعد تشغيل المتصفح.
مشاكل في بروتوكول HTTP/2بعض الخوادم تتطلب إعدادات خاصة لـ HTTP/2من Project options ← HTTP ← قم بتفعيل HTTP/2.
استهلاك مفرط للذاكرةالسجل (History) ضخم جداًProject options ← Database ← vacuum، أو ابدأ مشروعاً جديداً.
نتائج إيجابية خاطئة (False Positives)ملف فحص عدواني جداًاستخدم ملف تعريف متوازن، وتحقق يدوياً عبر Repeater.

منظور المدافع (Defender's perspective)

من الصعب تمييز حركة مرور Burp بشكل قاطع لأنها تأتي من متصفح حقيقي، لكن ابحث عن:

  • تكرار طلبات متطابقة مع تغيير معامل واحد فقط (نمط Intruder/Repeater).
  • طلبات تحتوي على حمولات مشهورة مثل: <svg/onload, ' OR 1=1--, ${jndi:.
  • يمكن لأنظمة WAF رصد هذه الأنماط، ولكن المختبر المحترف يقوم بتشفير وتغيير هذه الحمولات لتجاوز الرصد.

اعتبارات العمليات الأمنية (OPSEC)

  • تمر حركة المرور عبر عنوان IP الخاص بك؛ استخدم وكيل اتصال علوي (Upstream proxy) لتوجيه الحركة عبر بنية تحتية مخصصة.
  • تأكد من إغلاق Intercept عند تصفح مواقع خارج نطاق العمل.
  • احفظ ملف المشروع بانتظام لتجنب فقدان البيانات في حال تعطل البرنامج.

أدوات ذات صلة

  • OWASP ZAP: البديل المجاني الأبرز.
  • Caido: أداة حديثة مكتوبة بلغة Rust، خفيفة وسريعة.
  • mitmproxy: وكيل اتصال برمي يعتمد على بايثون، يعمل عبر السطر الأوامر.
  • ffuf: الأسرع في عمليات الـ Fuzzing بجانب Intruder.
  • sqlmap: لاستغلال ثغرات SQLi المكتشفة بشكل أعمق.