Facebook Google Plus Twitter LinkedIn YouTube RSS Menu Search Resource - BlogResource - WebinarResource - ReportResource - Eventicons_066 icons_067icons_068icons_069icons_070

Tenable Blog

Subscribe

CVE-2020-0601: NSA Reported Spoofing Vulnerability in Windows CryptoAPI

Microsoft kicks off the first Patch Tuesday of 2020 with the disclosure of CVE-2020-0601, a highly critical flaw in the cryptographic library for Windows.

UPDATE 01/16/2020: This blog post has been updated to reflect the availability of proof-of-concept code for CVE-2020-0601, which is being referred to as CurveBall or Chain of Fools.

Background

On January 14, Microsoft released its first Patch Tuesday of 2020, which contains an update for a critical vulnerability in the cryptographic library used in newer versions of Windows, including Windows 10 and Windows Server 2016/2019. CVE-2020-0601 was disclosed to Microsoft by the National Security Agency (NSA) via Microsoft’s Coordinated Vulnerability Disclosure process.

Widespread speculation about a severe vulnerability in Microsoft Windows began to circulate on January 13 when Will Dormann, senior vulnerability analyst with the CERT Coordination Center (CERT/CC), hinted in a tweet that people should “pay very close attention” to the updates in Microsoft’s January 2020 Patch Tuesday.

Shortly thereafter, investigative journalist Brian Krebs tweeted a warning about “an extraordinarily scary flaw in all Windows versions,” specifically mentioning the flaw was in a core cryptographic component.

Krebs later released a blog post with additional details on the event. According to Krebs, the flaw exists in crypt32.dll, the Microsoft Cryptographic Application Programming Interface (CryptoAPI) used for certificate and cryptographic messaging functions. The post also indicates that branches of the U.S. military and other high-value customers received advance notice and patches from Microsoft under non-disclosure agreements (NDAs).

On January 14, Krebs tweeted more information after a media call with the NSA’s director of cybersecurity, Anne Neuberger. According to the tweets, the critical cryptographic vulnerability was discovered by the NSA and reported to Microsoft. The tweet further explains that the vulnerability exists in Windows 10 and Windows Server 2016 and the flaw “makes trust vulnerable.”

Analysis

CVE-2020-0601 is a spoofing vulnerability in crypt32.dll, a core cryptographic module in Microsoft Windows responsible for implementing certificate and cryptographic messaging functions in Microsoft’s CryptoAPI.

According to the NSA (credited with the discovery of this vulnerability), successful exploitation of this vulnerability would allow attackers to deliver malicious code that appears to be from a trusted entity. The analysis notes some examples of where validation of trust would be impacted:

  • HTTPs connections
  • Signed files and emails
  • Signed executable code launched as user-mode processes

Because CVE-2020-0601 reportedly bypasses Windows’ capability to verify cryptographic trust, an attacker could pass malicious applications off as legitimate, trusted code, putting Windows hosts at risk. An attacker would need to compromise a system in another fashion to deploy malware that exploits this vulnerability. They would likely either use common phishing tactics to trick a trusted user into interacting with a malicious application or use a man-in-the-middle attack through another compromised device in the environment to spoof an intercepted update and replace it with malware.

Proof of concept

At the time this blog post was published, no proof of concept (PoC) had been released for this vulnerability. However, since details about the vulnerability became public on January 14, security researchers have published tweets hinting they’ve developed working PoCs.

On January 15, a PoC from Danish security researcher ollypwn, who calls the vulnerability CurveBall, was published to GitHub. It was followed by a PoC from security researchers Sylvain Pelissier and Yolan Romailler of Kudelski Security, who call the vulnerability Chain of Fools, which was a name given by Kenneth White, security principal at MongoDB. Earlier today, security researcher Saleem Rashid published a PoC to GitHub, which he calls BADECPARAMS, and can be used to generate “a root certificate authority that exploits the vulnerability, then issues Authenticode and TLS certificates.”

Vendor response

Microsoft has stated that they’ve seen no active exploitation of this vulnerability so far. However, the vulnerability is labeled as ‘Exploitation More Likely’ in Microsoft’s Security Advisory.

Solution

Microsoft has released software updates to address CVE-2020-0601. If patching the vulnerability enterprisewide is not possible, the NSA has advised “prioritizing patching systems that perform Transport Layer Security validation, or host critical infrastructure like domain controllers, Domain Name System servers, Virtual Private Network servers, etcetera.” Additionally, Tenable suggests patching endpoints directly exposed to the internet or systems regularly used by privileged users.

Users can create scans that focus specifically on this vulnerability. From a new advanced scan, in the plugins tab, set an advanced filter for CVE is equal to CVE-2020-0601.

Scan

Identifying affected systems

A list of Tenable plugins to identify CVE-2020-0601 will appear here as they’re released.

A list of all the plugins released for Tenable’s January 2020 Patch Tuesday update can be found here.

Get more information

Join Tenable's Security Response Team on the Tenable Community.

Learn more about Tenable, the first Cyber Exposure platform for holistic management of your modern attack surface.

Get a free 30-day trial of Tenable.io Vulnerability Management.

Related Articles

Cybersecurity News You Can Use

Enter your email and never miss timely alerts and security guidance from the experts at Tenable.