
CVE-2023-46604 (Apache ActiveMQ RCE भेद्यता) और समझौता संकेतक (Indicators of Compromise) प्राप्त करने पर केंद्रित।
यह होनीपॉट CVE-2023-46604 (Apache ActiveMQ RCE Vulnerability) को कवर करता है और समझौते के संकेतक (Indicators of Compromise) प्राप्त करने पर केंद्रित है। इस होनीपॉट का उपयोग किसी भी थ्रेट इंटेलिजेंस इंफ्रास्ट्रक्चर में हमलावर के IP पते, पोस्ट-एक्सप्लॉइटेशन सैंपल और मैलवेयर सैंपल प्राप्त करने के लिए किया जा सकता है। यह जानकारी भविष्य में हमलों का पता लगाने और उन्हें रोकने में सहायक हो सकती है।
वास्तविक मामले में हमलावर Apache ActiveMQ सेवा को एक विशेष पैकेट भेजता है। इस पैकेट में ExceptionResponse होता है जिसमें क्लास org.springframework.context.support.ClassPathXmlApplicationContext और मैसेज होता है जिसमें XML पेलोड URL होता है।
![]() |
|---|
| हमला उदाहरण |
दूसरे चरण में, कमजोर सेवा XML पेलोड डाउनलोड करती है जिसमें आमतौर पर RCE कमांड होता है।
![]() |
|---|
| XML पेलोड उदाहरण |
यह होनीपॉट कमजोर Apache ActiveMQ सेवा का अनुकरण करता है और हमलावर के IP पते, XML पेलोड URL और XML पेलोड से RCE कमांड निकालता है। फिर इस जानकारी को JSON से पार्स किया जा सकता है।
होनीपॉट लॉग को Service.toml में निर्दिष्ट logfile पथ द्वारा जाँचा जा सकता है।
![]() |
|---|
| होनीपॉट लॉग |
होनीपॉट पार्स करने योग्य संकेतकों के साथ JSON आउटपुट भी बनाता है। आप Service.toml में outfile का पथ निर्दिष्ट कर सकते हैं।
![]() |
|---|
| JSON आउटपुट |
होनीपॉट को आपके अपने सर्वर (उदाहरण के लिए VPS या VDS) पर डॉकर वैरिएंट में तैनात किया जा सकता है।
सेवा कॉन्फ़िगरेशन फ़ाइल Service.toml को आप अपने अनुसार बदल सकते हैं:
service_ip = "0.0.0.0" # listen ip address
service_port = 61616 # port (default for Apache ActiveMQ 61616)
logfile = "logs/service.log" # main log file
outfile = "logs/out.json" # output json for parsing
api_enabled = false # enabled or disable api for downloading honeypot results (true/false)
api_ip = "0.0.0.0" # listen ip address for api
api_port = 9123 # port for api
api_user = "user" # user for api auth
api_password = "" # password for api auth
यदि आप out.json तक पहुँच चाहते हैं तो आप api सक्षम कर सकते हैं। परिणाम curl का उपयोग करके डाउनलोड किए जा सकते हैं:
curl -X POST http://<api_ip>:<api_port>/ --data 'username=<api_user>&password=<api_password>'
git clone https://github.com/mranv/honeypot.rs -b main
cd activemq-honeypot
docker compose up --build -d
आपको मूल Apache ActiveMQ को भी अक्षम कर देना चाहिए (यदि मौजूद है) और सुनिश्चित करना चाहिए कि कॉन्फ़िगर किया गया पोर्ट किसी अन्य प्रक्रिया द्वारा उपयोग नहीं किया जा रहा है। सेवा बनाने में कुछ समय लग सकता है।
आप main.rs में LevelFilter को Debug में बदल सकते हैं और अधिक उपयोगी डीबग जानकारी प्राप्त कर सकते हैं।
![]() |
|---|
| Debug LevelFilter |