مضى على الشبكة و يوم من العطاء.
  • تحذير: يجب على كل روّاد الشبكة تشغيل برامج الاختراق داخل الأنظمة الوهمية وهي بهدف التعلم وحماية الأعضاء والتوعية بها

[ WalkTh ] شرح بيرب سويت الجزء الاول - Burp Suite part 1

3b0-0d3b0-0d is verified member.

{ || مشرف قسم CTF || }
.:: طاقم المشرفين ::.

السمعة:

راح نحكي عن أساسيات برنامج Burp Suite اللي بيستخدم في اختبار أمان تطبيقات الويب.

وراح نحكي كمان عن الأساسيات اللي بتتعلق بالجزء الأساسي للبرنامج وهو Burp Proxy. مهم جداً تعرف إن الدرس هاد هو مصدر أساسي لاكتساب معلومات عن برنامج Burp Suite. الدروس الجايه راح تكون أكثر تطبيقية. يعني الدرس هاد راح يكون فيه تركيز أكبر على المحتوى النظري. لو ما استخدمت برنامج Burp Suite قبل، بنصحك تقرا المعلومات اللي موجودة هون بعناية وتجرب البرنامج بنشاط. التجربة مهمة جداً لفهم أساسيات البرنامج. لما تدمج المعلومات اللي راح نحكيها هون مع التجربة العملية راح تبني أساس قوي لاستخدام البرنامج في الدروس اللي جاية.


راح نركز على النقاط التاليه 👇

1. شرح مفصل لبرنامج Burp Suite.
2. مراجعة شاملة لأدوات البرنامج.
3. إرشادات تفصيلية على كيفية تنصيب البرنامج على جهازك.
4. كيفية التنقل وضبط إعدادات الـ Burp Suite.
5. الإعدادات الخاصه بـ Burp Suite.
6. الـ Burp Proxy , Target بالتفصيل.
7. مشكلة الـ PortSwigger Certificate Authority (CA) بالمتصفح الخاص بـ Burp Suite.
8. مثال لاختراق الموقع عن طريق ثغره Cross-Site Scripting واستعراض الطلب على Burp Suite.

الاسئله من TryHackMe | Burp Suite: The Basics


شرح مفصل لبرنامج Burp Suite

هي عبارة عن إطار مصمم بلغة الجافا، بيتم استخدامها لعمل اختبار أمان لمواقع الويب. البرنامج هاد هو معيار صناعي في مجال اختبار أمان مواقع الويب وتطبيقات الموبايل، حتى لو الشغلة متعلقة بواجهات التطبيقات البرمجية (APIs).

ببساطة، Burp Suite بيقدر يلتقط ويسمح بتغيير كل ما يتعلق بحركة البيانات اللي بتمر بين المتصفح وخادم الويب، سواء كانت مشفرة (HTTPS) أو غير مشفرة (HTTP). القدرة هاي على اعتراض الطلبات ومشاهدتها وتعديلها قبل ما توصل للخادم أو حتى تعديل الردود قبل ما توصل للمتصفح، هاد هو اللي بيخلي Burp Suite أداة مهمة جداً في اختبار الأمان لتطبيقات الويب بالطريقة اليدوية.
1702718099987.png


ال Burp Suite برنامج متوفر في نسخ مختلفة. في الشرح رح نركز على الإصدار اللي اسمه "Burp Suite Community Edition"، اللي ممكن تستخدمه مجانًا لأغراض غير تجارية وبشرط تتبع القوانين.

فيه نسخ متقدمة ثانية اسمها "Burp Suite Professional" و "Burp Suite Enterprise"، بس هدول محتاجين ترخيص وبتقدملك مزايا متقدمة.

الـ "Burp Suite Professional" هو إصدار مطور من الـ "Burp Suite Community"، بتجيلك بمميزات زي:
  1. ماسح آلي للاستفادة من الثغرات في المواقع.
  2. أداة تسمى "fuzzer/brute-forcer" بتختبر الصفحات بشكل سريع بدون قيود.
  3. بتقدر تحفظ المشاريع اللي شغال عليها عشان ترجع لهم بوقت لاحق أو تعمل تقارير عنهم.
  4. فيه API مدمج تقدر تستخدمه لربط البرنامج مع أدوات ثانية.
  5. ممكن تضيف امتدادات جديدة لزيادة وظائف البرنامج.
  6. وفيه ميزة اسمها "Burp Suite Collaborator" بتقدر تستخدمها لمراقبة طلبات الخادم والاستجابات.
الـ "Burp Suite Professional" هي أداة قوية جدًا وبستخدمها المحترفين في مجال الأمان.

بالنسبة للـ "Burp Suite Enterprise"، هاد برنامج مصمم بشكل مختلف ومستخدم أساسًا لفحص مستمر للمواقع. بيحتوي على ماسح آلي بيعمل فحص دوري للمواقع على فترات منتظمة، زي الأدوات اللي بتفحص البنية التحتية تقريبًا. بالمقابل، الإصدار هاد بيعمل على خادم وما بيسمحلك تعمل هجمات يدوية من جهازك، بس بيعمل فحص متواصل للمواقع المستهدفة.




1702317939597.png

حل الاسئله
ما هو إصدار Burp Suite الذي يعمل على الخادم ويوفر فحصًا مستمرًا لتطبيقات الويب المستهدفة؟

Burp Suite Enterprise
يتم استخدام Burp Suite بشكل متكرر عند مهاجمة تطبيقات الويب وتطبيقات ______.

mobile

مراجعة شاملة لأدوات البرنامج
بالرغم من أن نسخة "Burp Suite Community" تقدم ميزات محدودة أكثر مقارنة بالنسخة الـ pro ، إلا أنها توفر مجموعة مذهلة من الأدوات التي تكون قيمة لاختبار تطبيقات الويب.

دعونا نستكشف بعض الميزات الرئيسية:
  1. البروكسي ( Proxy ) : البروكسي في burp suite هو الأمر الأكثر شهرة. بتيح لك التقاط وتعديل الطلبات والاستجابات أثناء التفاعل مع تطبيقات الويب.
  2. ريبيتر ( Repeater ) : ميزة أخرى معروفة. يتيح لك الـ Repeater التقاط وتعديل وإعادة إرسال نفس الطلب مرارًا وتكرارًا. هذه الوظيفة مفيدة بشكل خاص عند صياغة بيانات تجريبية عن طريق التجربة والخطأ (مثل في حالة حقن SQL) أو اختبار وظيفة نقطة النهاية للعثور على ثغرات.
  3. مهاجم ( Intruder ) : بالرغم من وجود قيود في معدلات الاستخدام في Burp Suite Community ، إلا أن مهاجم يسمح بإرسال العديد من الطلبات إلى نقاط النهاية. وغالباً ما يُستخدم لهجمات الكشف عن كلمات المرور بالقوة الغامضة ( brute-force ) أو اختبار نقاط النهاية ( fuzzing endpoints ) لاكتشاف الثغرات.
  4. فك تشفير ( Decoder ) : هذه الأداة تقدم خدمة قيمة لتحويل البيانات. يمكنها فك تشفير المعلومات التي تم التقاطها أو ترميز البيانات قبل إرسالها إلى الهدف. على الرغم من وجود خدمات بديلة لهذا الغرض، فإن استخدام فك تشفير داخل burp suite يمكن أن يكون فعالًا بشكل كبير.
  5. مقارن ( Comparer ) : كما يشير الاسم، مقارن يتيح مقارنة قطعتين من البيانات إما على مستوى الكلمات أو على مستوى البايت. على الرغم من أن هذه الوظيفة ليست حصرية لبرب سويت، إلا أن القدرة على إرسال قطع بيانات كبيرة بشكل مباشر إلى أداة مقارنة بضغطة زر واحدة تسرع بشكل كبير عملية المقارنة.
  6. متسلسل ( Sequencer ) : عادةً ما يُستخدم المتسلسل عند تقييم عشوائية الرموز، مثل قيم ملفات تعريف الجلسة أو بيانات أخرى تُفترض أنها تم إنشاؤها بشكل عشوائي. إذا كان الخوارزمية المستخدمة لإنشاء هذه القيم تفتقر إلى العشوائية الآمنة، فقد يمكن أن يفتح الباب أمام هجمات مدمرة.
