
聚焦源代码安全,网罗国内外最新资讯!
0x00 漏洞描述

2020年1月15日,微软公布了1月份的补丁更新列表,其中存在一个位于 CryptoAPI 椭圆曲线密码(ECC)证书检测绕过相关的漏洞 (CVE-2020-0601),该漏洞为NSA发现并汇报给微软。攻击者可以利用这个漏洞,使用伪造的代码签名证书对恶意的可执行文件进行签名,并以此恶意文件来进行攻击。
0x01 补丁分析

从微软的官方介绍上可知,此漏洞存在于crypt32.dll文件。在官方网站下载了补丁文件升级更新后,新的crypt32.dll与未更新的版本对比如下:

从图中可以看出,CertDllVerifyMicrosoftRootCertificateChainPolicy函数存在改动,查看引用该函数的地方:

从图可知,函数 CertVerifyCertificateChainPolicy 中有两处调用了CertDllVerifyMicrosoftRootCertificateChainPolicy函数,查看CertVerifyCertificateChainPolicy的代码:

从上图代码可知,函数CertVerifyCertificateChainPolicy将四个参数pszPolicyOID, pChainContext, pPolicyPara, pPolicyStatus直接
本文深入分析了CVE-2020-0601漏洞,该漏洞允许攻击者通过伪造的代码签名证书对恶意文件进行签名,绕过微软CryptoAPI的检测。通过对补丁和椭圆曲线数字签名算法(ECDSA)的探讨,揭示了漏洞的成因和验证方法。
最低0.47元/天 解锁文章

1万+

被折叠的 条评论
为什么被折叠?



