
参考文章
1 | https://www.cnblogs.com/bktown/p/16904232.html |
网络拓扑图

1qaz@WSX
# 环境搭建
解压后找文件内的 vmx 后缀文件,会自动打开虚拟机加载, PC 为网关服务器,需要两张网卡,一个用来向外网提供 web 服务,一个是通向内网机器,通向外网所以需要再建立一个网卡,保证 PC 和 kali 同一个网段,靶机 Web 和 PC 均是双网卡, WEB 登陆时切换用户为: WEB\de1ay 密码: 1qaz@WSX 才能进入,初始无法进入

# 网卡设置
新增网卡修改子网 IP VMnet2 相当于新增内网网段,提供给靶场使用,在网络适配器加入
1 | 10.10.10.0 |

DC 域控提供单独的 10 网段就行了,需要出网机器是两个网络适配器,出网 or 不出网,靶机默认开机密码都是 1qaz@WSX 需要注意的是, Web 需要切换用户进去登录输入密码才可以


# 修改 Kali 网段
靶机
WEBPC出网网段默认是111我们可以修改Kali网卡网段为111, 使其和两台出网靶机网段一直,这是最方便的方式,也可以不修改原始Kali网段,登录进靶机后在网络适配器修改网段为我们Kali


修改 Kali 网段,发现它是 VMnet8 自定义,打开虚拟网络编辑器,手动修改此网卡为 111 网段

修改成功 Kali 网卡网段,打开它然后测试 IP 地址并对该网段主机进行扫描看看是否能发现 WEB 和 PC

1 | ifconfig |

网段扫描是可以成功扫出,说明攻击机 Kali 和靶机已经在同一网段下
1 | arp-scan -l |

# IP 分布
| 主机 | IP 地址 |
|---|---|
| kali 攻击机 | 192.168.111.128 |
| PC | 外网 IP 192.168.111.201 / 内网 IP 10.10.10.201 |
| WEB | 外网 IP 192.168.111.80 / 内网 IP 10.10.10.80 |
| DC 域控 | 内网 IP 10.10.10.10 |
Kali
网段扫描出 PC 机器,但是没有 WEB ( PC ping 不通猜测被拦截或者不出网)


PC

WEB

DC

# WEB 渗透
这里我首先使用
nmap扫描该网段主机,但是发现WEB一度扫描不到,排查一番才发现因为网络适配器设置错误,导致不出网络,修改后即可出网.
PC WEB 适配器均此设置, NET 自动获取 IP , 代表同 Kali 同一网段, VMnet2 自定义内网网段 10 , 但是这里其实 Kali 是手动改的,反正只要同一个网段就没事


# Weblogin 服务开启
打开 WEB 机器,进入 C:\Oracle\Middleware\user_projects\domains\base_domain\bin 路径,输入管理员账户密码 administrator/1qaz@WSX 右键 startWebLogic 执行,代表开启了 Weblogin 服务, shell 是在此获取的

Kali 端口扫描
kali 中直接 ping web 发现 ping 不通,可能是防火墙的问题,但是 nmap 扫描需要指定扫描方式为 SYN
1 | nmap -sS -sV 192.168.111.80 // -sS 扫描方式SYN -sV服务识别 |

端口开启可能存在的漏洞,实验直接照 WP 了 常见端口漏洞
- 445 端口开放意味着存在 smb 服务,可能存在 ms17_010 永恒之蓝漏洞。
- 139 端口,就存在 Samba 服务,可能存在爆破 / 未授权访问 / 远程命令执行漏洞。
- 1433 端口,就存在 mssql 服务,可能存在爆破 / 注入 / SA 弱口令。
- 开放 7001 端口可能存在 Weblogi
访问 80 空白

访问 7001 报错页面,报错肯定就是要递归的去扫描的,开字典进行扫描,
70001是中间件weblogin服务默认端口

# 漏洞扫描
通过 WeblogicScan 扫描和 nuclei 均有效果并给出了漏洞地址,直接梭哈,当然还有其他的工具也能扫描出来比如 Goby
历史 CVE
1 | CVE-2017-10271 |


漏洞地址
1 | http://192.168.111.80:7001/console/login/LoginForm.jsp |

# CVE 工具利用
知道了存在反序列化漏洞,在网上寻找相关 exp
GItHub 地址

工具梭哈得到了命令执行地址
1 | pip install logzero |

CVE 工具虽然给出了 Webshell 地址和密码但是我利用连接工具却连接不上,重新找一个利用工具使用,上传新的马子

Java 反序列化利用工具

# MSF 上线
1 | search CVE-2019-2725 // 寻找CVE |

1 | set rhost 192.168.111.80 // 出现漏洞的地址 |
利用成功得到 shell

MSF 权限 Shell 至 CS


# 内网渗透
# 域内信息收集
查看本机所在域
1 | shell ipconfig /all |

扫描 IP 发现内网 10 网段
1 | shell ipconfig |

1 | shell net group "domain controllers" /domain |

1 | net group "domain computers" /domain // 查看域中的其他主机名 探测到了PC |

ping 域控 DC 和成员主机 PC 收集 IP 地址
PC 不同但是还是得出了地址,包括 DC, 在列表中可以看到目标
1 | 域控制器 : DC.de1ay.com |


# 凭证横向移动
CS 抓取 WEB 凭证明文和 hash , 利用此凭证横向移动攻击域控

扫描发现域控存在 445 端口开启,故而创建 SMB 监听器,利用凭证配合 psexec
由于 weblogic 启动需要域管理员密码,而本台 webserver2008 存在内存明文密码的漏洞 故而可知域管理员账密
administrator/1qaz@WSX

创建 SMB 监听器横向

拿下域控权限,另一台机器也同理,利用凭证横向过去,这里不错演示

# 权限维持
# 黄金票据
DC 域控凭证提权抓取 hash 值得到域控下其他用户的账户密码,关键的用户是 krbtgt 的 hash 值, krbtgt 用户是域中用来管理发放票据的用户,拥有了该用户的权限,就可以伪造系统中的任意用户
1 | 82dfc71b72a11ef37d663047bc2088fb //krbtgt hash值 |

伪造条件
- 目标的用户名及域名
- 域的
SID值 DC中KRBTGT用户的NTLM哈希
1 | logonpasswords // 查找域的sid |

输入自定义的用户名和以知信息,伪造黄金票据

回到 WEB 会话面板,远程远程连接 dir 域控 c 盘成功

白银票据
等级低一点的白银票据,条件也是需要获取 sid 和 hash 值