
ماسح أمني مبني على بايثون لتحديد ثغرة CVE-2025-31324 في أنظمة SAP Visual Composer، واكتشاف مؤشرات الاختراق (IOCs) المعروفة مثل ملفات .jsp الخبيثة.
أداة مسح أمني مبنية بلغة بايثون لتحديد الثغرة الأمنية CVE-2025-31324 في أنظمة SAP Visual Composer، وكشف مؤشرات الاختراق المعروفة (IOCs) مثل ملفات .jsp الخبيثة.
.jsp الخبيثة المعروفة (ويب شيلات)requests (تُثبت عبر requirements.txt)# 1. Clone the repository
git clone https://github.com/youruser/CVE-2025-31324.git
cd CVE-2025-31324
# 2. Create and activate virtual environment
python3 -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# 3. Install dependencies
pip install -r requirements.txt
scan.py # الماسح الضوئي الرئيسي
targets.csv # قائمة الأهداف المدخلة
ioc_list.txt # قائمة تواقيع IOC اختيارية
results.csv # تقرير المخرجات (إذا تم استخدام --output)
requirements.txt # تبعيات Python
أنشئ ملفاً باسم targets.csv بالتنسيق التالي المفصول بفاصلة منقوطة مع IP والمنفذ وخيار SSL:
192.168.1.10;50000;false
myunsafelocation.example.com;443;true
10.0.0.5;8080;false
true أو false أو yes أو noأنشئ ملفاً باسم ioc_list.txt:
# IOCs الافتراضية
cache.jsp
helper.jsp
nzwcnktc.jsp
# أضف تواقيعك الخاصة
shell.jsp
webadmin.jsp
python3 scan.py --input targets.csv
| العلامة | الوصف |
|---|---|
--iocfile | مسار قائمة IOC مخصصة (ملف .txt) |
python3 scan.py --input targets.csv --iocfile ioc_list.txt --output results.csv --verbose
يقوم النص البرمجي بطباعة كتلة نتائج لكل مضيف:
__________________________________
✅ الهدف 1 : 192.168.1.10:50000
الاتصال: متصل
الحالة: غير معرض للخطر
IOC: لم يتم الكشف عن أي شيء
__________________________________
| الرمز | المعنى |
|---|---|
| ✅ | آمن (غير معرض للخطر، لا توجد IOCs) |
| ❗ | معرض للخطر، لكن لم يتم العثور على IOCs |
| 💥 | معرض للخطر + تم الكشف عن IOC(s) |
| ❌ | المضيف غير قابل للوصول / فشل الاتصال |
للاختبار المحلي، قم بتشغيل خادم HTTP بلغة بايثون يحاكي نظام SAP ضعيف:
mkdir -p test/developmentserver
mkdir -p test/irj
echo "" > test/developmentserver/metadatauploader
echo "<%-- fake webshell --%>" > test/irj/cache.jsp
cd test
python3 -m http.server 8000
أضف إلى targets.csv:
0.0.0.0;8000;false
هذه الأداة مُقدمة لأغراض اختبار الأمان والبحث المصرح به فقط. لا تستخدمها ضد أنظمة لا تملكها أو ليس لديك إذن صريح بمسحها.
للحصول على اقتراحات أو تحسينات، يرجى فتح مشكلة (Issue) أو تقديم طلب سحب (PR).
هذا المشروع مرخص بموجب رخصة MIT.
يمكنك استخدامه وتعديله وتوزيعه بحرية — تجارياً أو بشكل خاص.
إخلاء مسؤولية:
هذه الأداة مُقدمة كما هي، دون أي ضمان أو تعهد.
المؤلفون غير مسؤولين عن أي ضرر أو مشكلات قانونية ناتجة عن استخدامها.
استخدمها فقط في البيئات التي لديك فيها تفويض صريح بمسح الأنظمة واختبارها.
--output أو -o | حفظ النتائج إلى CSV |
--verbose أو -v | تفعيل إخراج تصحيح مفصل |