بالإضافة إلى الميزات المدمجة، تسمح الشفرة الجافا في burp suite بتطوير تمديدات لتعزيز وظائف الإطار. يمكن كتابة هذه التمديدات بلغة الجافا أو بلغة البايثون (باستخدام مترجم جافا Jython) أو بلغة الروبي (باستخدام مترجم جافا JRuby). يتيح وحدة التمديد في برب سويت للمستخدمين تحميل التمديدات بسرعة وسهولة إلى الإطار، بينما يسمح سوق التمديدات، المعروف باسم متجر BApp، بتنزيل تمديدات من جهات خارجية. على الرغم من أن بعض التمديدات قد تتطلب ترخيصًا محترفًا للتكامل، إلا أن هناك عددًا كبيرًا من التمديدات المتاحة لـ Burp Suite Community. على سبيل المثال، يمكن لـ Logger++ توسيع وظائف تسجيل برب سويت المدمجة.


حل الاسئله

1702319036875.png

ما هي ميزة Burp Suite التي تسمح لنا باعتراض الطلبات بيننا وبين الهدف؟

Proxy
ما هي أداة الـ brute-force التي سنستخدمها لفرض نموذج تسجيل الدخول؟

Intruder


إرشادات تفصيلية على كيفية تنصيب البرنامج على جهازك.

تنزيل Burp Suite على نظام kali linux


الانتقال إلى موقع PortSwigger لتنزيل Burp Suite Community من هنا : https://portswigger.net/burp/communitydownload

cf27fb99c50eb3c2784212d4f56a7b82.png

انقر على زر "Community Edition" لتنزيل الإصدار المجاني من Burp Suite .
بعد الانتهاء من التنزيل، قم بفتح الـ Terminal.
انتقل إلى مجلد التنزيل الذي يحتوي على ملف التنزيل الخاص بـ Burp Suite. انتقل إلى المجلد الذي تم تنزيل الملف به بواسطه التيرمينال

بعدها يجب أن تقوم برفع صلاحيات التنفيذ لملف التثبيت باستخدام الأمر التالي:

كود:
chmod +x burpsuite_community_linux_vX.X.X.sh

استبدل الملف هذا burpsuite_community_linux_vX.X.X.sh باسم الملف الذي تم تنزيله

الآن، يمكنك تشغيل ملف التثبيت باستخدام الأمر التالي:

كود:
./burpsuite_community_linux_vX.X.X.sh

استبدل الملف هذا burpsuite_community_linux_vX.X.X.sh باسم الملف الذي تم تنزيله

ستظهر نافذة معالج التثبيت. اتبع التعليمات على الشاشة لاختيار خيارات التثبيت المناسبة بالنسبة لك. عادةً ما يُفضل قبول الإعدادات الافتراضية ما لم تكن تحتاج إلى تخصيصها بشكل خاص.

عند الانتهاء يمكنك الآن تشغيل Burp Suite من خلال الأمر التالي:

كود:
burpsuite


تنزيل Burp Suite على نظام Windows
من خلال الموقع الرسمي burp suite نقوم بتنزيل الاصدار المناسب

1702376959190.png
بعد تنزيل الملف نقوم بفتحه

يفتح هكذا
1702377063069.png

1702376997356.png
ثم Next
1702377076459.png
ثم Next
1702377094998.png
ثم Next
1702377151020.png
هكذا يخبرك انه تم الانتهاء من التنزيل
1702377195339.png
ثم يطلب منك الموافقه


هكذا تم الانتهاء من تنزيل Burp Suite على نظام Windows


نبدأ بواجهات الـ Burp Suite اول ما نفتح مشروع نجد هذه الواجهه

1702377264791.png


نبدأ بأول جزء بالـ Dashboard
Screenshot 2023-12-12 133445.png

بحتوي على 4 اقسام

القسم الاول هو Tasks : هاد القسم اللي بيخليك تعمل مهام خلفية للبرنامج، على سبيل المثال في نسخة الـ Burp Suite البسيطة، في مهمة اسمها "Live Passive Crawl" بتعمل تسجيل تلقائي للصفحات اللي بتتفتح. في نسخة الـ Burp Suite المحترفة، راح تلاقي مزايا إضافية زي الفحوصات على الطلب.

القسم التاني هو Event log : هون بتلاقي معلومات عن الأشياء اللي البرنامج بيعملها، زي بداية الـ proxy وتفاصيل اتصالات البرنامج.

القسم الثالث هو Issue Activity : هاد قسم مخصص لنسخة الـ Burp Suite المحترفة بيعرض فيه الثغرات الأمنية اللي تم اكتشافها بواسطة الماسح الضوئي التلقائي، وبيترتبوا حسب مدى خطورتهم وبيمكنك تصفيتهم حسب درجة ثقة البرنامج فيهم.

القسم الرابع هو Advisory : هون بتلاقي معلومات أكثر تفصيلًا عن الثغرات اللي تم اكتشافها، بتشمل مراجع واقتراحات للإصلاح. المعلومات هاي ممكن تتصدر في تقرير. في نسخة الـ Burp Suite البسيطة، ممكن ما يكون فيها ثغرات بتنعرض في هذا القسم.


حل اسئله

1702377671805.png

ما هي القائمة التي توفر معلومات حول الإجراءات التي يقوم بها Burp Suite، مثل بدء تشغيل الوكيل، وتفاصيل حول الاتصالات التي تتم من خلال Burp؟

Event log

كيفية التنقل وضبط إعدادات الـ Burp Suite
الطريقة الرئيسية للتنقل هي من خلال القوائم العلوية، اللي بتسمحلك تتنقل بين الوحدات والوصول للأقسام الفرعية المختلفة داخل كل وحدة. والأقسام الفرعية بتظهر في شريط القوائم الثاني مباشرة تحت القائمة الرئيسية. يعني هيك مثلا 👇

1702378010808.png


توجد اختصارات ممكن تسهل عليك التنقل بين الاقسام
الاختصارالعلامة
Ctrl + Shift + Dلوحة المعلومات (Dashboard)
Ctrl + Shift + Tعلامة الهدف (Target tab)
Ctrl + Shift + Pعلامة الوكيل (Proxy tab)
Ctrl + Shift + Iعلامة المقتحم (Intruder tab)
Ctrl + Shift + Rعلامة المكرر (Repeater tab)

حل اسئله


1702378228812.png

ما هي علامة التبويب Ctrl + Shift + P التي ستحولنا إليها؟
Proxy tab

الإعدادات الخاصه بـ Burp Suite
لازم نتعرف على الخيارات اللي متاحة لتكوين برنامج Burp Suite. فيه نوعين من الإعدادات:
1. إعدادات عامة (User settings).
هذه الإعدادات تأثر على كل البرنامج Burp Suite وتطبق في كل مرة تشغل فيها التطبيق. تعتبر هذه الإعدادات أساسية لتهيئة برنامج Burp Suite.
2. إعدادات المشروع (project settings).
هذه الإعدادات خاصة بالمشروع الحالي وتطبق فقط أثناء الجلسة. لكن، إصدار Burp Suite Community Edition ما يدعم حفظ المشاريع، فأي خيارات خاصة بالمشروع رح تروح لما تقفل برنامج Burp

1702383763341.png
1. الأدوات(Tools) : تتضمن أدوات Burp Suite مجموعة متنوعة من الأدوات التي يمكن استخدامها لاختبار اختراق تطبيقات الويب. يتم تقسيم هذه الأدوات إلى الفئات التالية:
1. الوكيل (Proxy): يسمح لك بإعادة توجيه حركة مرور الشبكة عبر Burp Suite، مما يتيح لك فحصها وتعديلها.​
  • الإعدادات: يتحكم في إعدادات الخادم الوكيل، مثل عنوان IP والمنفذ وإعدادات HTTP.
  • المرشحات: يسمح لك بتصفية حركة المرور التي يتم إعادة توجيهها عبر Burp Suite.
  • السجلات: يسجل حركة المرور التي يتم إعادة توجيهها عبر Burp Suite.
