CVE-2024-45157
An issue was discovered in Mbed TLS before 2.28.9 and 3.x before 3.6.1, in which the user...
An issue was discovered in Mbed TLS before 2.28.9 and 3.x before 3.6.1, in which the user-selected algorithm is not used. Unlike previously documented, enabling MBEDTLS_PSA_HMAC_DRBG_MD_TYPE does not cause the PSA subsystem to use HMAC_DRBG: it uses HMAC_DRBG only when MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG and MBEDTLS_CTR_DRBG_C are disabled.
Attack profile
How easy it is to exploit
- Attack vector
- Local
- Complexity
- High
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- None
- Availability
- None
Exploit likelihood
What each source reports
NVD Score used
5.1
An issue was discovered in Mbed TLS before 2.28.9 and 3.x before 3.6.1, in which the user-selected algorithm is not used. Unlike previously documented, enabling MBEDTLS_PSA_HMAC_DRBG_MD_TYPE does not cause the PSA subsystem to use HMAC_DRBG: it uses HMAC_DRBG only when MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG and MBEDTLS_CTR_DRBG_C are disabled.
- Record
CVE-2024-45157- CVSS 3.1
- 5.1 Medium
CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-696
- Updated
- 2026-11-02
CVE List
5.1
An issue was discovered in Mbed TLS before 2.28.9 and 3.x before 3.6.1, in which the user-selected algorithm is not used. Unlike previously documented, enabling MBEDTLS_PSA_HMAC_DRBG_MD_TYPE does not cause the PSA subsystem to use HMAC_DRBG: it uses HMAC_DRBG only when MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG and MBEDTLS_CTR_DRBG_C are disabled.
- Record
CVE-2024-45157- CVSS 3.1
- 5.1 Medium
CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-696
- Updated
- 2026-11-02
EUVDEUVD-2024-41337
5.1
An issue was discovered in Mbed TLS before 2.28.9 and 3.x before 3.6.1, in which the user-selected algorithm is not used. Unlike previously documented, enabling MBEDTLS_PSA_HMAC_DRBG_MD_TYPE does not cause the PSA subsystem to use HMAC_DRBG: it uses HMAC_DRBG only when MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG and MBEDTLS_CTR_DRBG_C are disabled.
- Record
EUVD-2024-41337- CVSS 3.1
- 5.1 Medium
CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-cvp8-hm87-hr8x
5.1
An issue was discovered in Mbed TLS before 2.28.9 and 3.x before 3.6.1, in which the user...
An issue was discovered in Mbed TLS before 2.28.9 and 3.x before 3.6.1, in which the user-selected algorithm is not used. Unlike previously documented, enabling MBEDTLS_PSA_HMAC_DRBG_MD_TYPE does not cause the PSA subsystem to use HMAC_DRBG: it uses HMAC_DRBG only when MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG and MBEDTLS_CTR_DRBG_C are disabled.
- Record
GHSA-cvp8-hm87-hr8x- CVSS 3.1
- 5.1 Medium
CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-696
- Updated
- 2026-11-02
OSVALPINE-CVE-2024-45157
5.1
An issue was discovered in Mbed TLS before 2.28.9 and 3.x before 3.6.1, in which the user-selected algorithm is not used. Unlike previously documented, enabling MBEDTLS_PSA_HMAC_DRBG_MD_TYPE does not cause the PSA subsystem to use HMAC_DRBG: it uses HMAC_DRBG only when MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG and MBEDTLS_CTR_DRBG_C are disabled.
- Record
ALPINE-CVE-2024-45157- CVSS 3.1
- 5.1 Medium
CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-03
OSV
5.1
An issue was discovered in Mbed TLS before 2.28.9 and 3.x before 3.6.1, in which the user-selected algorithm is not used. Unlike previously documented, enabling MBEDTLS_PSA_HMAC_DRBG_MD_TYPE does not cause the PSA subsystem to use HMAC_DRBG: it uses HMAC_DRBG only when MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG and MBEDTLS_CTR_DRBG_C are disabled.
- Record
CVE-2024-45157- CVSS 3.1
- 5.1 Medium
CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
Show 5 moreShow less
OSVDEBIAN-CVE-2024-45157
5.1
An issue was discovered in Mbed TLS before 2.28.9 and 3.x before 3.6.1, in which the user-selected algorithm is not used. Unlike previously documented, enabling MBEDTLS_PSA_HMAC_DRBG_MD_TYPE does not cause the PSA subsystem to use HMAC_DRBG: it uses HMAC_DRBG only when MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG and MBEDTLS_CTR_DRBG_C are disabled.
- Record
DEBIAN-CVE-2024-45157- CVSS 3.1
- 5.1 Medium
CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
OSVJLSEC-2025-226
5.1
An issue was discovered in Mbed TLS before 2.28.9 and 3.x before 3.6.1, in which the user-selected...
An issue was discovered in Mbed TLS before 2.28.9 and 3.x before 3.6.1, in which the user-selected algorithm is not used. Unlike previously documented, enabling MBEDTLS_PSA_HMAC_DRBG_MD_TYPE does not cause the PSA subsystem to use HMAC_DRBG: it uses HMAC_DRBG only when MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG and MBEDTLS_CTR_DRBG_C are disabled.
- Record
JLSEC-2025-226- CVSS 3.1
- 5.1 Medium
CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
OSVUBUNTU-CVE-2024-45157
5.1
An issue was discovered in Mbed TLS before 2.28.9 and 3.x before 3.6.1, in which the user-selected algorithm is not used. Unlike previously documented, enabling MBEDTLS_PSA_HMAC_DRBG_MD_TYPE does not cause the PSA subsystem to use HMAC_DRBG: it uses HMAC_DRBG only when MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG and MBEDTLS_CTR_DRBG_C are disabled.
- Record
UBUNTU-CVE-2024-45157- CVSS 3.1
- 5.1 Medium
CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
OSVopenSUSE-SU-2024:14304-1 No score
libmbedcrypto7-2.28.9-1.1 on GA media
These are all security issues fixed in the libmbedcrypto7-2.28.9-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2024:14304-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2026:21145-1 No score
Security update for mbedtls-2
This update for mbedtls-2 fixes the following issues:
Changes in mbedtls-2:
-
Enable SRTP and DTLS protocols needed by some software.
-
Update to version 2.28.10: Default behavior changes
- In TLS clients, if mbedtls_ssl_set_hostname() has not been called, mbedtls_ssl_handshake() now fails with MBEDTLS_ERR_SSL_CERTIFICATE_VERIFICATION_WITHOUT_HOSTNAME if certificate-based authentication of the server is attempted. This is because authenticating a server without knowing what name to expect is usually insecure. To restore the old behavior, either call mbedtls_ssl_set_hostname() with NULL as the hostname, or enable the new compile-time option MBEDTLS_SSL_CLI_ALLOW_WEAK_CERTIFICATE_VERIFICATION_WITHOUT_HOSTNAME. The content of ssl->hostname after mbedtls_ssl_set_hostname(ssl, NULL) has changed, see the documentation of the hostname field in the mbedtls_ssl_context struct type for details. Security
- Note that TLS clients should generally call mbedtls_ssl_set_hostname() if they use certificate authentication (i.e. not pre-shared keys). Otherwise, in many scenarios, the server could be impersonated. The library will now prevent the handshake and return MBEDTLS_ERR_SSL_CERTIFICATE_VERIFICATION_WITHOUT_HOSTNAME if mbedtls_ssl_set_hostname() has not been called. CVE-2025-27809 (boo#1240051)
- Zeroize temporary heap buffers used in PSA operations.
- Fix a vulnerability in the TLS 1.2 handshake. If memory allocation failed or there was a cryptographic hardware failure when calculating the Finished message, it could be calculated incorrectly. This would break the security guarantees of the TLS handshake. CVE-2025-27810 (boo#1240052) Bugfix
- Use 'mbedtls_net_close' instead of 'close' in 'mbedtls_net_bind' and 'mbedtls_net_connect' to prevent possible double close fd problems. Fixes gh#Mbed-TLS/mbedtls#9711.
- Fix compilation on MS-DOS DJGPP. Fixes gh#Mbed-TLS/mbedtls#9813.
- Fix missing constraints on the AES-NI inline assembly which is used on GCC-like compilers when building AES for generic x86_64 targets. This may have resulted in incorrect code with some compilers, depending on optimizations. Fixes gh#Mbed-TLS/mbedtls#9819.
- Fix issue where psa_key_derivation_input_integer() is not detecting bad state after an operation has been aborted.
- Fix definition of MBEDTLS_PRINTF_SIZET to prevent runtime crashes that occurred whenever SSL debugging was enabled on a copy of Mbed TLS built with Visual Studio 2013 or MinGW. Fixes gh#Mbed-TLS/mbedtls#10017.
- Remove Everest Visual Studio 2010 compatibility headers, which could shadow standard CRT headers inttypes.h and stdbool.h with incomplete implementatios if placed on the include path, eg. when building Mbed TLS with the .sln file shipped with the project.
- Record
openSUSE-SU-2026:21145-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
mbedtlsAlpine:v3.17 |
before 2.28.9-r0 | 2.28.9-r0 |
mbedtlsAlpine:v3.18 |
before 2.28.9-r0 | 2.28.9-r0 |
mbedtlsAlpine:v3.19 |
before 2.28.9-r0 | 2.28.9-r0 |
mbedtlsAlpine:v3.20 |
before 3.6.1-r0 | 3.6.1-r0 |
mbedtlsAlpine:v3.21 |
before 3.6.1-r0 | 3.6.1-r0 |
mbedtlsAlpine:v3.22 |
before 3.6.1-r0 | 3.6.1-r0 |
mbedtlsAlpine:v3.23 |
before 3.6.1-r0 | 3.6.1-r0 |
mbedtlsAlpine:v3.24 |
before 3.6.1-r0 | 3.6.1-r0 |
mbedtls2Alpine:v3.21 |
before 2.28.10-r0 | 2.28.10-r0 |
mbedtls2Alpine:v3.22 |
before 2.28.10-r0 | 2.28.10-r0 |
Show 11 moreShow less
| Package | Affected | Fixed |
|---|---|---|
mbedtls2Alpine:v3.23 |
before 2.28.10-r0 | 2.28.10-r0 |
mbedtls2Alpine:v3.24 |
before 2.28.10-r0 | 2.28.10-r0 |
mbedtls3Alpine:v3.24 |
before 3.6.1-r0 | 3.6.1-r0 |
mbedtlsDebian:12 |
All versions, plus listed versions 2.28.3-12.28.4-12.28.5-12.28.6-12.28.7-1 Show 18 moreShow less2.28.7-1.12.28.7-1.1~exp12.28.8-13.6.0-13.6.0-23.6.0-33.6.2-13.6.2-23.6.2-33.6.3-13.6.4-13.6.4-23.6.5-0.13.6.5-0.1~deb13u13.6.6-0.13.6.6-0.1~deb13u13.6.7-23.6.7-3 |
None known |
mbedtlsDebian:13 |
before 3.6.2-1 | 3.6.2-1 |
mbedtlsDebian:14 |
before 3.6.2-1 | 3.6.2-1 |
MbedTLS_jllJulia |
2.26.0+0 up to 2.28.10+0 | 2.28.10+0 |
mbedtlsUbuntu:Pro:22.04:LTS |
All versions, plus listed versions 2.16.9-0.1ubuntu12.16.11-0.1ubuntu12.16.11-0.32.28.0-12.28.0-1build12.28.0-1ubuntu0.1~esm1 |
None known |
mbedtlsUbuntu:Pro:24.04:LTS |
All versions, plus listed versions 2.28.3-12.28.6-1ubuntu12.28.7-1ubuntu12.28.7-1.1ubuntu12.28.8-12.28.8-1ubuntu0.1~esm1 |
None known |
mbedtls-2openSUSE:Tumbleweed |
before 2.28.9-1.1 | 2.28.9-1.1 |
mbedtls-2openSUSE:Leap 16.0 From an advisory covering 3 CVEs |
before 2.28.10-bp160.1.1 | 2.28.10-bp160.1.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, facts | ||
| affected | OSV | |
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2024-45157 is a medium vulnerability (CVSS 5.1) in Trustedfirmware Mbed Tls, published September 3, 2024. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.24%, the 14th percentile. Fixed in mbedtls 2.28.9-r0.
References
mbed-tls.readthedocs.io/en/latest/security-advisories
github.com/Mbed-TLS/mbedtls/releases
mbed-tls.readthedocs.io/en/latest/security-advisories/mbedtls-security-advisory-2024-08-1
nvd.nist.gov/vuln/detail/CVE-2024-45157
github.com/advisories/GHSA-cvp8-hm87-hr8x
security.alpinelinux.org/vuln/CVE-2024-45157
Show 10 moreShow less
github.com/CVEProject/cvelistV5/tree/main/cves/2024/45xxx/CVE-2024-45157.json
security-tracker.debian.org/tracker/CVE-2024-45157
ubuntu.com/security/CVE-2024-45157
cve.org/CVERecord?id=CVE-2024-45157
suse.com/security/cve/CVE-2024-45157
bugzilla.suse.com/1230310
bugzilla.suse.com/1240051
bugzilla.suse.com/1240052
suse.com/security/cve/CVE-2025-27809
suse.com/security/cve/CVE-2025-27810