
استغلال لثغرة CVE-2022-1329 في ووردبريس Elementor 3.6.0-3.6.2 يتيح تنفيذ التعليمات البرمجية عن بُعد للمصادق عليهم عبر رفع ملف ZIP خبيث يحتوي على حمولة PHP.
التاريخ: 16 أبريل 2023
مؤلف الاستغلال: Việt Hùng (https://github.com/phanthibichtram12)
الصفحة الرئيسية للمورّد: https://elementor.com/
رابط البرنامج: https://wordpress.org/plugins/elementor/advanced/ (مرر لأسفل واختر الإصدار)
الإصدار: 3.6.0, 3.6.1, 3.62
تم اختباره على: WordPress 5.9.3 (مستقل عن نظام التشغيل لأن هذا الاستغلال لا يوفّر حمولة)
CVE : CVE-2022-1329
يحتوي إضافة WordPress المسماة Elementor (الإصدارات 3.6.0, 3.6.1, 3.6.2) على ثغرة تسمح لأي مستخدم مصادَق برفع وتنفيذ أي ملف PHP.
هذه الثغرة، ضمن OWASP TOP 10 2021، تأتي في المركز الأول (التحكم في الوصول المعطّل)
الملف الذي يحتوي هذه الثغرة هو elementor/core/app/modules/onboarding/module.php
في نهاية هذا الملف، يمكنك العثور على هذا الكود:
add_action( 'admin_init', function() {
if ( wp_doing_ajax() &&
isset( $_POST['action'] ) &&
isset( $_POST['_nonce'] ) &&
wp_verify_nonce( $_POST['_nonce'], Ajax::NONCE_KEY )
) {
$this->maybe_handle_ajax();
}
} );
يتم تفعيل هذا الكود كلما وصل أي حساب مستخدم إلى /wp-admin لكي يعمل نحتاج إلى الأشياء الأربعة التالية:
يجب أن يتبع الملف الذي نرفعه البنية التالية:
سيكون هذا الملف هو الحمولة الخاصة بك (مثل PHP Reverse Shell أو أي شيء آخر) تحذير: الإضافة المزيّفة التي نرفعها سيتم تفعيلها بواسطة Elementor، مما يعني أنه في كل مرة نزور أي صفحة، سنقوم بتفعيل حمولتنا. مثال: إذا حاولت الاتصال بخادم غير متصل، فقد يؤدي ذلك إلى رفض الخدمة. لمنع ذلك، أنصحك باستخدام بعض المتغيرات لتفعيل الحمولة. شيء من هذا القبيل (قم بزيارة Anypage.php?activate=1 للمتابعة مع الحمولة الفعلية):
if (!isset($_GET['activate']))
return;