2. التطفل (Intruder): يسمح لك بإنشاء طلبات HTTP مخصصة وإرسالها إلى الخادم.​
  • الإعدادات: يتحكم في إعدادات أداة التطفل، مثل نوع الهجمات التي تريد تنفيذها.
  • المخططات: يسمح لك بإنشاء مخططات لهجمات التطفل.
  • السجلات: يسجل نتائج هجمات التطفل.
3. المكرر (Repeater): يسمح لك بإعادة إرسال طلبات HTTP موجودة مع تغييرات محددة.​
  • الإعدادات: يتحكم في إعدادات أداة المكرر، مثل نوع التغييرات التي تريد إجراؤها على الطلبات.
  • السجلات: يسجل نتائج هجمات المكرر.
4. متصفح (Burp Suite Browser): يسمح لك بالتفاعل مع تطبيقات الويب من خلال Burp Suite.​
  • الإعدادات: يتحكم في إعدادات متصفح Burp، مثل إعدادات الأمان وخصوصية.
  • السجلات: يسجل نشاطك في متصفح Burp.
2. المشروع (Project): يسمح لك بتنظيم اختبارات اختراقك.
  • الإعدادات: يتحكم في إعدادات المشاريع، مثل اسم المشروع وموقعه.
  • العناصر: يسمح لك بإضافة عناصر إلى المشروع، مثل الطلبات والصفحات والنتائج.
1. النسخ الاحتياطي التلقائي (Automatic Backup): يسمح لك بإنشاء نسخ احتياطية تلقائية لمشاريعك.​
  • الإعدادات: يتحكم في إعدادات النسخ الاحتياطي التلقائي، مثل مدة النسخ الاحتياطي وحجم الملف.
3. اتصالات الشبكة (Network Connections): يتحكم في كيفية تعامل Burp Suite مع اتصالات الشبكة.
  • الإعدادات: يتحكم في إعدادات اتصالات الشبكة، مثل وكيل الويب وإعدادات SSL.
1. بروتوكول نقل طبقة المقابس الآمن (TLS): يتحكم في كيفية تعامل Burp Suite مع بروتوكول نقل طبقة المقابس الآمن (TLS).​
  • الإعدادات: يتحكم في إعدادات TLS، مثل إعدادات المصادقة وتشفيرها.
4. واجهة المستخدم (User Interface): يتحكم في مظهر وسلوك واجهة المستخدم Burp Suite.
  • الإعدادات: يتحكم في إعدادات واجهة المستخدم، مثل لون الخلفية وحجم الخط.
  • الملحقات: يسمح لك بإضافة ملحقات لتغيير مظهر وسلوك واجهة المستخدم.
5. الإضافات (Extensions): يسمح لك بتثبيت الإضافات لتوسيع وظائف Burp Suite.
  • إدارة الإضافات: يسمح لك بتثبيت وإدارة الإضافات.
6. الإعدادات الأخرى :
  • الـ REST API : يسمح لك بالوصول إلى Burp Suite باستخدام واجهة برمجة التطبيقات REST.
  • التحديثات (Updates): يتحكم في كيفية إدارة تحديثات Burp Suite.
  • التغذية الراجعة عن الأداء (Performance Feedback): يسمح لك بتقديم ملاحظات حول أداء Burp Suite.
  • موقع ملفات مؤقتة (Temporary Files Location): يحدد موقع ملفات Burp Suite المؤقتة.
  • سلوك بدء التشغيل (Startup Behavior): يتحكم في ما يحدث عند بدء تشغيل Burp Suite.
  • سلوك إيقاف التشغيل (Shutdown Behavior): يتحكم في ما يحدث عند إيقاف تشغيل Burp Suite.

حل اسئله

1702414946490.png

في أي فئة يمكنك العثور على إشارة إلى "جرة ملفات تعريف الارتباط ( Cookie jar ) "؟
Sessions
في أي فئة أساسية يمكنك العثور على الفئة الفرعية "التحديثات"، التي تتحكم في سلوك تحديث Burp Suite؟
Suite
ما هو اسم الفئة الفرعية التي تسمح لك بتغيير روابط المفاتيح للاختصارات في Burp Suite؟
Hotkeys
إذا قمنا بتحميل شهادات TLS من جانب العميل، فهل يمكننا تجاوزها على أساس كل مشروع (نعم/لا)؟
نَعَم


الـ Burp Proxy , Target بالتفصيل

الـ Burp Proxy هي أداة مهمه جداً في عالم الـ Burp Suite. الطريقة اللي بتشتغل فيها هي إنها بتلقط الطلبات والردود بينك كمستخدم وبين الخادم اللي بتحاول توصله
يعني بتقدر تقفل الطريق لأي طلب أو تعدل فيه قبل ما يوصل للهدف.

نقاط مهمة عن الـ Burp Proxy:
  1. اعتراض الطلبات (Intercepting Requests): يعني لو حد بحاول يبعث طلب للسيرفر، البروكسي بوقفه وبعرضه، وبتقدر تعدل فيه أو تتركه يكمل طريقه.
  2. التحكم (Control): القدرة على اعتراض الطلبات بتعطيك سيطرة كاملة على حركة الويب، وهو شيء حلو لاختبار التطبيقات.
  3. التقاط وتسجيل (Capture and Logging): البرنامج يسجل الطلبات اللي تمر عبر البروكسي، حتى لو كانت الاعتراضات مقفلة. هذا مفيد لفحص البيانات لاحقاً.
  4. WebSocket Support: البروكسي يدعم أيضا التقاط وتسجيل اتصالات WebSocket، وهذا يساعد كثير عند تحليل تطبيقات الويب.
  5. السجلات والتاريخ (Logs and History): الطلبات الملتقطة يمكن عرضها في تاريخ HTTP وتاريخ WebSockets، وهذا يفيد لفهم التاريخ ومراجعة الطلبات السابقة.



الـ FoxyProxy :

الخطوات الأساسية للتنزيل:
  1. حمل الاضافة: ابحث وحمل اضافة FoxyProxy لمتصفحك.
  2. افتح الإعدادات: بعد ما تحملها، راح تلاقي زر لها في المتصفح، اضغط عليه واختار الإعدادات.
  3. أنشئ إعدادات البروكسي: اضغط على زر Options واختار Add لتسوي إعدادات البروكسي.
  4. حط التفاصيل: اكتب اسم (مثل Burp) وIP البروكسي 127.0.0.1 ورقم البورت 8080.
  5. احفظ الإعدادات: مهم تضغط Save عشان تحفظ الإعدادات.
  6. شغّل البروكسي: اضغط على أيقونة FoxyProxy واختار الإعدادات اللي سويتها. كل اتصالاتك راح تمر عبر البروكسي.
  7. تفعيل Intercept في البرنامج الرئيسي : انتقل لبرنامج Burp Suite وتأكد إن الـ Intercept مفعل في قسم البروكسي.
  8. جرّب البروكسي: افتح المتصفح وحاول تفتح موقع، مثل صفحة الجهاز اللي تشتغل عليه. المتصفح راح يعلق والبروكسي راح يظهر لك بيانات الطلب. هيك بتكون ختمت أول طلب بنجاح!

الـ Site Map and Issue Definitions داخل الـ Target

الـ Site map: هاد قسم اللي بعطينا خريطة للمواقع اللي بنحاول نختبرها، زي خريطة الشوارع بس للمواقع. لما نستخدم البروكسي، كل صفحة بنزورها بتتسجل في الخريطة. الحاجة الحلوة إننا نقدر نعمل خريطة تلقائية بمجرد ما نتصفح التطبيق. بالـ Burp Suite Professional، ممكن نستخدم الخريطة عشان نعمل Crawl تلقائي للهدف ونكتشف الروابط بين الصفحات ونعمل خريطة لكل شيء بالموقع. حتى مع Burp Suite Community، بنقدر نستفيد من الخريطة عشان نجمع بيانات في الخطوات الأولى. وهاي مفيدة خصوصاً ل لبيانات الـ APIs، لأن أي نقطة وصول للـ API بتتسجل في الخريطة.( مثال عليها تحت )

الـ Issue definitions: حتى لو Burp Community مش متاح فيها كل الأدوات اللي بـ Burp Suite Professional، بس معانا قائمة بكل الثغرات اللي الـ scanner ببحث عنها. القسم هاد بعطينا لستة طويلة بكل ثغرات الويب، مع وصف ومراجع. القسم هاد مفيد عشان نكتب الثغرات في التقارير أو نساعد في وصف ثغرة معينة وجدت أثناء الاختبار اليدوي.

