news 2026/6/24 3:25:35

.NET HTTP代理的隐蔽行为可能导致应用程序远程代码执行漏洞,微软拒绝修复该安全问题

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
.NET HTTP代理的隐蔽行为可能导致应用程序远程代码执行漏洞,微软拒绝修复该安全问题

漏洞概述:非预期文件写入风险潜伏于.NET应用

研究人员警告称,由于.NET的HTTP客户端代理类同时接受非HTTP URL,许多.NET应用程序可能面临任意文件写入风险。这种非预期行为需要开发者自行防范,但往往超出常规认知范畴。

图片来源:微软

研究人员发现,当在.NET代码中创建HTTP客户端代理时,存在非预期行为,可能允许攻击者将恶意代码写入任意文件。这进而可在众多.NET应用程序(包括商业产品)中,通过Web Shell和恶意PowerShell脚本开辟远程代码执行(RCE)攻击路径。

微软表示不会在.NET Framework层面修复此问题,强调应用程序开发者应负责避免将不受信任及用户可控的URL传递给初始化HTTP客户端代理的代码类。

"具体影响取决于各应用程序如何使用代理类,但实际测试中我们几乎在所有调查产品中都实现了RCE。"安全公司watchTowr研究员Piotr Bazydło在报告中指出。他还在本周三的Black Hat Europe大会上发表了技术白皮书。

利用此.NET非预期行为,研究人员在Barracuda Service Center、Ivanti Endpoint Manager、Umbraco 8 CMS、Microsoft PowerShell和Microsoft SQL Server Integration Services中发现了RCE问题。但他认为更多产品和企业私有应用可能同样存在风险。

"当应用程序使用ServiceDescriptionImporter类从攻击者提供的WSDL文件生成HTTP客户端代理时,会产生最强大的利用路径。"他解释道,"仅此机制就成功利用了Barracuda、Ivanti、微软和Umbraco的产品,且仅需数日审查就能找到有效案例。"

技术原理:HTTP代理类竟能处理非HTTP协议

作为企业级应用最流行的编程框架之一,.NET Framework和ASP.NET中,当开发者需要应用程序通过HTTP与XML Web服务通信时,必须创建继承自内置HttpWebClientProtocol类的代理类。

该框架还提供三种代理类——SoapHttpClientProtocolHttpGetClientProtocolHttpPostClientProtocol,分别支持SOAP、HTTP-GET和HTTP-POST协议。其中允许在.NET应用中执行SOAP请求的SoapHttpClientProtocol尤为常用,因为SOAP是Web服务间通过HTTP交换XML格式消息的通用协议。

问题核心在于:虽然这些类名及其官方文档暗示它们仅用于HTTP通信,但Bazydło发现向这些代理类传递file://协议的URL时,系统会调用FileWebRequest处理器而非预期的HttpWebRequest

"等等,为什么SOAP代理需要能向本地文件'发送'SOAP请求?地球上没人会期待从文件系统获得有效SOAP响应。"他质疑道。

由于文档未提及这些类也支持FILE或FTP协议,且这不符合常规预期,多数开发者可能不知晓此行为,也未采取额外防范措施。

漏洞利用路径分析

虽然这种异常行为为利用创造条件,但并非必然导致漏洞。首先,攻击者需要能控制应用程序代码中传递给这些类的URL。尽管微软暗示这不应发生,但实际上许多应用开发者会在应用中暴露SOAP API端点,有时甚至不设身份验证。

Bazydło在流行企业远程监控管理(RMM)平台Barracuda Service Center中发现案例(现编号CVE-2025-34392,已在2025.1.1热修复中修补)。通过向受影响.NET应用的SOAP API端点传递任意URL,攻击者可触发NTLM质询泄漏。例如,指向攻击者控制SMB服务器的file://URL将导致系统以加密形式发送NTLM凭据,攻击者可尝试破解或用于NTLM中继攻击。

