
CVE-2025-20260 के लिए Python-आधारित एक्सप्लॉइट जो एक दुर्भावनापूर्ण PDF फ़ाइल उत्पन्न करता है और भेद्यता सत्यापन के लिए कोर डंप विश्लेषण क्षमताएँ शामिल करता है।
CVE-2025-20260 (CVSS 3.1 आधार स्कोर 9.8, क्रिटिकल) के लिए पहला सार्वजनिक प्रूफ़-ऑफ़-कॉन्सेप्ट, जो ClamAV के PDF स्कैनिंग पथ में एक बफ़र-ओवरफ़्लो भेद्यता है। इस रिपॉज़िटरी में उस दुर्भावनापूर्ण PDF के लिए एक जनरेटर है जो इस दोष को ट्रिगर करता है, साथ ही क्रैश का दस्तावेज़ीकरण करने वाला एक कोर-डंप विश्लेषण भी है।
यह PoC भेद्यता के पैच होने और Cisco/ClamAV द्वारा समन्वित-प्रकटीकरण के बाद विकसित और प्रकाशित किया गया था। यह रक्षात्मक अनुसंधान, डिटेक्शन इंजीनियरिंग और शिक्षा के लिए प्रदान किया गया है। इसे उन सिस्टमों के विरुद्ध न चलाएँ जिनके आप स्वामी नहीं हैं या जिनका परीक्षण करने की आपके पास स्पष्ट अनुमति नहीं है।
NVD रिकॉर्ड और Cisco सलाह के अनुसार:
ClamAV की PDF स्कैनिंग प्रक्रियाओं में एक भेद्यता एक अप्रमाणित, दूरस्थ हमलावर को बफ़र ओवरफ़्लो स्थिति उत्पन्न करने, सेवा-अस्वीकृति (DoS) स्थिति उत्पन्न करने, या प्रभावित डिवाइस पर मनमाना कोड निष्पादित करने की अनुमति दे सकती है। यह भेद्यता इसलिए मौजूद है क्योंकि PDF फ़ाइलों को संसाधित करते समय मेमोरी बफ़र गलत तरीके से आवंटित किए जाते हैं।
ClamAV का PDF पार्सर डिकोड किए गए डेटा के लिए आवंटित बफ़र का आकार निर्धारित करने के लिए स्ट्रीम ऑब्जेक्ट के /Length फ़ील्ड को पढ़ता है। clamshank.py एक ऐसी PDF तैयार करता है जिसका एकल ऑब्जेक्ट एक अत्यधिक बड़ी, विकृत लंबाई घोषित करता है और एक ASCII85Decode स्ट्रीम रखता है जो uint32_MAX / 4 बाइट्स से थोड़ी अधिक लंबी है:
1 0 obj
<< /Length 1073741824 444444444444 /Filter /ASCII85Decode >>
stream
... (~1,073,741,825 bytes of ASCII85 data) ...
जब ClamAV फ़ाइल को स्कैन करता है, तो गलत लंबाई अंकगणित के कारण गलत आकार का बफ़र आवंटन होता है और उसके बाद का डिकोड उसे ओवरफ़्लो कर देता है, जिससे स्कैनिंग प्रक्रिया क्रैश हो जाती है (DoS), साथ ही ClamAV प्रक्रिया के संदर्भ में कोड निष्पादन की संभावना बनी रहती है।
| फ़ाइल | विवरण |
|---|---|
clamshank.py | clam-cve.pdf उत्पन्न करता है, वह दुर्भावनापूर्ण PDF जो ओवरफ़्लो को ट्रिगर करता है। |
HOS Core dump analysis for CVE-2025-20260.pdf | क्रैश का कोर-डंप विश्लेषण, जो दोष के समय ओवरफ़्लो का दस्तावेज़ीकरण करता है। |
python3 clamshank.py # writes clam-cve.pdf
clamscan clam-cve.pdf # against a vulnerable ClamAV build, in an isolated VM
केवल उस ClamAV इंस्टेंस के विरुद्ध चलाएँ जिसे आप नियंत्रित करते हैं, एक डिस्पोज़ेबल/पृथक वातावरण में। उत्पन्न फ़ाइल डिज़ाइन के अनुसार लगभग 1 GB की है।
पैच किए गए ClamAV रिलीज़ में अपग्रेड करें (ठीक किए गए संस्करणों के लिए Cisco सलाह देखें)। अपैच किए गए बिल्ड्स पर अविश्वसनीय इनपुट की PDF स्कैनिंग को उजागर न करें।
केवल अधिकृत सुरक्षा अनुसंधान और शिक्षा के लिए। लेखक दुरुपयोग के लिए उत्तरदायी नहीं है।