الـ Scope settings: القسم هاد بعطينا فرصة نتحكم في مدى اختبارنا للموقع. بنقدر نشمل أو نستبعد دومينات/آيبيات معينة عشان نعرف نطلع / نتجاهل أو نركز على تجربتنا. ( شرحها تحت )


حل التحدي
عند فتح موقع التحدي على متصفح الخاص بـ Burp Suite (راح احكي عنه بالاسفل) نجد بصفحه الـ Target عند الـ Site map تحديدا هذه الصفحه 👇

1702717489514.png

يبدو شكل
1702717732906.png
غريب بكبس عليه اشوف الـ
Response بلاقي العلم

1702717817432.png

ما هي العلامة التي تتلقاها بعد زيارة نقطة النهاية غير العادية؟
THM{NmNlZTliNGE1MWU1ZTQzMzgzNmFiNWVk}​


طيب شو هو المتصفح الخاص بـ Burp Suite :
هو برنامج اسمه Burp Suite Browser، اللي هو عبارة عن متصفح مدمج في البرنامج ومخصص ليشتغل مع الـ proxy بدون ما نحتاج نغير أي إعدادات في المتصفح العادي.

عشان تفتحه اظغط على "Open Browser" في قسم الـ proxy. بظهر نافذة جديدة باستخدام متصفح اسمه Chromium اللي جاهز مسبقًا ليتعامل مع البروكسي بدون أي تعديلات مننا. في إعدادات كتيره متعلقة بالمتصفح في إعدادات المشروع وإعدادات المستخدم. ف احرص إنك تفحصهم وتعدلهم على حسب احتياجاتك. بس لو كنت عامل البرنامج على لينكس وكنت داخل بحساب المستخدم الجذر (root)، ممكن تواجه مشكلة وما يبدأ المتصفح الخاص بالبرنامج بسبب مشاكل في إنشاء بيئة محمية.

فيه حلين للموضوع هاد :
  1. اعمل حساب جديد واستخدم البرنامج تحت الحساب العادي عشان المتصفح يشتغل بدون مشاكل.
  2. ادخل على إعدادات -> أدوات -> متصفح البرنامج وحدد الخيار Allow Burp's browser to run without a sandbox . لو فعلته، المتصفح ببدأ بدون محيط أمان، احرص إنك تكون حذر، لانه الخيار هاد عادة معطل عشان أمان الجهاز عشان لو خرب المتصفح يمكن يعطي للهاكر فرصة يدخل على الجهاز بكامله.


الـ Scope settings :

لو إنت بتشتغل في مجال الـBurp Proxy، أول اشي لازم تعرفها إنه لما تشتغل بالبروكسي، بتلتقط وبتسجل كل الحركات اللي بتصير على الشبكة، بس ممكن تكون هاي الحركات كتيرة وملهاش لازمة. هون بتيجي فكرة "السكوب"، إنك تحدد نطاق العمل ، أو بمعنى تاني تختار الويبسايتس اللي إنت بدك تراجعها بس. أسهل طريقة لعمل السكوب هي إنك تدخل على تاب الـ Target، تعمل كليك يمين على الويبسايت اللي إنت بدك تشتغل عليه، وتختار Add To Scope. هون بطلب منك إذا بدك توقف تسجيل أي حاجة مش موجودة في الـ Scope. عشان تتأكد من الـScope الخاص فيك بتدخل على تاب الـ Target بتلاقي Scope settings ، ومن هون بتقدر تتحكم في الـ Scope الخاص بك بإضافة أو إستبعاد عناوين الـIP أو الدومينز.

بس حتى لو أوقفت تسجيل الحركات اللي مش موجودة في الـ Scope، البروكسي بيوقف كل حاجة. عشان هيك لازم تدخل على تاب الـ Proxy وتختار And URL Is in target scope من قسم Intercept Client Requests . لما تشغل الخيار هاد، البروكسي بتجاهل أي حركة مش موجودة في الـ Scope، وهاد بخلي الشاشة في برنامج الـ Burp أنظف وأسهل للفهم.

مثال 👇

5db0a2b0597830ae32aaaf9b80d73187.gif



الـ Proxying HTTPS :

في هذا الموضوع نقاشنا عن مشكلة قد تواجهنا واحنا بنحاول نتصفح مواقع الإنترنت اللي عندها حماية ببروتوكول TLS. مثلاً لما تحاول تفتح موقع مثل https://google.com ، قد تظهر لك مشكلة تقول إنه الـ PortSwigger Certificate Authority (CA) مش معتمد لديها لتأمين الاتصال. السبب هو إن المتصفح ما بتعرف بالشهادة اللي بعرضها برنامج Burp Suite.

8b4b43cac91cd9a80622b953598d05eb.png

عشان نتغلب على هالمشكلة، لازم نضيف شهادة PortSwigger CA يدوياً إلى قائمة الشهادات المعتمدة في المتصفح.

الخطوات :

١. حمّل الشهادة : شغّل Burp Proxy وروح على http://burp/cert . راح تحمل ملف اسمه cacert.der . احفظه في مكان على جهازك.

٢. ادخل إلى إعدادات الشهادات في Firefox: اكتب aboutreferences في شريط عناوين Firefox واضغط Enter. راح يوديك إلى صفحة إعدادات Firefox. ابحث عن certificates واضغط على زر View Certificates.

٣. استورد الشهادة: في نافذة Certificate Manager، اضغط على زر Import. اختر ملف cacert.der اللي حملته في الخطوة السابقة.

٤. حدد الثقة للشهادة: في النافذة اللي بتظهر بعد هيك، حط علامة صح في المربع اللي مكتوب فيه Trust this CA to identify websites واضغط OK.

بهذه الخطوات، قد أضفنا شهادة PortSwigger CA إلى قائمة الشهادات المعتمدة لدينا في المتصفح. الحين، يفترض أننا بنقدر ندخل أي موقع محمي ببروتوكول TLS بدون مشاكل.

مثال فيديو 👇
fb2a8717ae887eda024a7791d83cefaf.gif


مثال لاختراق الموقع عن طريق ثغره Cross-Site Scripting واستعراض الطلب على Burp Suite

الفكرة إننا نحاول نحط كود برمجي (JavaScript عادة) في صفحة الويب بحيث يتنفذ لما حد يفتح الصفحة. وفي النهاية بنلاقي تحذير على الموقع ببين إنّا قدرنا ننفذ الكود بنجاح.

اول باشي بنفوت على المكان اللي فيه بنقدم الطلب او التكيت ( اللي راح نحط فيه كود برمجي ) على الرابط http://MACHINE_IP/ticket
لو اول مرة تسمع عن XSS، هو فكرته إننا نحط كود برمجي في الصفحة بحيث يشتغل عند فتحها. النوع اللي هنستخدمه هنا هو Reflected XSS، عشان بيأثر فقط على الشخص اللي بعمل الطلب للصفحة.
نجرب نكتب 👇
JavaScript:
<script>alert("تمت الاختراق")</script>
في حقل Contact Email . بنلاقي انو في فلتر على النص عشان يمنع إضافة أي رموز غريبة.

GIF demonstrating the client-side filter

لكن بنلاقي إن الفلتر هاد مش قوي ، والطريقة اللي اتبعتها ممكن نفهمها من خلال فيديو مصغر.



بنعبي نموذج بمعلومات صحيحة وبدون اي كود ، زي [email protected] كعنوان بريد إلكتروني و Test Attack كاستعلام، نستخدم البروكسي لتعديل الطلب المرسل. نحط بداله كودنا البرمجي المبسط ونبعته. هيظهر لنا تنبيه من الموقع يفيد بنجاح هجوم XSS! ( زي اللي بالفيديو 👇 )

GIF demonstrating the explained process of intercepting and URL encoding the pasted payload


وأخيرًا، اضغط على زر Forward لإرسال الطلب.
سيظهر لك مربع تنبيه من الموقع يشير إلى نجاح هجوم XSS!


Screenshot showing the successful XSS attack

 

