296,147
Total vulnerabilities in the database
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.
Software | From | Fixed in |
---|---|---|
openssl / openssl | 1.0.2a | 1.0.2a.x |
openssl / openssl | 1.0.2e | 1.0.2e.x |
openssl / openssl | 1.0.2j | 1.0.2j.x |
openssl / openssl | 1.0.2b | 1.0.2b.x |
openssl / openssl | 1.0.2g | 1.0.2g.x |
openssl / openssl | 1.0.2h | 1.0.2h.x |
openssl / openssl | 1.0.2c | 1.0.2c.x |
openssl / openssl | 1.0.2-beta3 | 1.0.2-beta3.x |
openssl / openssl | 1.0.2-beta1 | 1.0.2-beta1.x |
openssl / openssl | 1.0.2f | 1.0.2f.x |
openssl / openssl | 1.0.2-beta2 | 1.0.2-beta2.x |
openssl / openssl | 1.0.2i | 1.0.2i.x |
openssl / openssl | 1.0.2d | 1.0.2d.x |
openssl / openssl | 1.0.2k | 1.0.2k.x |
openssl / openssl | 1.0.2l | 1.0.2l.x |
openssl / openssl | 1.0.2m | 1.0.2m.x |
openssl / openssl | 1.0.2zb | 1.0.2zb.x |
openssl / openssl | 1.0.2 | 1.0.2.x |
openssl / openssl | 1.0.2n | 1.0.2n.x |
openssl / openssl | 1.0.2o | 1.0.2o.x |
openssl / openssl | 1.0.2p | 1.0.2p.x |
openssl / openssl | 1.0.2q | 1.0.2q.x |
openssl / openssl | 1.0.2r | 1.0.2r.x |
openssl / openssl | 1.0.2s | 1.0.2s.x |
openssl / openssl | 1.0.2t | 1.0.2t.x |
openssl / openssl | 1.0.2u | 1.0.2u.x |
openssl / openssl | 1.0.2v | 1.0.2v.x |
openssl / openssl | 1.0.2w | 1.0.2w.x |
openssl / openssl | 1.0.2x | 1.0.2x.x |
openssl / openssl | 1.0.2y | 1.0.2y.x |
openssl / openssl | 1.0.2za | 1.0.2za.x |
openssl / openssl | 1.1.1 | 1.1.1.x |
openssl / openssl | 1.1.1-pre1 | 1.1.1-pre1.x |
openssl / openssl | 1.1.1-pre2 | 1.1.1-pre2.x |
openssl / openssl | 1.1.1-pre3 | 1.1.1-pre3.x |
openssl / openssl | 1.1.1-pre4 | 1.1.1-pre4.x |
openssl / openssl | 1.1.1-pre5 | 1.1.1-pre5.x |
openssl / openssl | 1.1.1-pre6 | 1.1.1-pre6.x |
openssl / openssl | 1.1.1-pre7 | 1.1.1-pre7.x |
openssl / openssl | 1.1.1-pre8 | 1.1.1-pre8.x |
openssl / openssl | 1.1.1-pre9 | 1.1.1-pre9.x |
openssl / openssl | 1.1.1a | 1.1.1a.x |
openssl / openssl | 1.1.1b | 1.1.1b.x |
openssl / openssl | 1.1.1c | 1.1.1c.x |
openssl / openssl | 1.1.1d | 1.1.1d.x |
openssl / openssl | 1.1.1e | 1.1.1e.x |
openssl / openssl | 1.1.1f | 1.1.1f.x |
openssl / openssl | 1.1.1g | 1.1.1g.x |
openssl / openssl | 1.1.1h | 1.1.1h.x |
openssl / openssl | 1.1.1i | 1.1.1i.x |
openssl / openssl | 1.1.1j | 1.1.1j.x |
openssl / openssl | 1.1.1k | 1.1.1k.x |
openssl / openssl | 1.1.1l | 1.1.1l.x |
openssl / openssl | 3.1.0 | 3.1.2 |
openssl / openssl | 3.0.0 | 3.0.10 |
openssl / openssl | 1.1.1m | 1.1.1m.x |
openssl / openssl | 1.1.1n | 1.1.1n.x |
openssl / openssl | 1.1.1o | 1.1.1o.x |
openssl / openssl | 1.1.1p | 1.1.1p.x |
openssl / openssl | 1.1.1q | 1.1.1q.x |
openssl / openssl | 1.1.1r | 1.1.1r.x |
openssl / openssl | 1.1.1s | 1.1.1s.x |
openssl / openssl | 1.1.1t | 1.1.1t.x |
openssl / openssl | 1.1.1u | 1.1.1u.x |
openssl / openssl | 1.0.2zc | 1.0.2zc.x |
openssl / openssl | 1.0.2zd | 1.0.2zd.x |
openssl / openssl | 1.0.2ze | 1.0.2ze.x |
openssl / openssl | 1.0.2zf | 1.0.2zf.x |
openssl / openssl | 1.0.2zg | 1.0.2zg.x |
openssl / openssl | 1.0.2zh | 1.0.2zh.x |