
wp2shell — poc لسلسلة استغلال RCE قبل المصادقة في نواة ووردبريس لثغرات CVE-2026-63030 وCVE-2026-60137
إذا كنت تقدر عملي، فكّر في دعم المشروع عبر USDT (TRC20): TQBA72kakjCZLnJt8fJYcD7dyQCEpzNtVN
wp2shell هو إثبات مفهوم (PoC) للبحث الأمني يوضّح سلسلة ثغرات قبل المصادقة في نواة WordPress تجمع بين:
WP_Queryتوضح السلسلة كيف يمكن دمج هذه الثغرات للانتقال من طلب REST API غير مُصادَق إلى حقن SQL، وتصعيد الامتيازات، وإنشاء حساب مسؤول، وفي النهاية تنفيذ تعليمات برمجية عن بُعد بعد المصادقة.
[!WARNING]
أبحاث أمنية مُصرَّح بها فقط
هذا المشروع مخصص لـ:
- أبحاث الثغرات
- التحقق الدفاعي
- اختبار الاختراق المُصرَّح به
- المختبرات الأمنية
- مسابقات CTF والبيئات التعليمية
اختبر فقط الأنظمة التي تملكها أو لديك تفويض كتابي صريح لتقييمها.
لا تستخدم هذا المشروع ضد بنية تحتية تابعة لجهات خارجية دون تصريح.
wp2shell هو أداة بحث أمني موحّدة لنواة WordPress للتحقيق في التفاعل بين ثغرتين:```text
CVE-2026-63030
|
v
REST API Batch Route Confusion
|
v
Validation / Dispatch Confusion
|
v
CVE-2026-60137
|
v
WP_Query SQL Injection
|
v
Blind SQL Access
|
v
Application / Object-State Manipulation
|
v
Privilege Escalation
|
v
Administrator Account Creation
|
v
Authenticated Code Execution
تم تنفيذ PoC كأداة بحثية بلغة Python وتستخدم مكتبة Python
القياسية دون الحاجة إلى حزم Python تابعة لجهات خارجية.
---
# سلسلة الثغرات
يجمع المشروع بين ثغرتين أساسيتين في WordPress.```text
Unauthenticated Request
|
v
+----------------------+
| CVE-2026-63030 |
| REST Batch Route |
| Confusion |
+----------+-----------+
|
v
Validation Confusion
|
v
+----------------------+
| CVE-2026-60137 |
| WP_Query SQLi |
+----------+-----------+
|
v
Blind SQLi
|
v
Application-State Abuse
|
v
Privilege Escalation
|
v
Administrator Access
|
v
Authenticated RCE
```
الخاصية الأمنية المهمة هي التفاعل بين الثغرتين بدلاً من النظر إلى
كل ثغرة على حدة.
---
# CVE-2026-63030
## التباس توجيه الدفعات في REST API
تؤثر الثغرة الأولى على معالجة الطلبات الواردة عبر نقطة نهاية
الدفعات (Batch) في REST API الخاصة بـ WordPress.
يحتفظ تنفيذ الدفعات بمعلومات مطابقة الطلبات والتحقق من صحتها في بنى
متوازية مفهرسة حسب موضع الطلب.
يمكن لطلب فرعي مشوّه أن يتسبب في اختلال
تزامن هذه البنى.
يؤدي ذلك إلى نشوء حالة إرسال من نوع off-by-one، إذ يمكن معالجة طلب
لاحق باستخدام معالج أو سياق تحقق مرتبط
بطلب آخر.
مفهوميًا:```text
Request A
|
+-- validation entry
+-- matching entry
|
v
Malformed request
|
+-- internal state becomes desynchronized
|
v
Request B
|
+-- unexpected handler / validation context
```
يقوم إثبات المفهوم (PoC) بإجراء فحوصات سلوكية لتحديد ما إذا كان ارتباك المسار
قابلًا للوصول فعليًا.
---
# CVE-2026-60137
## حقن SQL في WP_Query
تؤثر الثغرة الثانية على مسار معالجة SQL في `WP_Query`.
بمجرد إنشاء أولية ارتباك المسار، يمكن للمدخلات التي يتحكم فيها المهاجم
الوصول إلى مسار الاستعلام المعرض للخطر.
يوضح إثبات المفهوم (PoC) حقن SQL الناتج من خلال الاختبار التفاضلي
الأعمى.
تتضمن وظيفة البحث ما يلي:
* تأكيد أعمى منطقي (Boolean-blind)
* تأكيد اختياري قائم على الوقت
* بصمة قاعدة البيانات
* استخراج القيم العددية المدعومة
* البحث في بيانات مستخدمي ووردبريس
---
# كيف تعمل السلسلة
## 1. ارتباك مسار REST Batch
يصل طلب غير مصادق إلى نقطة نهاية REST Batch في ووردبريس.
يتسبب طلب فرعي دفعي غير صالح في جعل حالة مطابقة الطلب والتحقق الداخلي
غير متزامنة.
وبالتالي يمكن معالجة طلب لاحق باستخدام سياق
غير مقصود.
---
## 2. حقن SQL
توفر أولية ارتباك المسار المسار اللازم للثغرة
الثانية.
يمكن أن تصل قيمة يتحكم فيها المهاجم إلى مسار المعالجة المعرض للخطر في
`WP_Query`.
يؤدي ذلك إلى إنشاء أولية حقن SQL أعمى.
---
## 3. استخراج SQL الأعمى
يمكن استخدام حقن SQL كقناة استخراج أعمى منطقي.
يحتوي إثبات المفهوم على وظيفة للبحث في معلومات قاعدة البيانات و
معلومات مستخدمي ووردبريس المدعومة.
---
## 4. التلاعب بحالة التطبيق
تستخدم السلسلة النتائج المتحكم فيها من قاعدة البيانات للتأثير على
كائنات تطبيق ووردبريس والمعالجة اللاحقة.
يوفر ذلك الأوليات اللازمة لمرحلة تصعيد الامتيازات.
---
## 5. تصعيد Changeset
تستخدم السلسلة معالجة changeset في ووردبريس لإنشاء
سياق تنفيذ بصلاحيات المسؤول.
يمكن لكائن `customize_changeset` مُصنّع المشاركة في
تسلسل تصعيد الامتيازات.
---
## 6. إعادة الدخول عبر Hook
تعيد السلسلة الدخول إلى معالجة طلبات ووردبريس من خلال
دورة حياة طلب التطبيق.
يسمح ذلك بمعالجة API لاحقة ضمن
السياق المرتفع الصلاحيات.
---
## 7. إنشاء حساب المسؤول
ينفّذ إثبات المفهوم البحثي مرحلة إنشاء مسؤول
قبل المصادقة.
هذا هو السبب الرئيسي لكون الوضع 3 مفيدًا للتحقق الأمني:
فهو يوضح تأثير تصعيد الامتيازات دون الاستمرار إلى
مرحلة webshell/RCE.
---
## 8. تنفيذ الكود بعد المصادقة
يوسّع الوضع 4 سلسلة البحث إلى ما بعد إنشاء المسؤول ليصل إلى
مرحلة تنفيذ الكود بعد المصادقة.
يجب استخدام هذه المرحلة فقط في مختبر معزول أو في تقييم
مصرّح به صراحةً.
---
# الإصدارات المتأثرة
## سلسلة ما قبل المصادقة الكاملة
| WordPress Version | Status |
| ----------------- | -------------- |
| 6.9.0 – 6.9.4 | **متأثر** |
| 7.0.0 – 7.0.1 | **متأثر** |
| 6.9.5 | **مُصلَح** |
| 7.0.2+ | **مُصلَح** |
يحدد إثبات المفهوم `6.9.0–6.9.4` و`7.0.0–7.0.1` كإصدارات السلسلة الكاملة
الضعيفة الموثقة.
## حقن SQL
لمكوّن حقن SQL حدًا مختلفًا للإصدار المُصلَح مقارنةً
بالسلسلة الكاملة.
يحدد التنفيذ البحثي `6.8.6` كإصلاح حقن SQL.
تعتمد السلسلة الكاملة غير المصادق عليها أيضًا على
سلوك REST Batch الضعيف.
تحقق دائمًا من الإصدارات المتأثرة والمُصلَحة وفقًا للنشرة الأمنية الرسمية
ذات الصلة قبل اتخاذ قرارات الإنتاج.
---
# الشروط المسبقة
يوثق إثبات المفهوم هذه الشروط للسلسلة الكاملة:
```