
يصف هذا المستودع الثغرة cve-2021-29447 وسكريبت صغير لاستغلالها تلقائياً.
يشرح هذا المستودع ثغرة CVE-2021-29447، وهي ثغرة أمنية حرجة في ووردبريس سمحت بهجمات XML External Entity (XXE) الموثقة عبر مكتبة الوسائط. كما يوفر سكريبتًا آليًا يوضح إثبات المفهوم (PoC).
كانت الثغرة موجودة في معالجة ووردبريس للبيانات الوصفية داخل ملفات الصوت المرفوعة. على وجه التحديد:
السبب الجذري: يستخدم ووردبريس مكتبة getID3 لتحليل البيانات الوصفية من ملفات الوسائط مثل ملفات WAV. يمكن أن يحتوي ملف WAV على جزء من بيانات XML يُسمى iXML. يمكن للمهاجمين إنشاء ملف WAV ضار بمحتوى XML يؤدي، عند تحليله بواسطة المكتبة المعرضة للخطر، إلى هجوم XXE.
الإصدارات المتأثرة: إصدارات ووردبريس 5.6 إلى 5.7.
المطلب الأساسي: يجب أن يعمل تثبيت ووردبريس على PHP 8، حيث كانت التغييرات في تكوين Libxml2 الافتراضي في PHP 8 أساسية للاستغلال.
التأثير: يمكن أن يؤدي الاستغلال الناجح إلى الكشف عن ملفات عشوائية (مثل قراءة wp-config.php للحصول على بيانات اعتماد قاعدة البيانات) وتزوير الطلبات من جانب الخادم (SSRF).
فيما يلي مقتطف الكود الذي يحاول تحليل بيانات XML في الجزء الفرعي iXML:
يقوم بأتمتة العملية بأكملها: إنشاء ملف WAV الضار وملف DTD، ومعالجة رفع الملف إلى موقع ووردبريس الهدف، وإعداد مستمع لاستقبال البيانات المسربة.
قابل للتكوين: يسمح لك بتحديد مسار الملف الهدف للتسريب.
./payload.sh