hazcod/CVE-2025-53770

GitHub: hazcod/CVE-2025-53770

针对 SharePoint CVE-2025-53770 未授权远程代码执行零日漏洞的非破坏性检测扫描器,基于对真实攻击 payload 的逆向工程实现安全验证。

Stars: 45 | Forks: 12

# CVE-2025-53770 这是一个用于 [SharePoint 未授权远程代码执行漏洞](https://msrc.microsoft.com/blog/2025/07/customer-guidance-for-sharepoint-vulnerability-cve-2025-53770/) 的扫描器,该漏洞被分配了 CVE 编号 CVE-2025-53770。 其代码是通过对[实际环境](https://raw.githubusercontent.com/kaizensecurity/CVE-2025-53770/refs/heads/master/payload)中观察到的 payload 进行逆向工程编写的。 使用风险自负,我对这可能造成的任何负面影响概不负责。 ## 它是如何工作的? 它尝试通过向 SharePoint ToolBox 部件注入[一个标记](pkg/payload/test_payload.go)来利用该漏洞。 如果在 SharePoint 服务器的响应中发现了这个无害的标记,该主机就会被标记为存在漏洞。 ## 如何使用 ``` # 检查 是否存在漏洞并尝试提取版本信息 % ./CVE-2025-53770 [ ...] INFO[0000] set log level fields.level=info INFO[0000] starting scanner targets=1 INFO[0001] detected SharePoint version target= version="MicrosoftSharePointTeamServices: 16.0.0.5469\n" WARN[0001] target is vulnerable target= # 开启 debug logging 并尝试检索 SharePoint 版本信息 % ./CVE-2025-53770 -log=debug -version ... ``` ## 谁存在漏洞? 任何运行 SharePoint 服务器 *本地* 版本且未安装 KB5002768 和 KB5002754 的用户。 ## 该漏洞是如何起作用的? 该漏洞据推测是在先前已披露的 SharePoint 漏洞 CVE-2025-49706 的基础上构建的。 通过向 `https:///_layouts/15/ToolPane.aspx?DisplayMode=Edit&a=/ToolPane.aspx` 发送一个经过 GZIP 压缩和 BASE64 编码的 payload,可以作为 SharePoint runtime 进程实现远程代码执行。 这里有两个表单参数很重要: 1. `MSOTlPn_Uri`:控件源路径 它假装引用一个合法的 SharePoint 控件 (AclEditor.ascx),并欺骗 SharePoint 允许编辑 Web 部件。 这似乎是一个模拟/伪造的值,仅仅是为了通过验证。 最初的恶意 payload 包含 `MSOTlPn_Uri=https://%s/_controltemplates/15/AclEditor.ascx`,但此时似乎并未被使用。 2. `MSOTlPn_DWP`:Web 部分配置。 此参数注入了自定义的 ASP.NET 指令 (`<%@ Register %>`) 和服务器端标记 (``)。 `CompressedDataTable` 参数包含攻击者控制的序列化数据(GZIP + base64),从而触发 RCE。 此 payload 遵循特定的结构: ``` <%@ Register Tagprefix="Scorecard" Namespace="Microsoft.PerformancePoint.Scorecards" Assembly="Microsoft.PerformancePoint.Scorecards.Client, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Register Tagprefix="asp" Namespace="System.Web.UI" Assembly="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" %>
``` 如果存在类似 `Scorecard:ExcelDataSet` 的控件,并且其 `CompressedDataTable` 属性被设置,它将直接被 SharePoint DWP Parser 反序列化。 payload 本身可能相当有趣,因为它可以包含一个 `System.DelegateSerializationHolder`,从而触发反序列化 RCE。 威胁行为者滥用了这一点,在其 payload 中传递 `/c powershell -EncodedCommand ` 以实现代码执行。 在我们的案例中,我们仅仅传递一个静态占位符来证明可利用性; ``` This is a harmless CVE-2025-53770 PoC marker. 2025-07-21T14:04:52Z ```
标签:BASE64编码, CISA项目, CVE-2025-53770, EVTX分析, GZIP压缩, Maven, POC, RCE, SharePoint, ToolPane.aspx, 企业安全, 加密, 反取证, 安全评估, 日志审计, 未授权访问, 漏洞扫描器, 漏洞验证, 编程工具, 网络安全, 网络资产管理, 远程代码执行, 隐私保护, 零日漏洞, 靶场检测