必应图片漏洞允许特制 SVG 在微软服务器上以 SYSTEM 权限执行命令
导语:必应图片搜索中的两个严重漏洞允许特制 SVG 在微软生产服务器上以 SYSTEM(root)权限执行命令,ImageMagick delegate 通道成为关键攻击面。
提交到必应图片搜索的一个特制 SVG 文件,在微软生产环境的图片处理 worker 上以 NT AUTHORITY\SYSTEM 身份执行了命令,在同一机队的 Linux 机器上则以 root 身份执行。XBOW 在不同主机和网络段的多个 worker 上都得到了同样的结果,因此问题出在必应的图片处理层,而非某一台出问题的机器。微软为此发布了两个严重 CVE:CVE-2026-32194 和 CVE-2026-32191,两者 CVSS 评分均为 9.8。
XBOW 这家自主化攻击安全初创公司发现了这两个漏洞,并私下上报。必应用户无需打补丁或采取缓解措施:微软在 3 月公告发布之前已经在服务端完成了修复,记录中显示"无需客户执行任何操作来解决"。两份公告在 3 月 19 日上线时,均未记录到在野利用或公开披露。XBOW 在 7 月 23 日发布了漏洞利用机制,此前应微软请求一直保持沉默,直到修复落地。
修复之后仍然存在的问题,是这个 bug 的形态本身:应用程序认为自己处理的是一张图片,而下层的辅助程序却把图片的一部分内容当作命令来读取。
如果你的自有技术栈会让上传文件或服务端抓取的 URL 经过 ImageMagick 或任何与 ImageMagick 兼容的组件,那么你的暴露面就取决于攻击者可控内容是否仍能到达一条启用了 delegate 的路径。拒绝 delegate、削减你接受的格式、并把 worker 隔出网络,那么同样的 SVG 就什么也做不了。
必应的反向图片搜索会从后端抓取图片 URL,因为这正是该功能的工作方式。仅凭这一点,它本身就是一个盲 SSRF:不会有任何内容返回给客户端。线索在于错误:部分 worker 向浏览器返回了 500,但仍然抓取并解析了所取得的内容,这指向下游某个模块在做解析。SVG 回答了这个问题:它是 XML 而非像素,可以引用其他图片,而跟随这些引用的渲染器会主动去获取它们。在底层,转换套件会把自己不直接处理的格式交给 delegate——一个通过 shell 调起的外部程序。

在 XBOW 触及的路径上,这一层仍然处于启用状态,因此以管道符开头的图片引用被送进了 shell,而不是作为文件名被读取。Payload 是一个单像素 SVG,其内部引用在 worker 上执行命令,并把输出回传到一个由 XBOW 控制的收集器。由此获得了通往同一转换层的两条路径,并产生了两个 CVE。
The Hacker News 在 7 月 24 日核验了两份 CVE 记录。两份记录仍保持着微软 3 月的"无公开披露"状态,而 XBOW 的技术文章已经超越了此状态;微软仍将它们列为未被利用。要证明漏洞利用,必须从带外获取证据:即使前端返回错误,worker 依然会执行命令。Linux worker 返回了 uid=0 与 gid=0。在 Windows 上,systeminfo 显示为 Windows Server 2022 Datacenter,whoami /all 显示 SeImpersonatePrivilege 与 SeDebugPrivilege 处于启用状态,而目录列表将执行位置定位在必应的多媒体图片处理组件内。该公司表示,他们仅运行了良性的只读命令,未触碰任何客户数据。
将范围收窄到这条路径花了数十次探测。ImageMagick 伪协议在不同 coder 下表现不同:label: 会渲染文本,xc: 产生一张纯色图,而 text:、caption: 以及直接的文件读取则失败。label: 内的 shell 元字符会作为文本渲染而非执行,这排除了该 coder。真正触达 delegate 的路径,是 SVG 内部的图片引用本身。一个处理不可信文件的图片处理 worker,本不应触达 shell、以 SYSTEM 身份运行、或拥有通往互联网的出口。而必应的管线三样都做到了。
ImageMagick 自身的指引明确指出,默认策略是开放的,适用于沙箱化或带防火墙的环境,而非公开网站。对于任何会接触不可信图片的场景,请在 policy.xml 中直接拒绝 delegate:ImageMagick 指引建议在每次策略变更后进行测试,magick identify -list policy 会打印实际加载的策略。
ImageTragick,即 2016 年的 delegate 命令注入漏洞 CVE-2016-3714,属于同一类故障,并且不断死灰复燃,因为没有人把图片转换器算进攻击面。XBOW 的 CISO、撰写披露报告的 Nico Waisman 这样概括:"应用程序把图片辅助库当作管道,攻击者把它们当作解析器。"这个抓取请求可以到达、不返回任何内容、看起来像条死胡同。把它变成 SYSTEM shell 的,是它背后的解析器,而响应里没有任何东西能告诉你这一点。
来源信息
来源:The Hacker News
原文链接:https://thehackernews.com/2026/07/bing-images-flaws-let-crafted-svgs-run.html
作者:info@thehackernews.com (The Hacker News)

