- 环境搭建
1. 实验环境拓扑如下:
2. 下载好镜像文件,下载地址: http://vulnstack.qiyuanxuetang.net/vuln/detail/3/ (23G,需要百度网盘会员)
3. 跟靶场一中的环境类似需要模拟内网和外网两个网段, PC端虚拟机相当于网关服务器,所以需要两张网卡,一个用来向外网提供web服务,一个是通向内网
这里需要将新增的网卡VMnet2,ip调成了10段
PC配置如下:
DC在该环境中充当是域控。DC配置如下 :
WEB配置:需要两块网卡,相当于网关服务器。
4. 网络配置完成,这三台虚拟主机默认开机密码都是:密码1qaz@WSX
注意WEB的这台服务器,切换用户 de1ay或者管理员用户administrator,密码也是1qaz@WSX
特别注意登录web服务器的时候,切换用户为de1ay,密码是1qaz@WSX
如果要登录管理员账号,用户名是DE1AY\Administrator 1qaz@WSX
注意:作者把外网网段都写成了192.168.111.1/24,所以我们可以把我们的NAT修改成111段的,还可以就进到选择了NAT网段的服务器中(WEB和PC),把第一块网卡的IP从111改成自己的NAT网段,我的是44,修改网络需要输入管理员administrator/1qaz@WSX。
5.我们把web服务器ip地址修改为192.168.44.80,把pc服务器ip地址修改为192.168.44.201
6. 登录分别查看三台虚拟机的ip地址如下:
PC(域成员):(内:10.10.10.201 / 外:192.168.44.201)
DC(域控):(内:10.10.10.10)
WEB:(内:10.10.10.80/ 外:192.168.44.80)(根据你的物理机改变)
7.我们在web中,打开
C:\Oracle\Middleware\user_projects\domains\base_domain\bin 路径
使用管理员才能进去administrator/1qaz@WSX
注意!!!分别右键,以管理员权限执行setDomainENV、startManageWeblogic、startWeblogic 环境配置到此结束
二.Web渗透
1. 信息收集
(1)我们使用nmap进行扫描
(2)扫描详细信息: nmap -T4 -A 192.168.44.80 -p 1-65535 -oN nmap.A
发现开启了80端口(http服务)、445端口(SMB服务)、1433端口(MSSQL)、3306端口(mysql服务)、7001端口(weblogic)
2.目录扫描
(1)访问80端口,一片空白
(2)访问7001端口是weblogic服务
目录扫描也没有任何东西
(3) 因为是weblogic的站,直接上工具,项目地址:https://github.com/rabbitmask/WeblogicScan
发现两个路径和一个JAVA反序列化(CVE-2019-2725),一个weblogic wls-wsat组件远程命令执行(CVE-2017-3506):
3.漏洞利用
(1) 利用CVE-2019-2725
反序列化漏洞,漏洞是由wls9-async
组件导致的,该组件默认开启,访问http://192.168.44.80:7001/_async/AsyncResponseService看一下是否存在该漏洞:
(2) 直接上工具验证一下:
(3) 上传webshell
(4) 冰蝎连接
上传大马上线CS,发现无法执行:
上帝视角查看是被360拦截了:
没有权限关闭360进程(后来查到通过cmd是无法关闭360的),做了个静态免杀马,还是会被动态查杀,需要搞动态免杀,添加用户也会被360拦截,冰蝎反弹的shell好多命令又不能执行:
(5) 直接放弃了,在服务器放行了大马上线CS,用ms15-05提权(这里我们使用cs,红日1已经讲过了,所以这里我们直接进行提权)
(6) 我们知道存在CVE-2019-2725的漏洞,可以通过多种方式进行利用,我们使用msf(步骤和红日1里面的一样,只是改变一下攻击模块)
三.内网信息收集
1.主机信息收集
查看当前权限、账号信息:whoami /all
查看网络配置信息:ipconfig /all
查询操作系统及安装软件的版本信息:systeminfo | findstr /B /C:"OS 名称" /C:"OS 版本"
查询本机服务信息:wmic service list brief
查看计划任务:schtasks /query /fo LIST /v
查看主机开机时间:net statistics workstation
查询用户列表、获取本地管理员信息、查看当前在线用户:
net user
net localgroup administrators
query user || qwinsta
列出或断开本地计算机和连接的客户端的会话:net session
查询端口列表:netstat -ano
查询补丁列表:systeminfo
wmic qfe get Caption,Description,HotFixID,InstalledOn
查询本机共享:net share wmic share get name,path,status
查询路由表及所有可用接口的 ARP 缓存表route print Arp –A
查询防火墙相关配置:netsh firewall show config
2.域信息收集
(1) 查看是否有域,以及当前域:shell net config workstation
(2) 查询域内用户: net user /domain
(3) 查看域控:net group "domain controllers" /domain
(4)hashdump
(5) 再用mimikatz抓一下密码,得到管理员登录密码为123qwe.:
(6) 之前的信息收集到3389开放,之后就可以远程登录了。
3.内网漏洞扫描
(1) 查看内网主机,这里使用arp -a查看:
(2) 查看10.10.10.10主机端口开放情况,并发现是DC主机:
10.10.10.1 445端口开放
四.横向渗透
1.MS17-010
利用漏洞渗透10主机,均利用失败:
ms17-010-command模块也无法执行命令:
2.Psexec传递
(1)使用现在这台主机中转一个监听器,利用psexec横向移动至DC:
(2)域控成功上线:
(3)用arp端口扫描,成功发现PC主机:
3.远程登录
(1)使用代理远程登录上传木马并关闭防火墙:
(2) 运行木马,PC主机成功上线
(3)至此所有主机均已经上线,最终的枢纽图:
五.权限维持
1. 域控信息收集
2. 然后用用mimikatz找到一个合法的sid:
3. 黄金票据
黄金票据可以在拥有普通域用户权限和KRBTGT账号的哈希的情况下用来获取域管理员权限,上面已经获得域控的 system 权限了,还可以使用黄金票据做权限维持,当域控权限掉后,再通过域内其他任意机器伪造票据重新获取最高权限
六. 痕迹清理
1.有远程桌面权限时手动删除日志:
开始-程序-管理工具-计算机管理-系统工具-事件查看器-清除日志
2.wevtutil:
wevtutil el 列出系统中所有日志名称
wevtutil cl system 清理系统日志
wevtutil cl application 清理应用程序日志
wevtutil cl security 清理安全日志
3.meterperter自带清除日志功能:
clearev 清除windows中的应用程序日志、系统日志、安全日志
4.清除recent:
在文件资源管理器中点击“查看”->“选项”->在常规->隐私中点击”清除”按钮或直接打开C:\Users\Administrator\Recent并删除所有内容或在命令行中输入del /f /s /q “%userprofile%\Recent*.*
七.总结
整体流程如下:
信息收集 => weblogic漏洞利用 => 冰蝎连接上传大马 =>WEB主机上线CS => 内网信息收集 => MS17_010利用 => PTH => DC主机上线 => 挂代理3389登录PC主机 => 上传木马 => PC主机上线 => 构造黄金票据维权 => 痕迹清理