المرفقات

  • 1702377231057.png
    1702377231057.png
    33.3 KB · المشاهدات: 217
  • 1702382257138.png
    1702382257138.png
    2 KB · المشاهدات: 189
  • 1702718099987.png
    1702718099987.png
    71.9 KB · المشاهدات: 195
  • 1702751563739.png
    1702751563739.png
    21.3 KB · المشاهدات: 190
التعديل الأخير:
شرح تفصيلي رائع يا عبود 🔥
ننتظر مزيدك
 
راح نحكي عن أساسيات برنامج Burp Suite اللي بيستخدم في اختبار أمان تطبيقات الويب.

وراح نحكي كمان عن الأساسيات اللي بتتعلق بالجزء الأساسي للبرنامج وهو Burp Proxy. مهم جداً تعرف إن الدرس هاد هو مصدر أساسي لاكتساب معلومات عن برنامج Burp Suite. الدروس الجايه راح تكون أكثر تطبيقية. يعني الدرس هاد راح يكون فيه تركيز أكبر على المحتوى النظري. لو ما استخدمت برنامج Burp Suite قبل، بنصحك تقرا المعلومات اللي موجودة هون بعناية وتجرب البرنامج بنشاط. التجربة مهمة جداً لفهم أساسيات البرنامج. لما تدمج المعلومات اللي راح نحكيها هون مع التجربة العملية راح تبني أساس قوي لاستخدام البرنامج في الدروس اللي جاية.


راح نركز على النقاط التاليه 👇

1. شرح مفصل لبرنامج Burp Suite.
2. مراجعة شاملة لأدوات البرنامج.
3. إرشادات تفصيلية على كيفية تنصيب البرنامج على جهازك.
4. كيفية التنقل وضبط إعدادات الـ Burp Suite.
5. الإعدادات الخاصه بـ Burp Suite.
6. الـ Burp Proxy , Target بالتفصيل.
7. مشكلة الـ PortSwigger Certificate Authority (CA) بالمتصفح الخاص بـ Burp Suite.
8. مثال لاختراق الموقع عن طريق ثغره Cross-Site Scripting واستعراض الطلب على Burp Suite.

الاسئله من TryHackMe | Burp Suite: The Basics


شرح مفصل لبرنامج Burp Suite

هي عبارة عن إطار مصمم بلغة الجافا، بيتم استخدامها عشان نعمل اختبار أمان لمواقع الويب. البرنامج هاد هو معيار صناعي في مجال اختبار أمان مواقع الويب وتطبيقات الموبايل، حتى لو الشغلة متعلقة بواجهات التطبيقات البرمجية (APIs).

ببساطة، Burp Suite بيقدر يلتقط ويسمح بتغيير كل ما يتعلق بحركة البيانات اللي بتمر بين المتصفح وخادم الويب، سواء كانت مشفرة (HTTPS) أو غير مشفرة (HTTP). القدرة هاي على اعتراض الطلبات ومشاهدتها وتعديلها قبل ما توصل للخادم أو حتى تعديل الردود قبل ما توصل للمتصفح، هاد هو اللي بيخلي Burp Suite أداة مهمة جداً في اختبار الأمان لتطبيقات الويب بالطريقة اليدوية.
مشاهدة المرفق 6319

ال Burp Suite برنامج متوفر في نسخ مختلفة. في الشرح راح نركز على الإصدار اللي اسمه "Burp Suite Community Edition"، اللي ممكن تستخدمه مجانًا لأغراض غير تجارية وبشرط تتبع القوانين.

فيه نسخ متقدمة ثانية اسمها "Burp Suite Professional" و "Burp Suite Enterprise"، بس هدول محتاجين ترخيص وبتقدملك مزايا متقدمة.

الـ "Burp Suite Professional" هو إصدار مطور من الـ "Burp Suite Community"، بتجيلك بمميزات زي:
  1. ماسح آلي للاستفادة من الثغرات في المواقع.
  2. أداة تسمى "fuzzer/brute-forcer" بتختبر الصفحات بشكل سريع بدون قيود.
  3. بتقدر تحفظ المشاريع اللي شغال عليها عشان ترجع لهم بوقت لاحق أو تعمل تقارير عنهم.
  4. فيه API مدمج تقدر تستخدمه لربط البرنامج مع أدوات ثانية.
  5. ممكن تضيف امتدادات جديدة لزيادة وظائف البرنامج.
  6. وفيه ميزة اسمها "Burp Suite Collaborator" بتقدر تستخدمها لمراقبة طلبات الخادم والاستجابات.
الـ "Burp Suite Professional" هي أداة قوية جدًا وبستخدمها المحترفين في مجال الأمان.

بالنسبة للـ "Burp Suite Enterprise"، هاد برنامج مصمم بشكل مختلف ومستخدم أساسًا لفحص مستمر للمواقع. بيحتوي على ماسح آلي بيعمل فحص دوري للمواقع على فترات منتظمة، زي الأدوات اللي بتفحص البنية التحتية تقريبًا. بالمقابل، الإصدار هاد بيعمل على خادم وما بيسمحلك تعمل هجمات يدوية من جهازك، بس بيعمل فحص متواصل للمواقع المستهدفة.




مشاهدة المرفق 6185
حل الاسئله



مراجعة شاملة لأدوات البرنامج
بالرغم من أن نسخة "Burp Suite Community" تقدم ميزات محدودة أكثر مقارنة بالنسخة الـ pro ، إلا أنها توفر مجموعة مذهلة من الأدوات التي تكون قيمة لاختبار تطبيقات الويب.

دعونا نستكشف بعض الميزات الرئيسية:
  1. البروكسي ( Proxy ) : البروكسي في burp suite هو الأمر الأكثر شهرة. بتيح لك التقاط وتعديل الطلبات والاستجابات أثناء التفاعل مع تطبيقات الويب.
  2. ريبيتر ( Repeater ) : ميزة أخرى معروفة. يتيح لك الـ Repeater التقاط وتعديل وإعادة إرسال نفس الطلب مرارًا وتكرارًا. هذه الوظيفة مفيدة بشكل خاص عند صياغة بيانات تجريبية عن طريق التجربة والخطأ (مثل في حالة حقن SQL) أو اختبار وظيفة نقطة النهاية للعثور على ثغرات.
  3. مهاجم ( Intruder ) : بالرغم من وجود قيود في معدلات الاستخدام في Burp Suite Community ، إلا أن مهاجم يسمح بإرسال العديد من الطلبات إلى نقاط النهاية. وغالباً ما يُستخدم لهجمات الكشف عن كلمات المرور بالقوة الغامضة ( brute-force ) أو اختبار نقاط النهاية ( fuzzing endpoints ) لاكتشاف الثغرات.
  4. فك تشفير ( Decoder ) : هذه الأداة تقدم خدمة قيمة لتحويل البيانات. يمكنها فك تشفير المعلومات التي تم التقاطها أو ترميز البيانات قبل إرسالها إلى الهدف. على الرغم من وجود خدمات بديلة لهذا الغرض، فإن استخدام فك تشفير داخل burp suite يمكن أن يكون فعالًا بشكل كبير.
  5. مقارن ( Comparer ) : كما يشير الاسم، مقارن يتيح مقارنة قطعتين من البيانات إما على مستوى الكلمات أو على مستوى البايت. على الرغم من أن هذه الوظيفة ليست حصرية لبرب سويت، إلا أن القدرة على إرسال قطع بيانات كبيرة بشكل مباشر إلى أداة مقارنة بضغطة زر واحدة تسرع بشكل كبير عملية المقارنة.
  6. متسلسل ( Sequencer ) : عادةً ما يُستخدم المتسلسل عند تقييم عشوائية الرموز، مثل قيم ملفات تعريف الجلسة أو بيانات أخرى تُفترض أنها تم إنشاؤها بشكل عشوائي. إذا كان الخوارزمية المستخدمة لإنشاء هذه القيم تفتقر إلى العشوائية الآمنة، فقد يمكن أن يفتح الباب أمام هجمات مدمرة.
