← Vulnerability feed

Vulnerability record · CVE-2016-0701 · published 15 February 2016

CVE-2016-0701: OpenSSL DH_check_pub_key fails to validate DH primes, exposing private exponent

OOpenssl · Openssl

OpenSSL 1.0.2 before 1.0.2f does not verify that Diffie-Hellman primes are appropriate for key exchange in DH_check_pub_key. A peer that selects an inappropriate prime (as demonstrated with a number in an X9.42 file) can weaken the DH exchange. This matters because it can lead to recovery of the private DH exponent, undermining the confidentiality of the session key.

3.7 CVSS 3.0 Low EPSS 84% · top 0.3% CWE-200 · Information exposure
3.7CVSS 3.0 base score, v2 2.6
84%EPSS exploitation probability, 30 days
NoNot in CISA KEV
1Affected product versions listed by NVD
48References
17 Jun 2026Last modified by NVD

Description

The DH_check_pub_key function in crypto/dh/dh_check.c in OpenSSL 1.0.2 before 1.0.2f does not ensure that prime numbers are appropriate for Diffie-Hellman (DH) key exchange, which makes it easier for remote attackers to discover a private DH exponent by making multiple handshakes with a peer that chose an inappropriate number, as demonstrated by a number in an X9.42 file.

CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N

Automated analysis

Generated by VULONE's analysis model from the NVD record, CISA KEV and EPSS data on 18 September 2026. Confidence: high.

medium priorityThe CVSS 3.0 score is low (3.7) and exploitation requires a privileged network position and high attack complexity, but the very high EPSS percentile and broad OpenSSL deployment warrant prompt patching.

What it is

OpenSSL 1.0.2 before 1.0.2f does not verify that Diffie-Hellman primes are appropriate for key exchange in DH_check_pub_key. A peer that selects an inappropriate prime (as demonstrated with a number in an X9.42 file) can weaken the DH exchange. This matters because it can lead to recovery of the private DH exponent, undermining the confidentiality of the session key.

Impact

An attacker who can act as the DH peer may recover the victim's private DH exponent, allowing decryption of traffic protected by that key exchange. The CVSS 3.0 vector limits the impact to low confidentiality loss with no integrity or availability effect.

Attack surface

Reachable over the network via the TLS/DH handshake; no authentication or user interaction is required per the CVSS vector (AV:N/AC:H/PR:N/UI:N). The attacker must be positioned as the handshake peer and must supply an inappropriate DH prime, which the description notes can be done through an X9.42 file.

Exploitation

Not listed in CISA KEV and no reference is tagged as exploit code, but EPSS is very high (0.83645 probability, 99.673 percentile), indicating elevated predicted exploitation activity. The record does not confirm public exploit availability.

What to do

  • Upgrade OpenSSL to 1.0.2f or later, or apply the vendor commits 878e2c5b13010329c203f309ed0c8f2113f85648 and c5b831f21d0d29d1e517d139d9d101763f60c9a2.
  • Apply the distribution or vendor updates referenced in the OpenSSL security advisory 20160128 and the linked Ubuntu, Fedora, openSUSE, Gentoo, Oracle, HPE, Juniper and Siemens advisories.
  • Disable or avoid static DH cipher suites where possible and prefer ECDHE or ephemeral DH with validated parameters.
  • Enforce minimum DH parameter sizes and reject non-standard or X9.42-supplied primes in TLS configurations.
  • Inventory OpenSSL 1.0.2 versions across servers and embedded products, since the flaw affects the library wherever DH key exchange is used.

Detection

  • Search TLS server inventories and package manifests for OpenSSL versions in the 1.0.2 branch prior to 1.0.2f.
  • Monitor TLS handshakes for unusually small or non-standard DH primes and for peers presenting X9.42-style DH parameters.
  • Review logs for repeated DH handshakes from the same peer, which the description identifies as the mechanism for exponent recovery.
  • Track vendor advisories and patch status for products embedding OpenSSL 1.0.2 (Oracle, HPE, Juniper, Siemens) to confirm remediation.

This assessment is produced automatically and is not human-reviewed. Verify against the vendor advisory before acting on it.

Affected products

1 vulnerable configurations from NVD's CPE data, grouped by vendor and product.

References

