微软修补首个由NSA所提报的CVE-2020-0601漏洞

微软在本月的Patch Tuesday修补了49个安全漏洞,其中最受瞩目的为涉及签章验证的CryptoAPI漏洞CVE-2020-0601,虽然它只被微软列为重要(Important)漏洞,但它却是第一个由美国国安局(NSA)所发现并主动提交给微软的安全漏洞。

这是因为NSA多年前曾发现藏匿在Microsoft Server Message Block(SMB)服务器中的CVE-2017-0145安全漏洞,该漏洞允许黑客执行任意程序,然而,当时NSA不但没有通报微软,还自行打造了锁定该漏洞的EternalBlue攻击程序,而宣称在2016年入侵NSA网络攻击组织Equation Group的影子掮客(Shadow Brokers)即于隔年对外发布EternalBlue。微软则是在2017年3月才修补CVE-2017-0145。

被公开的EternalBlue很快成为黑客的重要攻击工具,包括朝鲜黑客在2017年发动的WannaCry攻击、俄罗斯黑客所执行的NotPetya,或是俄罗斯黑客介入美国大选,以及伊朗黑客传播勒索软件,都是以EternalBlue作为前锋,同时它还被用来攻击美国的政府、大学及各组织。

过去外界曾抨击NSA隐匿安全漏洞,只为追求网络间谍与攻击的做法罔顾广大用户的权益,才使得这次NSA主动向微软通报安全漏洞的事件跃上媒体标题。

根据微软对CVE-2020-0601漏洞的说明,该漏洞存在于CryptoAPI验证椭圆曲线密码学(Elliptic Curve Cryptography,ECC)的方式,黑客只要利用一个伪造的程序代码签章凭证去签署一个恶意的执行程序,让它看起来像是来自可靠且合法的来源,就能开采该漏洞,且因该数字签署看似来自可靠的供应商,因此用户几乎无从发现该文件是恶意的。

成功的开采将允许黑客执行中间人攻击,同时解密用户所连接之软件的机密信息。微软借由确保CryptoAPI能够完全验证ECC凭证解决了该漏洞。

美国国安局也特别为该漏洞发布了新闻稿,表示该漏洞允许黑客通过特定的PKI凭证来伪装成可靠来源,不论是个人、网站、软件企业或服务供应商,通过伪造的凭证取得用户或服务的信赖,再利用该信赖来危害系统。该漏洞可能波及HTTPS连接、已签署的文件与电子邮件,以及作为用户模式程序的已签署可执行程序。

CVE-2020-0601漏洞影响Windows 10及Windows Server 2016/2019操作系统。

微软也赞扬NSA此次的行为,虽未指名道姓,却是以CVE-2020-0601作为例子,指出协调漏洞披露(Coordinated Vulnerability Disclosure,CVN)已被证明是解决安全漏洞的最佳做法,借由安全研究人员与企业之间的合作,可确保漏洞在被披露前便已修补,避免客户承担不必要的安全风险,微软同时也鼓励所有的安全研究人员都应直接向微软提报潜在的安全漏洞。