CVE-2024-4603

Source
https://nvd.nist.gov/vuln/detail/CVE-2024-4603
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2024-4603.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2024-4603
Related
Published
2024-05-16T16:15:10Z
Modified
2024-10-14T16:50:21.838930Z
Summary
[none]
Details

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

Impact summary: Applications that use the functions EVPPKEYparamcheck() or EVPPKEYpubliccheck() to check a DSA public key or DSA 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 functions EVPPKEYparamcheck() or EVPPKEYpubliccheck() perform various checks on DSA parameters. Some of those computations take a long time if the modulus (p parameter) is too large.

Trying to use a very large modulus is slow and OpenSSL will not allow using public keys with a modulus which is over 10,000 bits in length for signature verification. However the key and parameter check functions do not limit the modulus size when performing the checks.

An application that calls EVPPKEYparamcheck() or EVPPKEYpubliccheck() and supplies a key or parameters obtained from an untrusted source could be vulnerable to a Denial of Service attack.

These functions are not called by OpenSSL itself on untrusted DSA keys so only applications that directly call these functions may be vulnerable.

Also vulnerable are the OpenSSL pkey 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 affected by this issue.

References

Affected packages

Alpine:v3.17 / openssl

Package

Name
openssl
Purl
pkg:apk/alpine/openssl?arch=source

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
3.0.13-r0

Affected versions

1.*

1.1.1-r0
1.1.1-r1
1.1.1-r2
1.1.1-r3
1.1.1-r4
1.1.1-r5
1.1.1a-r0
1.1.1a-r1
1.1.1b-r0
1.1.1b-r1
1.1.1c-r0
1.1.1c-r1
1.1.1d-r1
1.1.1d-r2
1.1.1d-r3
1.1.1d-r4
1.1.1d-r5
1.1.1e-r0
1.1.1f-r0
1.1.1g-r0
1.1.1h-r0
1.1.1i-r0
1.1.1j-r0
1.1.1k-r0
1.1.1k-r1
1.1.1l-r0

3.*

3.0.0-r0
3.0.0-r1
3.0.0-r2
3.0.0-r3
3.0.0-r4
3.0.1-r0
3.0.1-r1
3.0.2-r0
3.0.3-r0
3.0.5-r0
3.0.5-r1
3.0.5-r2
3.0.5-r3
3.0.6-r0
3.0.7-r0
3.0.7-r2
3.0.8-r0
3.0.8-r1
3.0.8-r2
3.0.8-r3
3.0.8-r4
3.0.9-r0
3.0.9-r1
3.0.9-r2
3.0.9-r3
3.0.10-r0
3.0.11-r0
3.0.12-r0
3.0.12-r1
3.0.12-r2
3.0.12-r3
3.0.12-r4
3.0.12-r5

Alpine:v3.18 / openssl

Package

Name
openssl
Purl
pkg:apk/alpine/openssl?arch=source

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
3.1.5-r0

Affected versions

1.*

1.1.1-r0
1.1.1-r1
1.1.1-r2
1.1.1-r3
1.1.1-r4
1.1.1-r5
1.1.1a-r0
1.1.1a-r1
1.1.1b-r0
1.1.1b-r1
1.1.1c-r0
1.1.1c-r1
1.1.1d-r1
1.1.1d-r2
1.1.1d-r3
1.1.1d-r4
1.1.1d-r5
1.1.1e-r0
1.1.1f-r0
1.1.1g-r0
1.1.1h-r0
1.1.1i-r0
1.1.1j-r0
1.1.1k-r0
1.1.1k-r1
1.1.1l-r0

3.*

3.0.0-r0
3.0.0-r1
3.0.0-r2
3.0.0-r3
3.0.0-r4
3.0.1-r0
3.0.1-r1
3.0.2-r0
3.0.3-r0
3.0.5-r0
3.0.5-r1
3.0.5-r2
3.0.5-r3
3.0.6-r0
3.0.7-r0
3.0.7-r1
3.0.7-r2
3.0.8-r0
3.0.8-r1
3.1.0-r0
3.1.0-r1
3.1.0-r2
3.1.0-r3
3.1.0-r4
3.1.1-r0
3.1.1-r1
3.1.1-r2
3.1.1-r3
3.1.2-r0
3.1.3-r0
3.1.4-r0
3.1.4-r1
3.1.4-r2
3.1.4-r3
3.1.4-r4
3.1.4-r5
3.1.4-r6

