CVE-2023-3817CWE-606CWE-834

CVE-2023-3817

Medium · published July 31, 2023

CVSS v3.1
5.3
EPSS
3%
Percentile
87.4
In the wild
Unconfirmed
What it is

Issue summary: Checking excessively long DH keys or parameters may be very slow.

Impact summary: Applications that use the functions DH_check(), DH_check_ex()

or EVP_PKEY_param_check() to check a DH key or DH parameters may experience long

delays. Where the key or parameters that are being checked have been obtained

from an untrusted source this may lead to a Denial of Service.

The function DH_check() performs various checks on DH parameters. After fixing

CVE-2023-3446 it was discovered that a large q parameter value can also trigger

an overly long computation during some of these checks. A correct q value,

if present, cannot be larger than the modulus p parameter, thus it is

unnecessary to perform these checks if q is larger than p.

An application that calls DH_check() and supplies a key or parameters obtained

from an untrusted source could be vulnerable to a Denial of Service attack.

The function DH_check() is itself called by a number of other OpenSSL functions.

An application calling any of those other functions may similarly be affected.

The other functions affected by this are DH_check_ex() and

EVP_PKEY_param_check().

Also vulnerable are the OpenSSL dhparam and pkeyparam command line applications

when using the "-check" option.

The OpenSSL SSL/TLS implementation is not affected by this issue.

The OpenSSL 3.0 and 3.1 FIPS providers are not affected by this issue.

The record
Technical detail
CVSS v3.1
5.3 · MEDIUM
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
CVSS v4.0
Not supplied
EPSS
0.03047 · 87.4th percentile
Weaknesses
CWE-606 · Unchecked Input for Loop Condition; CWE-834 · Excessive Iteration
Published
2023-07-31T20:15Z
Affected products (70)
ProductVersionsFixed in
openssl/openssl≥ 3.0.0, < 3.0.103.0.10
openssl/openssl≥ 3.1.0, < 3.1.23.1.2
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
openssl/opensslall versions—
References (24)
https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=6a1eb62c29db6cb5eec707f9338aee00f44e26f5 · [email protected]https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=869ad69aadd985c7b8ca6f4e5dd0eb274c9f3644 · [email protected]https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=9002fd07327a91f35ba6c1307e71fa6fd4409b7f · [email protected]https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=91ddeba0f2269b017dc06c46c993a788974b1aa5 · [email protected]https://www.openssl.org/news/secadv/20230731.txt · [email protected]http://seclists.org/fulldisclosure/2023/Jul/43 · af854a3a-2127-422b-91ae-364da2661108http://www.openwall.com/lists/oss-security/2023/07/31/1 · af854a3a-2127-422b-91ae-364da2661108http://www.openwall.com/lists/oss-security/2023/09/22/11 · af854a3a-2127-422b-91ae-364da2661108http://www.openwall.com/lists/oss-security/2023/09/22/9 · af854a3a-2127-422b-91ae-364da2661108http://www.openwall.com/lists/oss-security/2023/11/06/2 · af854a3a-2127-422b-91ae-364da2661108https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=6a1eb62c29db6cb5eec707f9338aee00f44e26f5 · af854a3a-2127-422b-91ae-364da2661108https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=869ad69aadd985c7b8ca6f4e5dd0eb274c9f3644 · af854a3a-2127-422b-91ae-364da2661108https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=9002fd07327a91f35ba6c1307e71fa6fd4409b7f · af854a3a-2127-422b-91ae-364da2661108https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=91ddeba0f2269b017dc06c46c993a788974b1aa5 · af854a3a-2127-422b-91ae-364da2661108https://lists.debian.org/debian-lts-announce/2023/08/msg00019.html · af854a3a-2127-422b-91ae-364da2661108https://security.gentoo.org/glsa/202402-08 · af854a3a-2127-422b-91ae-364da2661108https://security.netapp.com/advisory/ntap-20230818-0014/ · af854a3a-2127-422b-91ae-364da2661108https://security.netapp.com/advisory/ntap-20231027-0008/ · af854a3a-2127-422b-91ae-364da2661108https://security.netapp.com/advisory/ntap-20240621-0006/ · af854a3a-2127-422b-91ae-364da2661108https://www.openssl.org/news/secadv/20230731.txt · af854a3a-2127-422b-91ae-364da2661108https://cert-portal.siemens.com/productcert/html/ssa-099606.html · 0b142b55-0307-4c5a-b3c9-f314f3fb7c5ehttps://cert-portal.siemens.com/productcert/html/ssa-398330.html · 0b142b55-0307-4c5a-b3c9-f314f3fb7c5ehttps://cert-portal.siemens.com/productcert/html/ssa-915275.html · 0b142b55-0307-4c5a-b3c9-f314f3fb7c5ehttps://cert-portal.siemens.com/productcert/html/ssa-943925.html · 0b142b55-0307-4c5a-b3c9-f314f3fb7c5e
EPSS history
Timeline
  • 31 JUL 15:34Z
    Excessive time spent checking DH q parameter value
    cvelistv5