بالإضافة إلى الميزات المدمجة، تسمح الشفرة الجافا في burp suite بتطوير تمديدات لتعزيز وظائف الإطار. يمكن كتابة هذه التمديدات بلغة الجافا أو بلغة البايثون (باستخدام مترجم جافا Jython) أو بلغة الروبي (باستخدام مترجم جافا JRuby). يتيح وحدة التمديد في برب سويت للمستخدمين تحميل التمديدات بسرعة وسهولة إلى الإطار، بينما يسمح سوق التمديدات، المعروف باسم متجر BApp، بتنزيل تمديدات من جهات خارجية. على الرغم من أن بعض التمديدات قد تتطلب ترخيصًا محترفًا للتكامل، إلا أن هناك عددًا كبيرًا من التمديدات المتاحة لـ Burp Suite Community. على سبيل المثال، يمكن لـ Logger++ توسيع وظائف تسجيل برب سويت المدمجة.


حل الاسئله

مشاهدة المرفق 6187





إرشادات تفصيلية على كيفية تنصيب البرنامج على جهازك.

تنزيل Burp Suite على نظام kali linux


الانتقال إلى موقع PortSwigger لتنزيل Burp Suite Community من هنا : https://portswigger.net/burp/communitydownload

cf27fb99c50eb3c2784212d4f56a7b82.png

انقر على زر "Community Edition" لتنزيل الإصدار المجاني من Burp Suite .
بعد الانتهاء من التنزيل، قم بفتح الـ Terminal.
انتقل إلى مجلد التنزيل الذي يحتوي على ملف التنزيل الخاص بـ Burp Suite. انتقل إلى المجلد الذي تم تنزيل الملف به بواسطه التيرمينال

بعدها يجب أن تقوم برفع صلاحيات التنفيذ لملف التثبيت باستخدام الأمر التالي:

كود:
chmod +x burpsuite_community_linux_vX.X.X.sh

استبدل الملف هذا burpsuite_community_linux_vX.X.X.sh باسم الملف الذي تم تنزيله

الآن، يمكنك تشغيل ملف التثبيت باستخدام الأمر التالي:

كود:
./burpsuite_community_linux_vX.X.X.sh

استبدل الملف هذا burpsuite_community_linux_vX.X.X.sh باسم الملف الذي تم تنزيله

ستظهر نافذة معالج التثبيت. اتبع التعليمات على الشاشة لاختيار خيارات التثبيت المناسبة بالنسبة لك. عادةً ما يُفضل قبول الإعدادات الافتراضية ما لم تكن تحتاج إلى تخصيصها بشكل خاص.

عند الانتهاء يمكنك الآن تشغيل Burp Suite من خلال الأمر التالي:

كود:
burpsuite


تنزيل Burp Suite على نظام Windows
من خلال الموقع الرسمي burp suite نقوم بتنزيل الاصدار المناسب

بعد تنزيل الملف نقوم بفتحه

يفتح هكذا
ثم Next
ثم Next
ثم Next
هكذا يخبرك انه تم الانتهاء من التنزيل
ثم يطلب منك الموافقه


هكذا تم الانتهاء من تنزيل Burp Suite على نظام Windows


نبدأ بواجهات الـ Burp Suite اول ما نفتح مشروع نجد هذه الواجهه

مشاهدة المرفق 6206


نبدأ بأول جزء بالـ Dashboard
مشاهدة المرفق 6207
بحتوي على 4 اقسام

القسم الاول هو Tasks : هاد القسم اللي بيخليك تعمل مهام خلفية للبرنامج، على سبيل المثال في نسخة الـ Burp Suite البسيطة، في مهمة اسمها "Live Passive Crawl" بتعمل تسجيل تلقائي للصفحات اللي بتتفتح. في نسخة الـ Burp Suite المحترفة، راح تلاقي مزايا إضافية زي الفحوصات على الطلب.

القسم التاني هو Event log : هون بتلاقي معلومات عن الأشياء اللي البرنامج بيعملها، زي بداية الـ proxy وتفاصيل اتصالات البرنامج.

القسم الثالث هو Issue Activity : هاد قسم مخصص لنسخة الـ Burp Suite المحترفة بيعرض فيه الثغرات الأمنية اللي تم اكتشافها بواسطة الماسح الضوئي التلقائي، وبيترتبوا حسب مدى خطورتهم وبيمكنك تصفيتهم حسب درجة ثقة البرنامج فيهم.

القسم الرابع هو Advisory : هون بتلاقي معلومات أكثر تفصيلًا عن الثغرات اللي تم اكتشافها، بتشمل مراجع واقتراحات للإصلاح. المعلومات هاي ممكن تتصدر في تقرير. في نسخة الـ Burp Suite البسيطة، ممكن ما يكون فيها ثغرات بتنعرض في هذا القسم.


حل اسئله

مشاهدة المرفق 6208



كيفية التنقل وضبط إعدادات الـ Burp Suite
الطريقة الرئيسية للتنقل هي من خلال القوائم العلوية، اللي بتسمحلك تتنقل بين الوحدات والوصول للأقسام الفرعية المختلفة داخل كل وحدة. والأقسام الفرعية بتظهر في شريط القوائم الثاني مباشرة تحت القائمة الرئيسية. يعني هيك مثلا 👇

مشاهدة المرفق 6209

توجد اختصارات ممكن تسهل عليك التنقل بين الاقسام
الاختصارالعلامة
Ctrl + Shift + Dلوحة المعلومات (Dashboard)
Ctrl + Shift + Tعلامة الهدف (Target tab)
Ctrl + Shift + Pعلامة الوكيل (Proxy tab)
Ctrl + Shift + Iعلامة المقتحم (Intruder tab)
Ctrl + Shift + Rعلامة المكرر (Repeater tab)

حل اسئله


مشاهدة المرفق 6210




الإعدادات الخاصه بـ Burp Suite
لازم نتعرف على الخيارات اللي متاحة لتكوين برنامج Burp Suite. فيه نوعين من الإعدادات:
1. إعدادات عامة (User settings).
هذه الإعدادات تأثر على كل البرنامج Burp Suite وتطبق في كل مرة تشغل فيها التطبيق. تعتبر هذه الإعدادات أساسية لتهيئة برنامج Burp Suite.
2. إعدادات المشروع (project settings).
هذه الإعدادات خاصة بالمشروع الحالي وتطبق فقط أثناء الجلسة. لكن، إصدار Burp Suite Community Edition ما يدعم حفظ المشاريع، فأي خيارات خاصة بالمشروع رح تروح لما تقفل برنامج Burp

1. الأدوات(Tools) : تتضمن أدوات Burp Suite مجموعة متنوعة من الأدوات التي يمكن استخدامها لاختبار اختراق تطبيقات الويب. يتم تقسيم هذه الأدوات إلى الفئات التالية:
1. الوكيل (Proxy): يسمح لك بإعادة توجيه حركة مرور الشبكة عبر Burp Suite، مما يتيح لك فحصها وتعديلها.​
  • الإعدادات: يتحكم في إعدادات الخادم الوكيل، مثل عنوان IP والمنفذ وإعدادات HTTP.
  • المرشحات: يسمح لك بتصفية حركة المرور التي يتم إعادة توجيهها عبر Burp Suite.
  • السجلات: يسجل حركة المرور التي يتم إعادة توجيهها عبر Burp Suite.
2. التطفل (Intruder): يسمح لك بإنشاء طلبات HTTP مخصصة وإرسالها إلى الخادم.​
  • الإعدادات: يتحكم في إعدادات أداة التطفل، مثل نوع الهجمات التي تريد تنفيذها.
  • المخططات: يسمح لك بإنشاء مخططات لهجمات التطفل.
  • السجلات: يسجل نتائج هجمات التطفل.
3. المكرر (Repeater): يسمح لك بإعادة إرسال طلبات HTTP موجودة مع تغييرات محددة.​
  • الإعدادات: يتحكم في إعدادات أداة المكرر، مثل نوع التغييرات التي تريد إجراؤها على الطلبات.
  • السجلات: يسجل نتائج هجمات المكرر.
4. متصفح (Burp Suite Browser): يسمح لك بالتفاعل مع تطبيقات الويب من خلال Burp Suite.​
  • الإعدادات: يتحكم في إعدادات متصفح Burp، مثل إعدادات الأمان وخصوصية.
  • السجلات: يسجل نشاطك في متصفح Burp.
