Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
Java-Deserialization-Scanner — إضافة متكاملة لـ Burp Suite لاكتشاف واستغلال ثغرات إلغاء تسلسل Java | Kitploit
أدوات/GitHubGitHub/federicodotta/java-deserialization-scanner
أطر الاستغلالتوليد الحمولةتحليل الثغرات الأمنيةاستغلال تطبيقات الويباختبار الاختراق
GitHubfedericodotta/java-deserialization-scanner

Java-Deserialization-Scanner

إضافة متكاملة لـ Burp Suite لاكتشاف واستغلال ثغرات إلغاء تسلسل Java

عرض المستودع

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة
802175منذ 4 سنواتتمت المراجعة من قبل Kitploit

Java Deserialization Scanner

Java Deserialization Scanner هو مكوّن إضافي (plugin) لـ Burp Suite يهدف إلى اكتشاف ثغرات إلغاء تسلسل Java واستغلالها. تمت كتابته بواسطة Federico Dotta، المحلل الأمني الرئيسي في HN Security.

يتكوّن المكوّن الإضافي من ثلاثة مكونات مختلفة:

  1. التكامل مع الماسح النشط والسلبي لـ Burp Suite
  2. المختبر اليدوي (Manual tester)، لاكتشاف ثغرات إلغاء تسلسل Java في نقاط الإدراج المخصصة
  3. المستغل (Exploiter)، الذي يسمح باستغلال ثغرات إلغاء تسلسل Java بنشاط، باستخدام frohoff ysoserial (https://github.com/frohoff/ysoserial)

المؤلف

  • Federico Dotta، المحلل الأمني الرئيسي في HN Security

المساهمون

  • Jeremy Goldstein
  • Andras Veres-Szentkiralyi

دليل استخدام مصغّر (24/05/17)

يمكن العثور على مقال موجز يحتوي على دليل استخدام مصغّر حول كيفية استخدام المكونات المختلفة للمكوّن الإضافي على الرابط التالي: https://web.archive.org/web/20201130104913/https://techblog.mediaservice.net/2017/05/reliable-discovery-and-exploitation-of-java-deserialization-vulnerabilities/

التكامل مع الماسح النشط والسلبي لـ Burp Suite

يستخدم Java Deserialization Scanner حمولات مخصصة (payloads) تم توليدها باستخدام نسخة معدّلة من "ysoserial"، وهي أداة أنشأها frohoff و gebl، لاكتشاف ثغرات إلغاء تسلسل Java. الأداة الأصلية (https://github.com/frohoff/ysoserial) تولّد حمولات لتنفيذ الأوامر على النظام باستخدام دالة Runtime.exec. ومع ذلك، عادةً لا يمكن رؤية مخرجات الأمر، وبالتالي ليس من السهل كتابة ماسح يعتمد على هذا النوع من الدوال. لهذا السبب، يتم استخدام نسخة معدّلة من ysoserial لتوليد أنواع مختلفة من الحمولات، وهي مفيدة لاكتشاف المشكلة بدلاً من استغلالها:

  1. حمولات تنفّذ دالة إيقاف مؤقت متزامنة (sleep)، من أجل التحقق من وجود المشكلة بناءً على زمن الاستجابة
  2. حمولات تنفّذ تحليل DNS، من أجل التحقق من وجود المشكلة باستخدام Burp Suite Collaborator المدمج في Burp Suite

حاليًا، تبلغ الفحوصات السلبية لماسح Java Deserialization Scanner عن وجود كائنات Java متسلسلة في طلبات HTTP، بينما تفحص الفحوصات النشطة بنشاط عن وجود دوال إلغاء تسلسل ضعيفة إلى جانب وجود المكتبات الضعيفة التالية:

  1. Apache Commons Collections 3 (حتى 3.2.1)، مع خمس سلاسل مختلفة
  2. Apache Commons Collections 4 (حتى 4.4.0)، مع سلسلتين مختلفتين
  3. Spring (حتى 4.2.2)، مع سلسلتين مختلفتين
  4. Java 6 و Java 7 (حتى Jdk7u21) دون أي مكتبة ضعيفة
  5. Hibernate 5
  6. JSON
  7. Rome
  8. Java 8 (حتى Jdk8u20) دون أي مكتبة ضعيفة
  9. Apache Commons BeanUtils
  10. Javassist/Weld
  11. JBoss Interceptors
  12. Mozilla Rhino (سلسلتان مختلفتان)
  13. Vaadin

علاوة على ذلك، تم تقديم حمولة URLSNDS للكشف النشط عن إلغاء تسلسل Java دون أي مكتبات ضعيفة. إذا وجد المكوّن الإضافي مشكلة URLDNS فقط (دون مكتبات ضعيفة)، فمن المحتمل أن يتمكن المهاجم من تنفيذ هجمات حجب الخدمة (DoS)، ولكن لتحقيق تنفيذ التعليمات البرمجية عن بُعد (RCE) يلزم بذل المزيد من الجهد. راجع هذا الرابط لمزيد من التفاصيل.

تدعم جميع مكونات المكوّن الإضافي طرق الترميز التالية:

  1. Raw
  2. Base64
  3. Ascii Hex
  4. GZIP
  5. Base64 GZIP

يوجد في مجلد الاختبار (test) بعض تطبيقات خوادم Java البسيطة التي يمكن استخدامها لاختبار المكوّن الإضافي. يستخدم كل تطبيق مكتبة Java ضعيفة مختلفة.

المختبر اليدوي

يوفر المكوّن الإضافي تبويبًا مخصصًا لإطلاق الكشف باستخدام حمولات sleep و DNS على نقاط الإدراج المخصصة، من أجل التحقق من ثغرات إلغاء تسلسل Java في الحالات الخاصة التي لا تسمح فيها نقاط الدخول غير المعتادة بالكشف عبر الماسح. يمكن إدراج نتائج المختبر اليدوي ضمن نتائج ماسح Burp Suite.

يوفر المختبر اليدوي طريقة كشف إضافية: كشف CPU. تعتمد طريقة كشف CPU على عمل Wouter Coekaerts’ SerialDOS (https://gist.github.com/coekie/a27cc406fc9f3dc7a70d) وهي قادرة على اكتشاف مشاكل إلغاء التسلسل دون وجود أي مكتبة ضعيفة، وذلك باستخدام كائن يستهلك العديد من دورات المعالج (CPU cycles) في مهمة إلغاء التسلسل والتحقق من زمن الاستجابة. لا يتم تضمين طريقة كشف CPU افتراضيًا في فحوصات المسح النشط، لأنه يجب استخدامها بحذر: قد يتسبب إرسال عدد كبير من حمولات SerialDOS "الخفيفة" في مشاكل على الأنظمة القديمة أو عالية التحميل.

المستغل

بعد العثور على ثغرة إلغاء تسلسل Java، يمكن استغلال المشكلة بنشاط من خلال التبويب المخصص "Exploiting". يوفر تبويب "Exploiting" واجهة مريحة لاستغلال ثغرات إلغاء التسلسل. يستخدم هذا التبويب أداة ysoserial لتوليد متجهات الاستغلال ويضمّن الحمولة المولّدة في طلب HTTP. تأخذ ysoserial مكتبة ضعيفة وأمرًا كوسيطات، وتولّد كائنًا متسلسلاً بشكل ثنائي يمكن إرساله إلى التطبيق الضعيف لتنفيذ الأمر على النظام الهدف (من الواضح إذا كان التطبيق الهدف ضعيفًا). يدعم تبويب Exploiting نفس تنسيقات الترميز المستخدمة في أقسام الكشف في المكوّن الإضافي.

لقطة الشاشة

alt tag

التثبيت

  1. قم بتنزيل Burp Suite: http://portswigger.net/burp/download.html
  2. قم بتثبيت Java Deserialization Scanner من متجر BApp Store أو اتبع الخطوات التالية:
  3. قم بتنزيل أحدث إصدار من Java Deserialization Scanner
  4. افتح Burp -> Extender -> Extensions -> Add -> واختر ملف JavaDeserializationScannerXX.jar

دليل المستخدم

  1. بعد التثبيت، ستُضاف فحوصات Java Deserialization Scanner النشطة والسلبية إلى ماسح Burp Suite (يمكن تعطيل الفحوصات في تبويب الخيارات)
  2. ما عليك سوى تشغيل الماسح النشط أو السلبي للتحقق أيضًا من ضعف إلغاء تسلسل Java
  3. من خلال التبويب المخصص "Manual testing" يمكن ضبط نقطة الحقن وتنفيذ الهجوم بجميع الحمولات
  4. من خلال التبويب المخصص "Exploiting" يمكن استغلال ثغرات إلغاء تسلسل Java بنشاط
  5. يحتوي "Configuration" على جميع الإعدادات اللازمة للتشغيل الصحيح للمكوّن الإضافي

تحسين Java Deserialization Scanner

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

إخلاء مسؤولية

تم إنشاء هذا البرنامج لأغراض البحث الأكاديمي وتطوير تقنيات دفاعية فعالة فقط، وليس المقصود منه مهاجمة الأنظمة إلا في الحالات المصرح بها صراحةً. القائمون على صيانة المشروع غير مسؤولين عن سوء استخدام البرنامج. استخدمه بمسؤولية.

رخصة MIT

حقوق الطبع والنشر (c) 2020 Java Deserialization Scanner

يُمنح هذا الإذن مجانًا لأي شخص يحصل على نسخة من هذا البرنامج وملفات التوثيق المرتبطة به ("البرنامج")، للتعامل مع البرنامج دون قيود، بما في ذلك على سبيل المثال لا الحصر حقوق الاستخدام والنسخ والتعديل والدمج والنشر والتوزيع والترخيص من الباطن و/أو بيع نسخ من البرنامج، والسماح للأشخاص الذين تم تزويدهم بالبرنامج بذلك، مع مراعاة الشروط التالية:

يجب تضمين إشعار حقوق الطبع والنشر أعلاه وإشعار الإذن هذا في جميع النسخ أو الأجزاء الجوهرية من البرنامج.

يُقدَّم البرنامج "كما هو"، دون أي ضمان من أي نوع، صريح أو ضمني، بما في ذلك على سبيل المثال لا الحصر ضمانات القابلية للتسويق والملاءمة لغرض معين وعدم الانتهاك. لا يكون المؤلفون أو أصحاب حقوق الطبع والنشر مسؤولين بأي حال من الأحوال عن أي مطالبة أو أضرار أو مسؤولية أخرى، سواء في إطار عقد أو تقصير أو غير ذلك، تنشأ عن البرنامج أو فيما يتعلق به أو عن استخدامه أو التعامل معه.

تنزيل الأداة