Alpine:v3.19 / openssl

Package

Name
openssl
Purl
pkg:apk/alpine/openssl?arch=source

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
3.1.5-r0

Affected versions

1.*

1.1.1-r0
1.1.1-r1
1.1.1-r2
1.1.1-r3
1.1.1-r4
1.1.1-r5
1.1.1a-r0
1.1.1a-r1
1.1.1b-r0
1.1.1b-r1
1.1.1c-r0
1.1.1c-r1
1.1.1d-r1
1.1.1d-r2
1.1.1d-r3
1.1.1d-r4
1.1.1d-r5
1.1.1e-r0
1.1.1f-r0
1.1.1g-r0
1.1.1h-r0
1.1.1i-r0
1.1.1j-r0
1.1.1k-r0
1.1.1k-r1
1.1.1l-r0

3.*

3.0.0-r0
3.0.0-r1
3.0.0-r2
3.0.0-r3
3.0.0-r4
3.0.1-r0
3.0.1-r1
3.0.2-r0
3.0.3-r0
3.0.5-r0
3.0.5-r1
3.0.5-r2
3.0.5-r3
3.0.6-r0
3.0.7-r0
3.0.7-r1
3.0.7-r2
3.0.8-r0
3.0.8-r1
3.1.0-r0
3.1.0-r1
3.1.0-r2
3.1.0-r3
3.1.0-r4
3.1.0-r5
3.1.1-r0
3.1.1-r1
3.1.1-r2
3.1.1-r3
3.1.2-r0
3.1.3-r0
3.1.4-r0
3.1.4-r1
3.1.4-r2
3.1.4-r3
3.1.4-r4
3.1.4-r5
3.1.4-r6

Alpine:v3.20 / openssl

Package

Name
openssl
Purl
pkg:apk/alpine/openssl?arch=source

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
3.3.0-r2

Affected versions

1.*

1.1.1-r0
1.1.1-r1
1.1.1-r2
1.1.1-r3
1.1.1-r4
1.1.1-r5
1.1.1a-r0
1.1.1a-r1
1.1.1b-r0
1.1.1b-r1
1.1.1c-r0
1.1.1c-r1
1.1.1d-r1
1.1.1d-r2
1.1.1d-r3
1.1.1d-r4
1.1.1d-r5
1.1.1e-r0
1.1.1f-r0
1.1.1g-r0
1.1.1h-r0
1.1.1i-r0
1.1.1j-r0
1.1.1k-r0
1.1.1k-r1
1.1.1l-r0

3.*

3.0.0-r0
3.0.0-r1
3.0.0-r2
3.0.0-r3
3.0.0-r4
3.0.1-r0
3.0.1-r1
3.0.2-r0
3.0.3-r0
3.0.5-r0
3.0.5-r1
3.0.5-r2
3.0.5-r3
3.0.6-r0
3.0.7-r0
3.0.7-r1
3.0.7-r2
3.0.8-r0
3.0.8-r1
3.1.0-r0
3.1.0-r1
3.1.0-r2
3.1.0-r3
3.1.0-r4
3.1.0-r5
3.1.1-r0
3.1.1-r1
3.1.1-r2
3.1.1-r3
3.1.2-r0
3.1.3-r0
3.1.4-r0
3.1.4-r1
3.1.4-r2
3.1.4-r3
3.1.4-r4
3.1.4-r5
3.1.5-r5
3.2.1-r0
3.2.1-r1
3.2.1-r2
3.3.0-r0
3.3.0-r1

Debian:12 / openssl

Package

Name
openssl
Purl
pkg:deb/debian/openssl?arch=source

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
3.0.14-1~deb12u1

Affected versions

3.*

