【安全资讯】Windows漏洞十年未修复,3CX供应链攻击影响全球60多万家企业
2023-4-4 17:10:29 Author: 嘉诚安全(查看原文) 阅读量:12 收藏

点击上方蓝字关注我们!

本文来源于 代码卫士

已存在十年之久的 Windows 漏洞CNNVD-201312-181(CVE-2013-3900) 遭利用,导致可执行文件看似获得合法签名。这么多年来,微软发布的修复方案仍然是“opt-in”状态。更糟糕的是,升级至 Windows 11后,该修复方案被删除。

Opt-in 更新模式

由于发布快速更新和推送新变化的计划可能会引发与商业软件的兼容性问题,因此微软为Windows 10 提供三种访问更新的方式,“Opt-in”、“Lock-down”和“In-between”(“选择性加入”、“锁定”和“介于两者之间”)。Opt-in 模式针对的是家庭用户,当微软发布更新时,用户可快速获得更新。不过微软需要获得用户的同意,才能为用户推出新特性、修复方案、安全补丁和OS更新;Lock-down 模式为关键任务环境设置如企业,仅限于定期推送安全更新和修复方案,并不推送新特性,防止与企业配置出现兼容性问题;“In-between”为非任务关键的系统设计,需要在不中断业务流的情况下获得最新创新。

近日,新闻报道称VoIP 通信公司 3CX 受陷,被用于在大规模供应链攻击中分发木马版本的 Windows 桌面应用3CX Phone System。该应用所使用的两个DLL 被恶意版本取代,将其它恶意软件下载到计算机如信息窃取木马等。其中一个恶意DLL 是由微软签名的合法 DLL,名为 “d3dcompiler_47.dll”。然而,攻击者修改了该DLL,在文件末尾包含了加密的恶意payload。即使该文件已遭修改,但微软仍将其显示为正确签名的文件。

对可执行文件如DLL或EXE文件进行代码签名,意味着向Windows 用户保证文件是真实的,并未被修改为包含恶意代码的文件。当已签名的可执行文件被修改时,Windows 会展示一条信息说明“该对象的数字化签名未经验证”。然而,即使我们知道 d3dcompiler_47.dll DLL 已遭修改但仍然在 Windows 中显示已签名。

ANALYGENCE 公司的高级漏洞分析师 Will Dormann 指出,该DLL 利用的是CNNVD-201312-181(CVE-2013-3900),它是一个“WinVerifyTrust 签名验证漏洞”。微软在2013年12月10日首次披露该漏洞并解释称,很可能在已签名可执行文件中向 EXE 的认证签名部分(WIN_CERTIFICATE 结构)增加内容,且无需验证签名。Dormann 解释称,谷歌Chrome 安装程序将数据添加到认证码结构中,判断用户是否选择“向谷歌发送使用统计和崩溃报告”。安装Chrome 后,它会查看该数据的认证码签名,判断是否应当启用诊断报告。

CVE-2013-3900 补丁需手动启用

微软最终选择将该修复方案设为可选项,可能是因为它会将数据存储在可执行文件签名块中的、合法的已签名可执行文件判定为无效。

微软在披露CVE-2013-3900 时解释称,“2013年12月10日,微软为所有受支持的 Windows 发布了更新,修改了如何对以 Windows 验证码签名格式签名的二进制进行签名验证。这一变更可在opt-in 基础上启动。启动后,Windows 验证码签名验证的新行为将不再允许 WIN_CERTIFICATE 结构中存在无关信息,而 Windows 将不再将不合规二进制视作已签名。”

近十年后,该漏洞已被无数威胁行动者所用。而该漏洞的修复方案仍然只能在手动编辑 Windows Registry 的情况下才能启用。要启用该修复方案,则64位系统的Windows 用户可做出如下 Registry 变更:

Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\Software\Microsoft\Cryptography\Wintrust\Config]  "EnableCertPaddingCheck"="1"[HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Cryptography\Wintrust\Config]"EnableCertPaddingCheck"="1"

启用 Registry 密钥后,可以发现微软对 3CX 供应链攻击中所使用的恶意 d3dcompiler_47.dll DLL中的签名如何验证。更糟糕的是,即使添加 Registry 密钥应用该修复方案,一旦升级至 Windows 11,则修复方案被删除即设备再次是易遭攻击状态。

亟需修复

鉴于CNNVD-201312-181(CVE-2013-3900) 已用于攻击活动如 3CX 供应链攻击事件和 Zloader 恶意软件传播中,很显然该漏洞应当得到修复,即使会给开发人员带来不便。遗憾的是,大多数人仍然不了解该漏洞,而且将会查看恶意文件并认为有了微软的报告它是可信的。

Dormann提醒称,“但是如果修复方案是可选的,那么大众不会得到保护。”本文记者启用了该可选的修复方案,发现使用正常,不会产生任何严重问题。虽然这样做可能会给Chrome 等带来一些问题如不会显示已签名,但所增加的防护措施的好处大过不便之处。

微软尚未就该漏洞持续遭利用以及将漏洞修复方案设定为“可选”的情况置评。


文章来源: http://mp.weixin.qq.com/s?__biz=MzU4NjY4MDAyNQ==&mid=2247490800&idx=2&sn=22386f3bbe440c183261d4b41edfc743&chksm=fdf6cf46ca8146505d636bc3e31c00fb1f4867f826e19cde06839d22db16218fbd702ad533c8#rd
如有侵权请联系:admin#unsafe.sh