CVE-2022-0778Infinite loop in BN_mod_sqrt() reachable when parsing certificates
Updated under an hour ago ()
Does this affect you?
It affects OpenSSL and 59 other products. Add what you run to find out whether that includes you.
No exploitation reported and no EPSS estimate yet.
Do this next
Free account, 1 product
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).
- CVSS
- 7.5 HIGH (v3.1, CISA ADP)CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
- Weakness (CWE)
- CWE-835
- Known exploited
- Not in CISA's KEV catalog
- EPSS (exploitation in the next 30 days)
- Not loaded for this CVE
- Assigned by
- openssl
- NVD analysis
- Modified
- Record last updated
- Oct 14, 2026
- First seen by InfoSec Signals
- Oct 14, 2026
Affected products
OpenSSL OpenSSL openssl:openssl (from the name) | 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) | CNA record |
Siemens BFCClient siemens:bfcclient (from the name) | before V2.17 | CISA ADP |
Siemens Industrial Edge - OPC UA Connector siemens:industrial_edge_opc_ua_connector (from the name) | before V1.7.0.0 | CISA ADP |
Siemens Industrial Edge - SIMATIC S7 Connector App siemens:industrial_edge_simatic_s7_connector_app (from the name) | before V1.7.0.0 | CISA ADP |
Siemens OpenPCS 7 V8.2 siemens:openpcs_7_v8.2 (from the name) | all versions | CISA ADP |
Siemens OpenPCS 7 V9.0 siemens:openpcs_7_v9.0 (from the name) | all versions | CISA ADP |
Siemens OpenPCS 7 V9.1 siemens:openpcs_7_v9.1 (from the name) | all versions | CISA ADP |
Siemens RUGGEDCOM CROSSBOW Station Access Controller (SAC) siemens:ruggedcom_crossbow_station_access_controller_sac (from the name) | all versions | CISA ADP |
Siemens RUGGEDCOM RM1224 LTE(4G) EU siemens:ruggedcom_rm1224_lte_4g_eu (from the name) | before V7.2 | CISA ADP |
Siemens RUGGEDCOM RM1224 LTE(4G) NAM siemens:ruggedcom_rm1224_lte_4g_nam (from the name) | before V7.2 | CISA ADP |
Siemens RUGGEDCOM ROX MX5000 siemens:ruggedcom_rox_mx5000 (from the name) | before V2.15.1 | CISA ADP |
Siemens RUGGEDCOM ROX MX5000RE siemens:ruggedcom_rox_mx5000re (from the name) | before V2.15.1 | CISA ADP |
Siemens RUGGEDCOM ROX RX1400 siemens:ruggedcom_rox_rx1400 (from the name) | before V2.15.1 | CISA ADP |
Siemens RUGGEDCOM ROX RX1500 siemens:ruggedcom_rox_rx1500 (from the name) | before V2.15.1 | CISA ADP |
Siemens RUGGEDCOM ROX RX1501 siemens:ruggedcom_rox_rx1501 (from the name) | before V2.15.1 | CISA ADP |
Siemens RUGGEDCOM ROX RX1510 siemens:ruggedcom_rox_rx1510 (from the name) | before V2.15.1 | CISA ADP |
Siemens RUGGEDCOM ROX RX1511 siemens:ruggedcom_rox_rx1511 (from the name) | before V2.15.1 | CISA ADP |
Siemens RUGGEDCOM ROX RX1512 siemens:ruggedcom_rox_rx1512 (from the name) | before V2.15.1 | CISA ADP |
Siemens RUGGEDCOM ROX RX1524 siemens:ruggedcom_rox_rx1524 (from the name) | before V2.15.1 | CISA ADP |
Siemens RUGGEDCOM ROX RX1536 siemens:ruggedcom_rox_rx1536 (from the name) | before V2.15.1 | CISA ADP |
Siemens RUGGEDCOM ROX RX5000 siemens:ruggedcom_rox_rx5000 (from the name) | before V2.15.1 | CISA ADP |
Siemens SCALANCE LPE9403 siemens:scalance_lpe9403 (from the name) | before V2.0 HF0 | CISA ADP |
Siemens SCALANCE M804PB siemens:scalance_m804pb (from the name) | before V7.2 | CISA ADP |
Siemens SCALANCE M812-1 ADSL-Router siemens:scalance_m812_1_adsl_router (from the name) | before V7.2 | CISA ADP |
Siemens SCALANCE M816-1 ADSL-Router siemens:scalance_m816_1_adsl_router (from the name) | before V7.2 | CISA ADP |
Siemens SCALANCE M826-2 SHDSL-Router siemens:scalance_m826_2_shdsl_router (from the name) | before V7.2 | CISA ADP |
Siemens SCALANCE M874-2 siemens:scalance_m874_2 (from the name) | before V7.2 | CISA ADP |
Siemens SCALANCE M874-3 siemens:scalance_m874_3 (from the name) | before V7.2 | CISA ADP |
Siemens SCALANCE M876-3 siemens:scalance_m876_3 (from the name) | before V7.2 | CISA ADP |
Siemens SCALANCE M876-3 (ROK) siemens:scalance_m876_3_rok (from the name) | before V7.2 | CISA ADP |
Siemens SCALANCE M876-4 siemens:scalance_m876_4 (from the name) | before V7.2 | CISA ADP |
Siemens SCALANCE M876-4 (EU) siemens:scalance_m876_4_eu (from the name) | before V7.2 | CISA ADP |
Siemens SCALANCE M876-4 (NAM) siemens:scalance_m876_4_nam (from the name) | before V7.2 | CISA ADP |
Siemens SCALANCE MUM853-1 (EU) siemens:scalance_mum853_1_eu (from the name) | before V7.2 | CISA ADP |
Siemens SCALANCE MUM856-1 (EU) siemens:scalance_mum856_1_eu (from the name) | before V7.2 | CISA ADP |
Siemens SCALANCE MUM856-1 (RoW) siemens:scalance_mum856_1_row (from the name) | before V7.2 | CISA ADP |
Siemens SCALANCE S615 EEC LAN-Router siemens:scalance_s615_eec_lan_router (from the name) | before V7.2 | CISA ADP |
Siemens SCALANCE S615 LAN-Router siemens:scalance_s615_lan_router (from the name) | before V7.2 | CISA ADP |
Siemens SCALANCE SC622-2C siemens:scalance_sc622_2c (from the name) | before V2.3.1.0 | CISA ADP |
Siemens SCALANCE SC632-2C siemens:scalance_sc632_2c (from the name) | before V2.3.1.0 | CISA ADP |
Siemens SCALANCE SC636-2C siemens:scalance_sc636_2c (from the name) | before V2.3.1.0 | CISA ADP |
Siemens SCALANCE SC642-2C siemens:scalance_sc642_2c (from the name) | before V2.3.1.0 | CISA ADP |
Siemens SCALANCE SC646-2C siemens:scalance_sc646_2c (from the name) | before V2.3.1.0 | CISA ADP |
Siemens SCALANCE W1748-1 M12 siemens:scalance_w1748_1_m12 (from the name) | all versions | CISA ADP |
Siemens SCALANCE W1750D (JP) siemens:scalance_w1750d_jp (from the name) | before V8.7.1.11 | CISA ADP |
Siemens SCALANCE W1750D (ROW) siemens:scalance_w1750d_row (from the name) | before V8.7.1.11 | CISA ADP |
Siemens SCALANCE W1750D (USA) siemens:scalance_w1750d_usa (from the name) | before V8.7.1.11 | CISA ADP |
Siemens SCALANCE W1788-1 M12 siemens:scalance_w1788_1_m12 (from the name) | all versions | CISA ADP |
Siemens SCALANCE W1788-2 EEC M12 siemens:scalance_w1788_2_eec_m12 (from the name) | all versions | CISA ADP |
Siemens SCALANCE W1788-2 M12 siemens:scalance_w1788_2_m12 (from the name) | all versions | CISA ADP |
Siemens SCALANCE W1788-2IA M12 siemens:scalance_w1788_2ia_m12 (from the name) | all versions | CISA ADP |
Siemens SCALANCE W721-1 RJ45 siemens:scalance_w721_1_rj45 (from the name) | before V6.6.0 | CISA ADP |
Siemens SCALANCE W722-1 RJ45 siemens:scalance_w722_1_rj45 (from the name) | before V6.6.0 | CISA ADP |
Siemens SCALANCE W734-1 RJ45 siemens:scalance_w734_1_rj45 (from the name) | before V6.6.0 | CISA ADP |
Siemens SCALANCE W734-1 RJ45 (USA) siemens:scalance_w734_1_rj45_usa (from the name) | before V6.6.0 | CISA ADP |
Siemens SCALANCE W738-1 M12 siemens:scalance_w738_1_m12 (from the name) | before V6.6.0 | CISA ADP |
Siemens SCALANCE W748-1 M12 siemens:scalance_w748_1_m12 (from the name) | before V6.6.0 | CISA ADP |
Siemens SCALANCE W748-1 RJ45 siemens:scalance_w748_1_rj45 (from the name) | before V6.6.0 | CISA ADP |
Siemens SCALANCE W761-1 RJ45 siemens:scalance_w761_1_rj45 (from the name) | before V6.6.0 | CISA ADP |
Siemens SCALANCE W774-1 M12 EEC siemens:scalance_w774_1_m12_eec (from the name) | before V6.6.0 | CISA ADP |
References
- https://www.openssl.org/news/secadv/20220315.txtvendor-advisory
- https://git.openssl.org/gitweb/?p=openssl.git%3Ba=commitdiff%3Bh=a466912611aa6cbdf550cd10601390e587451246
- https://git.openssl.org/gitweb/?p=openssl.git%3Ba=commitdiff%3Bh=3118eb64934499d93db3230748a452351d1d9a65
- https://git.openssl.org/gitweb/?p=openssl.git%3Ba=commitdiff%3Bh=380085481c64de749a6dd25cdf0bcf4360b30f83
- https://www.debian.org/security/2022/dsa-5103vendor-advisory, third-party-advisory
- https://lists.debian.org/debian-lts-announce/2022/03/msg00023.htmlmailing-list, third-party-advisory
- https://lists.debian.org/debian-lts-announce/2022/03/msg00024.htmlmailing-list, third-party-advisory
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/GDB3GQVJPXJE7X5C5JN6JAA4XUDWD6E6/vendor-advisory
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/323SNN6ZX7PRJJWP2BUAFLPUAE42XWLZ/vendor-advisory
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/W6K3PR542DXWLEFFMFIDMME4CWMHJRMG/vendor-advisory
- https://www.oracle.com/security-alerts/cpuapr2022.htmlthird-party-advisory
- https://security.netapp.com/advisory/ntap-20220321-0002/third-party-advisory
- https://psirt.global.sonicwall.com/vuln-detail/SNWLID-2022-0002third-party-advisory
- https://www.tenable.com/security/tns-2022-06
- https://www.tenable.com/security/tns-2022-07
- https://www.tenable.com/security/tns-2022-08
- http://seclists.org/fulldisclosure/2022/May/33mailing-list, third-party-advisory
- http://seclists.org/fulldisclosure/2022/May/35mailing-list, third-party-advisory
- http://seclists.org/fulldisclosure/2022/May/38mailing-list, third-party-advisory
- https://www.oracle.com/security-alerts/cpujul2022.htmlthird-party-advisory
- https://support.apple.com/kb/HT213257third-party-advisory
- https://support.apple.com/kb/HT213256third-party-advisory
- https://support.apple.com/kb/HT213255third-party-advisory
- https://www.tenable.com/security/tns-2022-09
- https://security.netapp.com/advisory/ntap-20220429-0005/third-party-advisory
- http://packetstormsecurity.com/files/167344/OpenSSL-1.0.2-1.1.1-3.0-BN_mod_sqrt-Infinite-Loop.htmlthird-party-advisory, vdb-entry
- https://cert-portal.siemens.com/productcert/pdf/ssa-712929.pdfthird-party-advisory
- https://security.gentoo.org/glsa/202210-02third-party-advisory
- https://security.netapp.com/advisory/ntap-20240621-0006/
The CVE record on cve.org NVD's entry
The CVE record is authoritative. Products marked “from the name” were identified from the CNA's free-text names, not a CPE, and are matched less certainly. This product uses the NVD API but is not endorsed or certified by the NVD.