
यह स्क्रिप्ट iconv लाइब्रेरी में फ़ाइल रीड भेद्यता का शोषण करने के लिए एक प्रूफ-ऑफ-कॉन्सेप्ट (PoC) प्रदर्शित करती है, जैसा कि Ambionics Security के ब्लॉग https://www.ambionics.io/blog/iconv-cve-2024-2961-p1 में विस्तृत रूप से बताया गया है।
यह स्क्रिप्ट उन सिस्टम में एक कमज़ोरी का फ़ायदा उठाने का तरीका प्रदर्शित करती है जो iconv लाइब्रेरी का उपयोग करते हैं, जब वह कैरेक्टर एन्कोडिंग रूपांतरणों को गलत तरीके से संभालती है, जैसा कि CVE-2024-2961 में वर्णित है। यह कमज़ोरी हमलावर को PHP फ़िल्टर चेन और दोषपूर्ण एन्कोडिंग हैंडलिंग का लाभ उठाकर सर्वर से मनमानी फ़ाइलें पढ़ने की अनुमति देती है।
यह स्क्रिप्ट एक तैयार पेलोड को अपलोड करने, परिणामी फ़ाइल को प्राप्त करने और उसकी सामग्री प्रदर्शित करने की प्रक्रिया को स्वचालित करती है। यह लेख में विस्तृत शोध पर आधारित है: Iconv CVE-2024-2961: कैरेक्टर एन्कोडिंग रूपांतरणों का शोषण।
स्क्रिप्ट निम्नलिखित चरणों का पालन करती है:
पेलोड निर्माण
यह एक PHP फ़िल्टर चेन पेलोड बनाती है जो सर्वर पर किसी भी फ़ाइल को पढ़ने के लिए iconv एन्कोडिंग रूपांतरणों का लाभ उठाती है। यह पेलोड सामान्य प्रतिबंधों को बायपास करने के लिए डिज़ाइन किया गया है, जिससे /etc/passwd या अन्य संवेदनशील फ़ाइलों तक पहुँच संभव होती है।
फ़ाइल अपलोड
यह लक्षित सर्वर के admin-ajax.php एंडपॉइंट पर एक POST अनुरोध भेजती है, जो एक इमेज अपलोड की नकल करता है। पेलोड अनुरोध के भीतर छिपा होता है ताकि सर्वर इसे एक वैध फ़ाइल की तरह संसाधित करे।
फ़ाइल डाउनलोड
पेलोड अपलोड करने के बाद, स्क्रिप्ट उस फ़ाइल को डाउनलोड करती है जिसमें अब लक्षित फ़ाइल की सामग्री होती है। अंत में, यह इन सामग्रियों को निकालकर प्रदर्शित करती है।
requests लाइब्रेरी (इसे pip install requests से इंस्टॉल करें)iconv और PHP का एक प्रभावित संस्करण चला रहा हो।रिपॉज़िटरी क्लोन करें या स्क्रिप्ट डाउनलोड करें:
git clone https://github.com/kyotozx/CVE-2024-2961-Remote-File-Read.git
cd CVE-2024-2961-Remote-File-Read
स्क्रिप्ट चलाएँ:
python3 lfi.py
प्रॉम्प्ट का पालन करें:
/etc/passwd)।1)।स्क्रिप्ट क्या करती है:
Remote File Read Exploitation - CVE-2024-2961
Enter the path of the file you want to read (e.g., /etc/passwd): /etc/passwd
Enter a numeric ID for the upload (e.g., 1): 1
File uploaded successfully: http://blog.bigbang.htb/wp-content/uploads/2025/01/1-50.png
File content:
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
...
यह स्क्रिप्ट केवल शैक्षिक और अधिकृत परीक्षण उद्देश्यों के लिए है। बिना स्पष्ट अनुमति के इसका उपयोग सिस्टम पर न करें।