3.0.9-1
3.0.10-1~deb12u1
3.0.10-1
3.0.11-1~deb12u1
3.0.11-1~deb12u2
3.0.11-1
3.0.12-1
3.0.12-2
3.0.13-1~deb12u1
3.0.13-1~deb12u2

Ecosystem specific

{
    "urgency": "not yet assigned"
}

Debian:13 / openssl

Package

Name
openssl
Purl
pkg:deb/debian/openssl?arch=source

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
3.2.2-1

Affected versions

3.*

3.0.9-1
3.0.10-1~deb12u1
3.0.10-1
3.0.11-1~deb12u1
3.0.11-1~deb12u2
3.0.11-1
3.0.12-1
3.0.12-2
3.0.13-1~deb12u1
3.0.13-1~deb12u2
3.0.14-1~deb12u1
3.0.14-1~deb12u2
3.1.0-1
3.1.1-1
3.1.2-1
3.1.3-1
3.1.4-1
3.1.4-2
3.1.5-1
3.1.5-1.1
3.1.5-1.1+hurd.1
3.2.0-1
3.2.0-2
3.2.1-1
3.2.1-1.1~exp1
3.2.1-2
3.2.1-3

Ecosystem specific

{
    "urgency": "not yet assigned"
}

Git / github.com/openssl/openssl

Affected ranges

Type
GIT
Repo
https://github.com/openssl/openssl
Events

Affected versions

Other

BEFORE_engine
OpenSSL_0_9_1c
OpenSSL_0_9_2b
OpenSSL_0_9_3
OpenSSL_0_9_3a
OpenSSL_0_9_3beta2
OpenSSL_0_9_4
OpenSSL_0_9_5a
OpenSSL_0_9_5a-beta1
OpenSSL_0_9_5a-beta2
OpenSSL_0_9_5beta1
OpenSSL_0_9_5beta2
OpenSSL_0_9_6-beta3
OpenSSL_1_1_0-pre1
OpenSSL_1_1_0-pre2
OpenSSL_1_1_0-pre3
OpenSSL_1_1_0-pre4
OpenSSL_1_1_0-pre5
OpenSSL_1_1_0-pre6
OpenSSL_1_1_1
OpenSSL_1_1_1-pre1
OpenSSL_1_1_1-pre2
OpenSSL_1_1_1-pre3
OpenSSL_1_1_1-pre4
OpenSSL_1_1_1-pre5
OpenSSL_1_1_1-pre6
OpenSSL_1_1_1-pre7
OpenSSL_1_1_1-pre8
OpenSSL_1_1_1-pre9
master-post-auto-reformat
master-post-reformat
master-pre-auto-reformat
master-pre-reformat

openssl-3.*

openssl-3.0.0
openssl-3.0.0-alpha1
openssl-3.0.0-alpha10
openssl-3.0.0-alpha11
openssl-3.0.0-alpha12
openssl-3.0.0-alpha13
openssl-3.0.0-alpha14
openssl-3.0.0-alpha15
openssl-3.0.0-alpha16
openssl-3.0.0-alpha17
openssl-3.0.0-alpha2
openssl-3.0.0-alpha3
openssl-3.0.0-alpha4
openssl-3.0.0-alpha5
openssl-3.0.0-alpha6
openssl-3.0.0-alpha7
openssl-3.0.0-alpha8
openssl-3.0.0-alpha9
openssl-3.0.0-beta1
openssl-3.0.0-beta2
openssl-3.0.1
openssl-3.0.10
openssl-3.0.11
openssl-3.0.12
openssl-3.0.13
openssl-3.0.2
openssl-3.0.3
openssl-3.0.4
openssl-3.0.5
openssl-3.0.6
openssl-3.0.7
openssl-3.0.8
openssl-3.0.9
openssl-3.1.0
openssl-3.1.0-alpha1
openssl-3.1.0-beta1
openssl-3.1.1
openssl-3.1.2
openssl-3.1.3
openssl-3.1.4
openssl-3.1.5
openssl-3.2.0
openssl-3.2.0-alpha1
openssl-3.2.0-alpha2
openssl-3.2.0-beta1
openssl-3.2.1
openssl-3.3.0
openssl-3.3.0-alpha1
openssl-3.3.0-beta1