2. المشروع (Project): يسمح لك بتنظيم اختبارات اختراقك.
  • الإعدادات: يتحكم في إعدادات المشاريع، مثل اسم المشروع وموقعه.
  • العناصر: يسمح لك بإضافة عناصر إلى المشروع، مثل الطلبات والصفحات والنتائج.
1. النسخ الاحتياطي التلقائي (Automatic Backup): يسمح لك بإنشاء نسخ احتياطية تلقائية لمشاريعك.​
  • الإعدادات: يتحكم في إعدادات النسخ الاحتياطي التلقائي، مثل مدة النسخ الاحتياطي وحجم الملف.
3. اتصالات الشبكة (Network Connections): يتحكم في كيفية تعامل Burp Suite مع اتصالات الشبكة.
  • الإعدادات: يتحكم في إعدادات اتصالات الشبكة، مثل وكيل الويب وإعدادات SSL.
1. بروتوكول نقل طبقة المقابس الآمن (TLS): يتحكم في كيفية تعامل Burp Suite مع بروتوكول نقل طبقة المقابس الآمن (TLS).​
  • الإعدادات: يتحكم في إعدادات TLS، مثل إعدادات المصادقة وتشفيرها.
4. واجهة المستخدم (User Interface): يتحكم في مظهر وسلوك واجهة المستخدم Burp Suite.
  • الإعدادات: يتحكم في إعدادات واجهة المستخدم، مثل لون الخلفية وحجم الخط.
  • الملحقات: يسمح لك بإضافة ملحقات لتغيير مظهر وسلوك واجهة المستخدم.
5. الإضافات (Extensions): يسمح لك بتثبيت الإضافات لتوسيع وظائف Burp Suite.
  • إدارة الإضافات: يسمح لك بتثبيت وإدارة الإضافات.
6. الإعدادات الأخرى :
  • الـ REST API : يسمح لك بالوصول إلى Burp Suite باستخدام واجهة برمجة التطبيقات REST.
  • التحديثات (Updates): يتحكم في كيفية إدارة تحديثات Burp Suite.
  • التغذية الراجعة عن الأداء (Performance Feedback): يسمح لك بتقديم ملاحظات حول أداء Burp Suite.
  • موقع ملفات مؤقتة (Temporary Files Location): يحدد موقع ملفات Burp Suite المؤقتة.
  • سلوك بدء التشغيل (Startup Behavior): يتحكم في ما يحدث عند بدء تشغيل Burp Suite.
  • سلوك إيقاف التشغيل (Shutdown Behavior): يتحكم في ما يحدث عند إيقاف تشغيل Burp Suite.

حل اسئله

مشاهدة المرفق 6236







الـ Burp Proxy , Target بالتفصيل

الـ Burp Proxy هي أداة مهمه جداً في عالم الـ Burp Suite. الطريقة اللي بتشتغل فيها هي إنها بتلقط الطلبات والردود بينك كمستخدم وبين الخادم اللي بتحاول توصله
يعني بتقدر تقفل الطريق لأي طلب أو تعدل فيه قبل ما يوصل للهدف.

نقاط مهمة عن الـ Burp Proxy:
  1. اعتراض الطلبات (Intercepting Requests): يعني لو حد بحاول يبعث طلب للسيرفر، البروكسي بوقفه وبعرضه، وبتقدر تعدل فيه أو تتركه يكمل طريقه.
  2. التحكم (Control): القدرة على اعتراض الطلبات بتعطيك سيطرة كاملة على حركة الويب، وهو شيء حلو لاختبار التطبيقات.
  3. التقاط وتسجيل (Capture and Logging): البرنامج يسجل الطلبات اللي تمر عبر البروكسي، حتى لو كانت الاعتراضات مقفلة. هذا مفيد لفحص البيانات لاحقاً.
  4. WebSocket Support: البروكسي يدعم أيضا التقاط وتسجيل اتصالات WebSocket، وهذا يساعد كثير عند تحليل تطبيقات الويب.
  5. السجلات والتاريخ (Logs and History): الطلبات الملتقطة يمكن عرضها في تاريخ HTTP وتاريخ WebSockets، وهذا يفيد لفهم التاريخ ومراجعة الطلبات السابقة.



الـ FoxyProxy :

الخطوات الأساسية للتنزيل:
  1. حمل الاضافة: ابحث وحمل اضافة FoxyProxy لمتصفحك.
  2. افتح الإعدادات: بعد ما تحملها، راح تلاقي زر لها في المتصفح، اضغط عليه واختار الإعدادات.
  3. أنشئ إعدادات البروكسي: اضغط على زر Options واختار Add لتسوي إعدادات البروكسي.
  4. حط التفاصيل: اكتب اسم (مثل Burp) وIP البروكسي 127.0.0.1 ورقم البورت 8080.
  5. احفظ الإعدادات: مهم تضغط Save عشان تحفظ الإعدادات.
  6. شغّل البروكسي: اضغط على أيقونة FoxyProxy واختار الإعدادات اللي سويتها. كل اتصالاتك راح تمر عبر البروكسي.
  7. تفعيل Intercept في البرنامج الرئيسي : انتقل لبرنامج Burp Suite وتأكد إن الـ Intercept مفعل في قسم البروكسي.
  8. جرّب البروكسي: افتح المتصفح وحاول تفتح موقع، مثل صفحة الجهاز اللي تشتغل عليه. المتصفح راح يعلق والبروكسي راح يظهر لك بيانات الطلب. هيك بتكون ختمت أول طلب بنجاح!

الـ Site Map and Issue Definitions داخل الـ Target

الـ Site map: هاد قسم اللي بعطينا خريطة للمواقع اللي بنحاول نختبرها، زي خريطة الشوارع بس للمواقع. لما نستخدم البروكسي، كل صفحة بنزورها بتتسجل في الخريطة. الحاجة الحلوة إننا نقدر نعمل خريطة تلقائية بمجرد ما نتصفح التطبيق. بالـ Burp Suite Professional، ممكن نستخدم الخريطة عشان نعمل Crawl تلقائي للهدف ونكتشف الروابط بين الصفحات ونعمل خريطة لكل شيء بالموقع. حتى مع Burp Suite Community، بنقدر نستفيد من الخريطة عشان نجمع بيانات في الخطوات الأولى. وهاي مفيدة خصوصاً ل لبيانات الـ APIs، لأن أي نقطة وصول للـ API بتتسجل في الخريطة.( مثال عليها تحت )

الـ Issue definitions: حتى لو Burp Community مش متاح فيها كل الأدوات اللي بـ Burp Suite Professional، بس معانا قائمة بكل الثغرات اللي الـ scanner ببحث عنها. القسم هاد بعطينا لستة طويلة بكل ثغرات الويب، مع وصف ومراجع. القسم هاد مفيد عشان نكتب الثغرات في التقارير أو نساعد في وصف ثغرة معينة وجدت أثناء الاختبار اليدوي.

الـ Scope settings: القسم هاد بعطينا فرصة نتحكم في مدى اختبارنا للموقع. بنقدر نشمل أو نستبعد دومينات/آيبيات معينة عشان نعرف نطلع / نتجاهل أو نركز على تجربتنا. ( شرحها تحت )


حل التحدي
عند فتح موقع التحدي على متصفح الخاص بـ Burp Suite (راح احكي عنه بالاسفل) نجد بصفحه الـ Target عند الـ Site map تحديدا هذه الصفحه 👇
يبدو شكل مشاهدة المرفق 6316 غريب بكبس عليه اشوف الـ Response بلاقي العلم



طيب شو هو المتصفح الخاص بـ Burp Suite :
هو برنامج اسمه Burp Suite Browser، اللي هو عبارة عن متصفح مدمج في البرنامج ومخصص ليشتغل مع الـ proxy بدون ما نحتاج نغير أي إعدادات في المتصفح العادي.

عشان تفتحه اظغط على "Open Browser" في قسم الـ proxy. بظهر نافذة جديدة باستخدام متصفح اسمه Chromium اللي جاهز مسبقًا ليتعامل مع البروكسي بدون أي تعديلات مننا. في إعدادات كتيره متعلقة بالمتصفح في إعدادات المشروع وإعدادات المستخدم. ف احرص إنك تفحصهم وتعدلهم على حسب احتياجاتك. بس لو كنت عامل البرنامج على لينكس وكنت داخل بحساب المستخدم الجذر (root)، ممكن تواجه مشكلة وما يبدأ المتصفح الخاص بالبرنامج بسبب مشاكل في إنشاء بيئة محمية.