LinkTags
http://intothesymmetry.blogspot.com/2016/01/openssl-key-recovery-attack-on-dh-small.html
http://kb.juniper.net/InfoCenter/index?page=content&id=JSA10759
http://lists.fedoraproject.org/pipermail/package-announce/2016-January/176373.html
http://lists.opensuse.org/opensuse-security-announce/2016-03/msg00009.html
http://www.openssl.org/news/secadv/20160128.txt Vendor Advisory
http://www.oracle.com/technetwork/security-advisory/cpujul2016-2881720.html
http://www.oracle.com/technetwork/security-advisory/cpuoct2017-3236626.html
http://www.securityfocus.com/bid/82233
http://www.securityfocus.com/bid/91787
http://www.securitytracker.com/id/1034849
http://www.ubuntu.com/usn/USN-2883-1
https://cert-portal.siemens.com/productcert/pdf/ssa-412672.pdf
https://git.openssl.org/?p=openssl.git%3Ba=commit%3Bh=878e2c5b13010329c203f309ed0c8f2113f85648
https://git.openssl.org/?p=openssl.git%3Ba=commit%3Bh=c5b831f21d0d29d1e517d139d9d101763f60c9a2
https://h20566.www2.hpe.com/hpsc/doc/public/display?docLocale=en_US&docId=emr_na-hpesbhf03724en_us
https://h20566.www2.hpe.com/portal/site/hpsc/public/kb/docDisplay?docId=emr_na-c05164821
https://h20566.www2.hpe.com/portal/site/hpsc/public/kb/docDisplay?docId=emr_na-c05390893
https://security.gentoo.org/glsa/201601-05
https://www.kb.cert.org/vuls/id/257823
https://www.oracle.com/security-alerts/cpuapr2020.html
https://www.oracle.com/security-alerts/cpujan2020.html
https://www.oracle.com/security-alerts/cpujul2020.html
https://www.oracle.com/security-alerts/cpuoct2020.html
https://www.oracle.com/technetwork/security-advisory/cpujul2019-5072835.html
http://intothesymmetry.blogspot.com/2016/01/openssl-key-recovery-attack-on-dh-small.html
http://kb.juniper.net/InfoCenter/index?page=content&id=JSA10759
http://lists.fedoraproject.org/pipermail/package-announce/2016-January/176373.html
http://lists.opensuse.org/opensuse-security-announce/2016-03/msg00009.html
http://www.openssl.org/news/secadv/20160128.txt Vendor Advisory
http://www.oracle.com/technetwork/security-advisory/cpujul2016-2881720.html
http://www.oracle.com/technetwork/security-advisory/cpuoct2017-3236626.html
http://www.securityfocus.com/bid/82233
http://www.securityfocus.com/bid/91787
http://www.securitytracker.com/id/1034849
http://www.ubuntu.com/usn/USN-2883-1
https://cert-portal.siemens.com/productcert/pdf/ssa-412672.pdf
https://git.openssl.org/?p=openssl.git%3Ba=commit%3Bh=878e2c5b13010329c203f309ed0c8f2113f85648
https://git.openssl.org/?p=openssl.git%3Ba=commit%3Bh=c5b831f21d0d29d1e517d139d9d101763f60c9a2
https://h20566.www2.hpe.com/hpsc/doc/public/display?docLocale=en_US&docId=emr_na-hpesbhf03724en_us
https://h20566.www2.hpe.com/portal/site/hpsc/public/kb/docDisplay?docId=emr_na-c05164821

Track CVE-2016-0701 inside VULONE

Watch it alongside the ransomware crews, C2 infrastructure and forum chatter that reference it, query it through the API and pull it into your SIEM over TAXII.

Start free Open in platform

Related vulnerabilities

Same products first, then exploited flaws of the same weakness class.

7.5CVE-2014-0160OpenSSL TLS/DTLS Heartbeat Extension Out-of-Bounds Read (Heartbleed)OpenSSL 1.0.1 before 1.0.1g mishandles Heartbeat Extension packets in its TLS and DTLS implementations, causing an out-of-bounds read of process memo…KEVEPSS 100%analysed10.0CVE-2009-3245Openssl improper input validation vulnerabilityOpenSSL before 0.9.8m does not check for a NULL return value from bn_wexpand function calls in (1) crypto/bn/bn_div.c, (2) crypto/bn/bn_gf2m.c, (3) c…EPSS 6.5%10.0CVE-2006-3738OpenSSL SSL_get_shared_ciphers buffer overflow via long cipher listOpenSSL versions before 0.9.7l and 0.9.8d contain a buffer overflow in the SSL_get_shared_ciphers function, triggered by a long list of ciphers. The …EPSS 49%analysed9.8CVE-2026-63073Openssl vulnerabilityIssue summary: OpenSSL CMP response validation passed an unexpected response sender distinguished name directly as the format string to `ERR_raise_da…EPSS 1.2%9.8CVE-2026-31789Openssl out-of-bounds write vulnerabilityIssue summary: Converting an excessively large OCTET STRING value to a hexadecimal string leads to a heap buffer overflow on 32 bit platforms. Impact…EPSS 0.33%9.8CVE-2022-2274OpenSSL 3.0.4 RSA AVX512IFMA memory corruptionOpenSSL 3.0.4 introduced a bug in the RSA implementation for X86_64 CPUs supporting AVX512IFMA instructions, causing 2048-bit private key operations …EPSS 46%analysed9.8CVE-2021-3711OpenSSL SM2 decryption buffer overflowOpenSSL's SM2 decryption code miscalculates the output buffer size needed by EVP_PKEY_decrypt(), so the first sizing call can return a value smaller …EPSS 88%analysed9.8CVE-2016-6309OpenSSL 1.1.0a statem use-after-free on realloc in TLS session handlingOpenSSL 1.1.0a's statem/statem.c fails to account for memory-block movement after a realloc call, leaving a dangling pointer that can be used after f…EPSS 70%analysed

Source: NIST National Vulnerability Database (record CVE-2016-0701), CISA KEV, FIRST EPSS (scores of 2026-09-24). This page is refreshed as NVD updates the record.