背景
三个月前,在我们 2022 年 10 月补丁星期二分析中,我们分享了 Windows CryptoAPI 中一个严重欺骗漏洞 CVE-2022-34689 的基本描述。据微软称,此漏洞允许攻击者“欺骗其身份并以目标证书的身份执行身份验证或代码签名等操作”。
CryptoAPI 是 Windows 中用于处理与加密相关的任何内容的实际 API。具体来说,它处理证书 — 从读取和解析证书到根据经过验证的证书颁发机构 (CA) 进行验证。浏览器还使用 CryptoAPI 进行 TLS 证书验证 — 此过程会显示锁定图标,每个人都被教导要检查该图标。
然而,证书验证并非浏览器独有的,其他 TLS 客户端也会使用证书验证,例如 PowerShell Web 身份验证、curl、wget、FTP 管理器、EDR 和许多其他应用程序。此外,代码签名证书会在可执行文件和库上进行验证,驱动程序签名证书会在加载驱动程序时进行验证。可以想象,证书验证过程中的漏洞对攻击者来说非常有利可图,因为它允许他们掩盖身份并绕过关键的安全保护。
这并不是美国国家安全局第一次披露 CryptoAPI 中的漏洞。2020 年,他们发现并披露了 CurveBall (CVE-2020-060