فيه حلين للموضوع هاد :
  1. اعمل حساب جديد واستخدم البرنامج تحت الحساب العادي عشان المتصفح يشتغل بدون مشاكل.
  2. ادخل على إعدادات -> أدوات -> متصفح البرنامج وحدد الخيار Allow Burp's browser to run without a sandbox . لو فعلته، المتصفح ببدأ بدون محيط أمان، احرص إنك تكون حذر، لانه الخيار هاد عادة معطل عشان أمان الجهاز عشان لو خرب المتصفح يمكن يعطي للهاكر فرصة يدخل على الجهاز بكامله.


الـ Scope settings :

لو إنت بتشتغل في مجال الـBurp Proxy، أول اشي لازم تعرفها إنه لما تشتغل بالبروكسي، بتلتقط وبتسجل كل الحركات اللي بتصير على الشبكة، بس ممكن تكون هاي الحركات كتيرة وملهاش لازمة. هون بتيجي فكرة "السكوب"، إنك تحدد نطاق العمل ، أو بمعنى تاني تختار الويبسايتس اللي إنت بدك تراجعها بس. أسهل طريقة لعمل السكوب هي إنك تدخل على تاب الـ Target، تعمل كليك يمين على الويبسايت اللي إنت بدك تشتغل عليه، وتختار Add To Scope. هون بطلب منك إذا بدك توقف تسجيل أي حاجة مش موجودة في الـ Scope. عشان تتأكد من الـScope الخاص فيك بتدخل على تاب الـ Target بتلاقي Scope settings ، ومن هون بتقدر تتحكم في الـ Scope الخاص بك بإضافة أو إستبعاد عناوين الـIP أو الدومينز.

بس حتى لو أوقفت تسجيل الحركات اللي مش موجودة في الـ Scope، البروكسي بيوقف كل حاجة. عشان هيك لازم تدخل على تاب الـ Proxy وتختار And URL Is in target scope من قسم Intercept Client Requests . لما تشغل الخيار هاد، البروكسي بتجاهل أي حركة مش موجودة في الـ Scope، وهاد بخلي الشاشة في برنامج الـ Burp أنظف وأسهل للفهم.

مثال 👇

5db0a2b0597830ae32aaaf9b80d73187.gif



الـ Proxying HTTPS :

في هذا الموضوع نقاشنا عن مشكلة قد تواجهنا واحنا بنحاول نتصفح مواقع الإنترنت اللي عندها حماية ببروتوكول TLS. مثلاً لما تحاول تفتح موقع مثل https://google.com ، قد تظهر لك مشكلة تقول إنه الـ PortSwigger Certificate Authority (CA) مش معتمد لديها لتأمين الاتصال. السبب هو إن المتصفح ما بتعرف بالشهادة اللي بعرضها برنامج Burp Suite.

8b4b43cac91cd9a80622b953598d05eb.png

عشان نتغلب على هالمشكلة، لازم نضيف شهادة PortSwigger CA يدوياً إلى قائمة الشهادات المعتمدة في المتصفح.

الخطوات :

١. حمّل الشهادة : شغّل Burp Proxy وروح على http://burp/cert . راح تحمل ملف اسمه cacert.der . احفظه في مكان على جهازك.

٢. ادخل إلى إعدادات الشهادات في Firefox: اكتب about:preferences في شريط عناوين Firefox واضغط Enter. راح يوديك إلى صفحة إعدادات Firefox. ابحث عن certificates واضغط على زر View Certificates.

٣. استورد الشهادة: في نافذة Certificate Manager، اضغط على زر Import. اختر ملف cacert.der اللي حملته في الخطوة السابقة.

٤. حدد الثقة للشهادة: في النافذة اللي بتظهر بعد هيك، حط علامة صح في المربع اللي مكتوب فيه Trust this CA to identify websites واضغط OK.

بهذه الخطوات، قد أضفنا شهادة PortSwigger CA إلى قائمة الشهادات المعتمدة لدينا في المتصفح. الحين، يفترض أننا بنقدر ندخل أي موقع محمي ببروتوكول TLS بدون مشاكل.

مثال فيديو 👇
fb2a8717ae887eda024a7791d83cefaf.gif


مثال لاختراق الموقع عن طريق ثغره Cross-Site Scripting واستعراض الطلب على Burp Suite

الفكرة إننا نحاول نحط كود برمجي (JavaScript عادة) في صفحة الويب بحيث يتنفذ لما حد يفتح الصفحة. وفي النهاية بنلاقي تحذير على الموقع ببين إنّا قدرنا ننفذ الكود بنجاح.

اول باشي بنفوت على المكان اللي فيه بنقدم الطلب او التكيت ( اللي راح نحط فيه كود برمجي ) على الرابط http://MACHINE_IP/ticket
لو اول مرة تسمع عن XSS، هو فكرته إننا نحط كود برمجي في الصفحة بحيث يشتغل عند فتحها. النوع اللي هنستخدمه هنا هو Reflected XSS، عشان بيأثر فقط على الشخص اللي بعمل الطلب للصفحة.
نجرب نكتب 👇
JavaScript:
<script>alert("تمت الاختراق")</script>
في حقل Contact Email . بنلاقي انو في فلتر على النص عشان يمنع إضافة أي رموز غريبة.

GIF demonstrating the client-side filter

لكن بنلاقي إن الفلتر هاد مش قوي ، والطريقة اللي اتبعتها ممكن نفهمها من خلال فيديو مصغر.



بنعبي نموذج بمعلومات صحيحة وبدون اي كود ، زي [email protected] كعنوان بريد إلكتروني و Test Attack كاستعلام، نستخدم البروكسي لتعديل الطلب المرسل. نحط بداله كودنا البرمجي المبسط ونبعته. هيظهر لنا تنبيه من الموقع يفيد بنجاح هجوم XSS! ( زي اللي بالفيديو 👇 )

GIF demonstrating the explained process of intercepting and URL encoding the pasted payload


وأخيرًا، اضغط على زر Forward لإرسال الطلب.
سيظهر لك مربع تنبيه من الموقع يشير إلى نجاح هجوم XSS!


Screenshot showing the successful XSS attack

بارك الله فيك عبود على هذا الشرح الرائع وجزاك الله كل خير
ننتظر جديدك يا وحش
تقبل مروري
 
مشكور شديد والله
الواحد بقي بحضر كورس الاستاذ @STORM وبجي المنتدى بقرا المواضيع الليها علاقة بالجزئية حقت الكورس وبس بكون فل تاني
ربنا يوفقكم
 
الـ FoxyProxy :

الخطوات الأساسية للتنزيل:
  1. حمل الاضافة: ابحث وحمل اضافة FoxyProxy لمتصفحك.
  2. افتح الإعدادات: بعد ما تحملها، راح تلاقي زر لها في المتصفح، اضغط عليه واختار الإعدادات.
  3. أنشئ إعدادات البروكسي: اضغط على زر Options واختار Add لتسوي إعدادات البروكسي.
  4. حط التفاصيل: اكتب اسم (مثل Burp) وIP البروكسي 127.0.0.1 ورقم البورت 8080.
  5. احفظ الإعدادات: مهم تضغط Save عشان تحفظ الإعدادات.
  6. شغّل البروكسي: اضغط على أيقونة FoxyProxy واختار الإعدادات اللي سويتها. كل اتصالاتك راح تمر عبر البروكسي.
  7. تفعيل Intercept في البرنامج الرئيسي : انتقل لبرنامج Burp Suite وتأكد إن الـ Intercept مفعل في قسم البروكسي.
  8. جرّب البروكسي: افتح المتصفح وحاول تفتح موقع، مثل صفحة الجهاز اللي تشتغل عليه. المتصفح راح يعلق والبروكسي راح يظهر لك بيانات الطلب. هيك بتكون ختمت أول طلب بنجاح!
فيديو مفيد عن هذا الموضوع
 

آخر المشاركات

فانوس

رمضان
عودة
أعلى