
إثبات المفهوم العام لـ CVE-2025-25257: FortiWeb pre-auth SQLi to RCE
إخلاء مسؤولية: هذا الدليل البرهاني على المفهوم (PoC) مقدم لأغراض الاختبارات الأمنية المصرح بها والبحث فقط. الاستخدام غير المصرح به ضد أنظمة لا تمتلكها أو ليس لديك إذن صريح لاختبارها غير قانوني. يتحمل المستخدمون مسؤولية الامتثال لجميع القوانين واللوائح المعمول بها.
CVE‑2025‑25257 هي ثغرة أمنية خطيرة في منتج Fortinet FortiWeb، وهو جدار حماية لتطبيقات الويب، وتحديداً في مكون Fabric Connector الخاص به. تسمح للمهاجمين بتنفيذ أوامر نظام عشوائية دون مصادقة، مما يشكل خطراً شديداً يتمثل في اختراق كامل للنظام.
| نطاق الإصدار | الحالة |
|---|---|
| 7.6.0 – 7.6.3 | متأثر |
| 7.4.0 – 7.4.7 | متأثر |
| 7.2.0 – 7.2.10 | متأثر |
| 7.0.10 والإصدارات الأقدم | متأثر |
ينبع هذه الثغرة من التعامل غير الآمن مع رأس HTTP Authorization: Bearer <token> في الدالة get_fabric_user_by_token(). بسبب عدم كفاية تنقية المدخلات، يمكن للمهاجمين حقن أوامر SQL ضارة (حقن SQL، CWE‑89).
التأثير:
SELECT ... INTO OUTFILE في MySQL، يمكن للمهاجمين كتابة ملفات ضارة (مثل ويبشيلز أو نصوص Python) إلى الخادم، مما يتيح السيطرة الكاملة على النظام.📥 تحميل الإصدار الأخير (v1.0.0)
الملفات المضمنة:
CVE-2025-25257.py - سكربت الاستغلال بلغة PythonREADME.md - التوثيق الكاملexploit_workflow.svg - مخطط سير عمل الهجوميتبع الاستغلال هذه الخطوات، كما هو موضح في مخطط Mermaid أدناه (الذي يتم عرضه أصلاً على GitHub) والصورة الثابتة exploit_workflow.svg:
graph TD
A[مهاجم] --> B[نقطة النهاية المستهدفة]
B --> C[حقن SQL]
C --> D[إنشاء ويبشيل]
D --> E[تنفيذ الأوامر]
E --> F[اختراق النظام]
/api/fabric/device/status.webshell.php) إلى الخادم.User-Agent إلى الويبشيل، لتنفيذ أوامر نظام عشوائية.| الإجراء | التفاصيل |
|---|---|
| التحديث فوراً | الترقية إلى إصدار مصحح: 7.6.4+ أو 7.4.8+ أو 7.2.11+ أو 7.0.11+ |
| تخفيف مؤقت | تقييد أو تعطيل الوصول إلى واجهة الإدارة عبر HTTP/HTTPS |
| الكشف | - مراقبة رؤوس Authorization بحثاً عن بناء جملة SQL- استخدام IDS/IPS للكشف عن محاولات حقن SQL على /api/fabric/device/status- التحقق من وجود ملفات غير متوقعة (مثل .php أو .py أو نصوص CGI) |
المراجع:
هذه الأداة مخصصة للاختبارات الأمنية المصرح بها والبحث فقط. تأكد من أن لديك إذناً صريحاً لاختبار النظام المستهدف.
requests, argparsepip install requestspython3 cve_2025_25257.py -t https://target-ip
| الخيار | الوصف |
|---|---|
-t | عنوان URL الهدف (مثل https://target-ip) |
-T | ملف يحتوي على عدة عناوين URL مستهدفة |
--proxy | توجيه الحركة عبر بروكسي (مثل http://127.0.0.1:8080) |
مرحلة ما بعد الاستغلال: بعد نجاح الاستغلال، يقوم السكربت بإخراج رابط الويبشيل (مثل https://target-ip/webshell.php). يمكن إرسال الأوامر إلى الويبشيل عبر رأس User-Agent باستخدام أدوات مثل curl أو متصفح.
python3 cve_2025_25257.py -t https://192.168.1.100 --proxy http://127.0.0.1:8080
الإخراج: في حالة النجاح، سيعرض السكربت ما يلي:
[+] Webshell deployed at: https://192.168.1.100/webshell.php
[+] Send commands via User-Agent header, e.g., `curl -A "whoami" https://192.168.1.100/webshell.php`
CVE‑2025‑25257 هي ثغرة شديدة الخطورة وسهلة الاستغلال في FortiWeb، تمكن المهاجمين غير المصادق عليهم من السيطرة الكاملة على النظام. التحديث الفوري أمر بالغ الأهمية، ويجب على المؤسسات مراقبة أي علامات استغلال.
المساعدات البصرية: يتم عرض مخطط Mermaid أعلاه أصلاً على GitHub. يوفر ملف exploit_workflow.svg الثابت (المضمن في المستودع) نفس سير العمل للعرض دون اتصال أو في العروض التقديمية، مع رسومات متجهة قابلة للتوسع (SVG) لعرض عالي الجودة.