CVE-2022-0778: Debian Linux

High severity, CVSS 7.5. EPSS: 73.2% chance of exploitation in the next 30 days.

The BN_mod_sqrt() function, which computes a modular square root, contains a bug that can cause it to loop forever for non-prime moduli. Internally this function is used when parsing certificates that contain elliptic curve public keys in compressed form or explicit elliptic curve parameters with a base point encoded in compressed form. It is possible to trigger the infinite loop by crafting a certificate that has invalid explicit curve parameters. Since certificate parsing happens prior to verification of the certificate signature, any process that parses an externally supplied certificate may thus be subject to a denial of service attack. The infinite loop can also be reached when parsing crafted private keys as they can contain explicit elliptic curve parameters. Thus vulnerable situations include: - TLS clients consuming server certificates - TLS servers consuming client certificates - Hosting providers taking certificates or private keys from customers - Certificate authorities parsing certification requests from subscribers - Anything else which parses ASN.1 elliptic curve parameters Also any other applications that use the BN_mod_sqrt() where the attacker can control the parameter values are vulnerable to this DoS issue. In the OpenSSL 1.0.2 version the public key is not parsed during initial parsing of the certificate which makes it slightly harder to trigger the infinite loop. However any operation which requires the public key from the certificate will trigger the infinite loop. In particular the attacker can use a self-signed certificate to trigger the loop during verification of the certificate signature. This issue affects OpenSSL versions 1.0.2, 1.1.1 and 3.0. It was addressed in the releases of 1.1.1n and 3.0.2 on the 15th March 2022. Fixed in OpenSSL 3.0.2 (Affected 3.0.0,3.0.1). Fixed in OpenSSL 1.1.1n (Affected 1.1.1-1.1.1m). Fixed in OpenSSL 1.0.2zd (Affected 1.0.2-1.0.2zc).

Affected products

  • Debian Debian Linux: version 9.0 only; version 10.0 only; version 11.0 only
  • Fedoraproject Fedora: version 34 only; version 36 only
  • MariaDB MariaDB: from 10.2.0, before 10.2.42 (fixed in 10.2.42); from 10.3.0, before 10.3.33 (fixed in 10.3.33); from 10.4.0, before 10.4.23 (fixed in 10.4.23); from 10.5.0, before 10.5.14 (fixed in 10.5.14); from 10.6.0, before 10.6.6 (fixed in 10.6.6); from 10.7.0, before 10.7.2 (fixed in 10.7.2)
  • Netapp 500f Firmware: affected versions not specified
  • Netapp a250 Firmware: affected versions not specified
  • Netapp Cloud Volumes Ontap Mediator: affected versions not specified
  • Netapp Clustered Data Ontap: affected versions not specified
  • Netapp Clustered Data Ontap Antivirus Connector: affected versions not specified
  • Netapp Santricity Smi-S Provider: affected versions not specified
  • Netapp Storagegrid: affected versions not specified
  • Node.js Node.js: from 12.0.0, up to and including 12.12.0; from 12.13.0, before 12.22.11 (fixed in 12.22.11); after 14.0.0, up to and including 14.14.0; from 14.15.0, before 14.19.1 (fixed in 14.19.1); after 16.0.0, up to and including 16.12.0; from 16.13.0, before 16.14.2 (fixed in 16.14.2); …
  • OpenSSL OpenSSL: from 1.0.2, before 1.0.2zd (fixed in 1.0.2zd); from 1.1.0, before 1.1.1n (fixed in 1.1.1n); from 3.0.0, before 3.0.2 (fixed in 3.0.2)
  • Tenable Nessus: before 8.15.4 (fixed in 8.15.4); from 10.0.0, before 10.1.2 (fixed in 10.1.2)

Published 2022-03-15. Last modified 2026-06-17.