أداة كشف وتحقق من تعرّض نواة ووردبريس لـ wp2shell
(CVE-2026-63030 / CVE-2026-60137). يتم اختيار الوضع عبر إحدى العلامات، ويكون الهدف موضعيًا. يقوم --scan بأخذ بصمة إصدار النواة والتأكد من أن مسار REST /batch/v1 قابل للوصول دون إرسال حمولة استغلال؛ بينما تُعد أوضاع --check/--read/--shell/--rce/--root-prereq بمثابة إثبات مفهوم (PoC) للتحقق للاستخدام المخبري المصرح به.
wp2shell.py هو سكربت واحد يعتمد على المكتبة القياسية فقط — لا تبعيات خارجية. كل استدعاء يطبع شعار ZephrSec إلى stderr قبل تشغيله (ويبقى بعيدًا عن stdout، لذا لا يتأثر مخرَج JSON الخاص بـ --scan -j).
علامات الأوامر
مطلوب علامة وضع واحدة بالضبط؛ والهدف موضعي (عنوان URL لكل وضع، أو قائمة مضيفين لـ --scan).
ترسل أوضاع --check/--read/--shell/--rce/--root-prereq حمولات استغلال
حية. شغّلها فقط ضد المختبر المحلي المرفق، أو أنظمة أخرى تملكها ومصرح لك
باختبارها صراحةً. ينفّذ --shell و--rce تنفيذ أوامر عن بُعد وهما مخصصان
للمختبر/الأهداف المصرح بها؛ ويتطلب --rce على مضيف غير loopback استخدام
--authorized. يستخدم --root-prereq إضافة التشخيص نفسها المحمية برمز مميز
للتحقق من متطلبات الانتقال إلى الجذر، لكنه لا يشغّل تصعيد صلاحيات محلي.
يحتاج --shell إلى كلمة مرور مسؤول مستعادة/مكسورة. أما --rce فهو سلسلة
قبل المصادقة بدون بيانات اعتماد: يزوّر مسؤولًا خاصًا به عبر حقن SQL
(oEmbed → changeset → إعادة الدخول إلى parse_request)، ثم ينشر قشرة الويب —
بدون الحاجة إلى كلمة مرور.
تطلب --shell و--rce و--root-prereq تفويضًا تفاعليًا y/N قبل إرسال أي
حمولة لتنفيذ الأوامر (وتتوقف عند stdin غير تفاعلي/EOF). مرر -y/--yes لتخطي
الموجه للأتمتة ضد المختبر أو هدف مصرح به.
فروقات التصحيحات (patch diffs) المستخدمة كأساس لإثبات المفهوم محفوظة تحت
poc/diffs/، مع ملاحظات بحثية في poc/RESEARCH.md. يمكن إعادة بناء حقن SQL
بالكامل من إصلاح author__not_in. تعيد سلسلة --rce بدون بيانات اعتماد
(oEmbed → changeset → إعادة دخول → إنشاء مسؤول) إنتاج ثغرة RCE الافتراضية
القياسية ضد المختبر المرفق؛ أما --shell فهو المسار البديل عبر بيانات اعتماد
مسؤول مستعادة/مكسورة لرفع إضافة مصادق عليها وتنفيذ الأوامر.