إضافة بورب سويت لـ CVE-2025-31324
نظرة عامة
تم تصميم إضافة بورب سويت المستندة إلى بايثون هذه لاكتشاف وجود CVE-2025-31324، وهي ثغرة أمنية حرجة في مكوّن رفع البيانات الوصفية (Metadata Uploader) لـ SAP NetWeaver Visual Composer. تسمح الثغرة بتنفيذ تعليمات برمجية عن بُعد بدون مصادقة عبر رفع ملف بسبب عدم وجود فحص للصلاحية. تقوم الإضافة بإجراء مسح نشط عن طريق إرسال ملف اختبار إلى نقطة النهاية /developmentserver/metadatauploader وتفحص مؤشرات نجاح الرفع.
ملاحظة: هذه الأداة مخصصة لـ الاختبار الأمني الأخلاقي فقط. استخدمها فقط على الأنظمة التي لديك إذن صريح باختبارها. الاستخدام غير المصرح به قد يكون غير قانوني وغير أخلاقي.
الميزات
- يقوم بمسح نشط لـ CVE-2025-31324 عن طريق محاولة رفع ملف غير ضار.
- يبلغ عن النتائج كمشكلات مخصصة في "نشاط المشكلات" (Issue Activity) في بورب سويت مع أدلة مفصلة.
- متوافق مع Jython (Python 2.x) للتكامل مع بورب سويت.
المتطلبات الأساسية
- بورب سويت بروفيشنال (قد يكون للنسخة المجتمعية قيود).
- Jython (ملف JAR مستقل، إصدار يتوافق مع بورب سويت).
- تطبيق SAP NetWeaver مستهدف ضمن نطاق بورب.
التثبيت
-
إعداد Jython في بورب سويت:
- قم بتنزيل ملف Jython المستقل من jython.org.
- في بورب سويت، انتقل إلى
Extender > Options > Python Environment.
- اختر ملف Jython JAR كبيئة بايثون.
-
تحميل الإضافة:
- احفظ كود الإضافة كملف باسم
cve_2025_31324_scanner.py (تأكد من حصولك على النص البرمجي من المصدر المقدم).
- في بورب سويت، اذهب إلى
Extender > Extensions > Add.
- عيّن نوع الإضافة إلى
Python واختر ملف cve_2025_31324_scanner.py.
- تأكد من تحميل الإضافة بنجاح (تحقق من علامة التبويب
Output لظهور رسالة "CVE-2025-31324 Scanner loaded successfully").
الاستخدام
-
تكوين بورب سويت:
- أضف تطبيق SAP NetWeaver المستهدف إلى نطاق بورب (مثلاً عبر
Target > Site map > Add to scope).
- تأكد من أن الهدف يشمل نقطة النهاية
/developmentserver/metadatauploader.
-
تشغيل الفحص:
- ابدأ فحصًا نشطًا على الهدف (
Scanner > New scan > اختر الهدف).
- ستقوم الإضافة تلقائيًا باختبار الطلبات الموجهة إلى نقطة النهاية الضعيفة.
- راقب علامة التبويب
Issues للاطلاع على الثغرات المبلغ عنها تحت "CVE-2025-31324: SAP NetWeaver File Upload Vulnerability".
-
تفسير النتائج:
- إذا اكتشفت الإضافة ثغرة محتملة، فستبلغ عن مشكلة بدرجة
High (عالية) مع أدلة (مثل "تم استلام HTTP 200، مما يشير إلى نجاح محتمل في رفع الملف").
- تحقق يدويًا من النتائج لتأكيد الثغرة، حيث أن استجابات HTTP 200 قد لا تشير دائمًا إلى استغلال ناجح.
الاعتبارات الأخلاقية
- الاستخدام المصرح به فقط: اختبر فقط الأنظمة التي لديك إذن صريح من مالكها. المسح أو الاستغلال غير المصرح به غير قانوني وغير أخلاقي.
- الاختبار غير الضار: تقوم الإضافة برفع ملف نصي غير ضار (
test_cve_2025_31324.txt) لتجنب التسبب في ضرر. لا تقم بتعديل الحمولة لتضمين تعليمات برمجية ضارة إلا إذا كان ذلك مصرحًا به صراحة.
- الإفصاح المسؤول: أبلغ عن أي ثغرات مكتشفة لمالك النظام فورًا واتبع ممارسات الإفصاح المسؤولة.
القيود
- نتائج إيجابية خاطئة: لا تضمن استجابة HTTP 200 وجود ثغرة. يلزم التحقق اليدوي لتأكيد رفع الملف وإمكانية تنفيذ الأكواد.
- توافق Jython: تستخدم الإضافة بناء جملة Python 2.x بسبب بيئة Jython في بورب سويت. تأكد من التوافق مع إصدار بورب سويت لديك.
- كشف أساسي: تتحقق الإضافة من مؤشرات النجاح الأساسية فقط. لم يتم تنفيذ الاستغلال المتقدم (مثل تنفيذ الملفات المرفوعة) لمنع الضرر.
التخصيص
لتكييف الإضافة مع بيئات محددة:
- قم بتعديل
boundary أو test_filename في ملف cve_2025_31324_scanner.py لتتناسب مع متطلبات الخادم.
- اضبط فحوصات الاستجابة (مثل سلاسل محددة في نص الاستجابة) لكشف أكثر دقة.
- أضف حمولات أو نقاط نهاية إضافية إذا كان الهدف يستخدم تكوينات غير قياسية.
المراجع
- تفاصيل CVE-2025-31324: إدخال قاعدة البيانات الوطنية للثغرات (NVD) لـ CVE-2025-31324.
- ملاحظة أمان SAP: طبق ملاحظة أمان SAP رقم 3594142 لتصحيح الثغرة (راجع وثائق SAP الرسمية).
- دليل إضافات بورب سويت: وثائق PortSwigger حول كتابة فحوصات ماسح مخصصة.
- معلومات الثغرة: تقارير مدونة Tenable و Redrays.io حول CVE-2025-31324.
الترخيص
تم توفير هذا المشروع لأغراض الاختبار الأمني التعليمي والأخلاقي فقط. المؤلف ليس مسؤولاً عن سوء الاستخدام أو الاستخدام غير المصرح به لهذه الأداة.
الاتصال
للاستفسارات أو الاقتراحات، يرجى فتح مشكلة في مستودع المشروع (إن وجد) أو الاتصال بالمؤلف عبر القنوات المصرح بها.
إخلاء مسؤولية: هذه الأداة مخصصة لباحثي الأمن ومختبري الاختراق الذين لديهم إذن صريح باختبار الأنظمة المستهدفة. قد يؤدي سوء الاستخدام إلى انتهاك القوانين والمعايير الأخلاقية.