ActiveMQ 中的 FileServer 服务允许用户通过 HTTP PUT 方法上传文件到指定目录所以抓包伪造一个fileserver路径即可。
发现可以爆出绝对路径。
两种利用姿势:
一、上传Webshell方式
先PUT一个构造的JSP的Webshell 2.jsp到fileserver/2.jsp
查看上传成功
尝试执行命令:发现无执行权限:
填写一个错误目录爆出绝对路径:
然后利用 MOVE 方法将 Webshell 移入 admin/ 目录(也可以利用相对路径):
访问IP/admin/2.jsp?cmd=ls
二、上传SSH公钥
既然可以任意文件上传和移动,很自然的可以想到上传我们的 ssh 公钥,从而实现 SSH 方式登录。
首先生成密钥对。(如果已存在则不需要)
ssh-keygen -t rsa
复制内容上传到fileserver
移动到/root/.ssh/并重命名为authorized_keys
ssh登录完成