vulnerability ยท 1578960000000

CurveBall Vulnerability (CVE-2020-0601)

A spoofing vulnerability in Windows CryptoAPI allowed attackers to forge cryptographic certificates, undermining trust in software signatures and HTTPS connections.

What happened

The NSA discovered a flaw in how Windows CryptoAPI (Crypt32.dll) validated Elliptic Curve Cryptography (ECC) certificates. An attacker could craft a certificate that appeared to originate from a trusted authority.

Technical mechanism

The vulnerability occurred when a certificate defined explicit elliptic curve parameters (ecParameters) instead of using a named curve. Attackers could manipulate these parameters to generate a certificate with a public key identical to an existing trusted certificate's public key.

Why it matters

Discovered and reported by the NSA, this vulnerability struck at the core of Windows cryptographic trust, allowing attackers to bypass fundamental security mechanisms.

Impact

Attackers could sign malicious executables to make them appear legitimate or conduct man-in-the-middle attacks by forging TLS/SSL certificates for trusted domains.

Response

Microsoft released a patch in January 2020. The NSA issued a rare public advisory urging immediate patching.

Defensive lessons

  • Core cryptographic libraries must robustly validate all parameters, especially explicit curve definitions.
  • Collaboration between intelligence agencies (NSA) and vendors (Microsoft) can preemptively address critical flaws.
  • Organizations must rapidly deploy patches for vulnerabilities affecting cryptographic trust.

Evidence register

  1. National Security Agency โ€” Patch Critical Cryptographic Vulnerability in Microsoft Windows Clients and Servers (verified)
  2. NIST NVD โ€” CVE-2020-0601 (verified)
  3. Palo Alto Networks Unit 42 โ€” Threat Brief: Windows CryptoAPI Spoofing Vulnerability CVE-2020-0601 (verified)