要实现更危险的本地任意文件写入,攻击者还需能控制发送给SOAP方法的参数,从而在写入磁盘控制路径的XML输出中插入任意字符串。这通常足以在漏洞应用服务器上写入CSHTML格式的Web Shell。

利用方式还包括Web服务描述语言(WSDL)导入。WSDL是Web服务用XML描述其功能和接口的语言,客户端应用解析WSDL文件可自动构建有效SOAP请求。.NET应用中通过ServiceDescriptionImporter类解析WSDL生成客户端SOAP代理是常见功能,但Bazydło发现该类不验证WSDL中的服务定义是否使用HTTP/HTTPS协议。

"总结而言,WSDL导入为HttpWebClientProtocol中的非法转换问题创造了极强利用路径。"他解释道,"若攻击者控制导入的WSDL,则同时掌控:允许代理与文件系统交互的目标URL、SOAP方法名、方法参数名及类型。"

这种情况不仅存在于Barracuda Service Center漏洞,也影响最流行的.NET内容管理系统之一Umbraco 8 CMS(已于2月停止支持)和Ivanti EPM。

"简而言之,.NET Framework允许其HTTP客户端代理被诱骗与文件系统交互。"watchTowr研究员总结道,"条件适当时,它们会愉快地将SOAP请求写入本地路径而非通过HTTP发送。最佳情况下导致NTLM中继或质询捕获,最坏情况下则通过Web Shell上传或PowerShell脚本投放实现远程代码执行。"

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/24 1:19:28

Windows PowerShell 0Day漏洞可导致攻击者执行恶意代码

微软已发布安全更新,修复一个危险的Windows PowerShell漏洞(CVE-2025-54100),该漏洞允许攻击者在受影响系统上执行恶意代码。该漏洞于2025年12月9日公开披露,对全球企业构成重大安全风险。漏洞技术分析该漏洞源于Windo…

作者头像 李华
网站建设 2026/6/22 15:39:09

音乐解锁终极指南:5分钟搞定加密音乐格式转换

还在为无法在不同设备上播放已购音乐而烦恼吗?是否遇到过在网易云音乐或QQ音乐购买的正版歌曲,却无法在第三方播放器上使用的困扰?本文将为你揭秘音乐解锁的完整解决方案,让你轻松实现跨设备播放自由!unlock-music项目…

作者头像 李华
网站建设 2026/6/23 3:28:43

Wan2.2-T2V-A14B支持720P高清输出,重塑AI视频质量标准

Wan2.2-T2V-A14B 支持 720P 高清输出,重塑 AI 视频质量标准 你有没有想过,未来拍电影可能不再需要导演、摄影棚和演员?只需要一句话:“一个穿红裙的女孩在雨中奔跑,背景是黄昏的城市街道”——然后,AI 就自…

作者头像 李华
网站建设 2026/6/23 3:31:02

5分钟快速上手:Fluent Reader桌面RSS阅读器终极指南

5分钟快速上手:Fluent Reader桌面RSS阅读器终极指南 【免费下载链接】fluent-reader Modern desktop RSS reader built with Electron, React, and Fluent UI 项目地址: https://gitcode.com/gh_mirrors/fl/fluent-reader 在信息过载的数字时代,如…

作者头像 李华
网站建设 2026/6/23 8:28:28

Apache Kvrocks完整部署指南:从零搭建高性能Redis替代方案

Apache Kvrocks完整部署指南:从零搭建高性能Redis替代方案 【免费下载链接】kvrocks Apache Kvrocks is a distributed key value NoSQL database that uses RocksDB as storage engine and is compatible with Redis protocol. 项目地址: https://gitcode.com/gh…

作者头像 李华
网站建设 2026/6/23 21:35:21

Wan2.2-T2V-A14B支持手语动作自然生成促进无障碍传播

Wan2.2-T2V-A14B:让手语“活”起来,AI正在打破听障世界的沉默 🌍✊ 你有没有想过,一条新闻、一则通知、一节网课——对大多数人只是滑动屏幕的瞬间,但对听障群体来说,可能意味着完全被排除在信息洪流之外&a…

作者头像 李华