CVE Catalog

CVE-2022-0778

High
Published: Translated: NVD NIST

Summary

The BN_mod_sqrt() function contains a bug that can lead to an infinite loop for non-prime moduli. This bug can be triggered by crafting a certificate with invalid explicit curve parameters.

Risk Assessment

Organizations may be exposed to denial of service attacks as the certificate parsing process can get stuck in an infinite loop. This affects any systems that process externally supplied certificates.

Recommendation

It is recommended to update the software to fix this vulnerability and implement additional validation mechanisms for certificates before parsing them.

Related vulnerabilities

Original NVD description (English source)

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 pa

Vulnerability data from NVD (NIST) · CISA KEV · EPSS