CVE-2024-23170
An issue was discovered in Mbed TLS 2.x before 2.28.7 and 3.x before 3.5.2. There was a timing...
An issue was discovered in Mbed TLS 2.x before 2.28.7 and 3.x before 3.5.2. There was a timing side channel in RSA private operations. This side channel could be sufficient for a local attacker to recover the plaintext. It requires the attacker to send a large number of messages for decryption, as described in "Everlasting ROBOT: the Marvin Attack" by Hubert Kario.
Attack profile
How easy it is to exploit
- Attack vector
- Local
- Complexity
- Low
- Privileges needed
- Low
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- None
- Availability
- None
Exploit likelihood
What each source reports
NVD Score used
5.5
An issue was discovered in Mbed TLS 2.x before 2.28.7 and 3.x before 3.5.2. There was a timing side channel in RSA private operations. This side channel could be sufficient for a local attacker to recover the plaintext. It requires the attacker to send a large number of messages for decryption, as described in "Everlasting ROBOT: the Marvin Attack" by Hubert Kario.
- Record
CVE-2024-23170- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-203, CWE-385
- Updated
- 2026-11-02
CVE List
5.5
An issue was discovered in Mbed TLS 2.x before 2.28.7 and 3.x before 3.5.2. There was a timing side channel in RSA private operations. This side channel could be sufficient for a local attacker to recover the plaintext. It requires the attacker to send a large number of messages for decryption, as described in "Everlasting ROBOT: the Marvin Attack" by Hubert Kario.
- Record
CVE-2024-23170- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-385
- Updated
- 2026-11-02
EUVDEUVD-2024-20689
5.5
An issue was discovered in Mbed TLS 2.x before 2.28.7 and 3.x before 3.5.2. There was a timing side channel in RSA private operations. This side channel could be sufficient for a local attacker to recover the plaintext. It requires the attacker to send a large number of messages for decryption, as described in "Everlasting ROBOT: the Marvin Attack" by Hubert Kario.
- Record
EUVD-2024-20689- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-w2fw-qqqw-v63m
5.5
An issue was discovered in Mbed TLS 2.x before 2.28.7 and 3.x before 3.5.2. There was a timing...
An issue was discovered in Mbed TLS 2.x before 2.28.7 and 3.x before 3.5.2. There was a timing side channel in RSA private operations. This side channel could be sufficient for a local attacker to recover the plaintext. It requires the attacker to send a large number of messages for decryption, as described in "Everlasting ROBOT: the Marvin Attack" by Hubert Kario.
- Record
GHSA-w2fw-qqqw-v63m- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-203, CWE-385
- Updated
- 2026-11-02
OSVALPINE-CVE-2024-23170
5.5
An issue was discovered in Mbed TLS 2.x before 2.28.7 and 3.x before 3.5.2. There was a timing side channel in RSA private operations. This side channel could be sufficient for a local attacker to recover the plaintext. It requires the attacker to send a large number of messages for decryption, as described in "Everlasting ROBOT: the Marvin Attack" by Hubert Kario.
- Record
ALPINE-CVE-2024-23170- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-03
OSVAZL-47697
5.5
CVE-2024-23170 affecting package hvloader for versions less than 1.0.1-6
An issue was discovered in Mbed TLS 2.x before 2.28.7 and 3.x before 3.5.2. There was a timing side channel in RSA private operations. This side channel could be sufficient for a local attacker to recover the plaintext. It requires the attacker to send a large number of messages for decryption, as described in "Everlasting ROBOT: the Marvin Attack" by Hubert Kario.
- Record
AZL-47697- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
Show 8 moreShow less
OSV
5.5
An issue was discovered in Mbed TLS 2.x before 2.28.7 and 3.x before 3.5.2. There was a timing side channel in RSA private operations. This side channel could be sufficient for a local attacker to recover the plaintext. It requires the attacker to send a large number of messages for decryption, as described in "Everlasting ROBOT: the Marvin Attack" by Hubert Kario.
- Record
CVE-2024-23170- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
OSVDEBIAN-CVE-2024-23170
5.5
An issue was discovered in Mbed TLS 2.x before 2.28.7 and 3.x before 3.5.2. There was a timing side channel in RSA private operations. This side channel could be sufficient for a local attacker to recover the plaintext. It requires the attacker to send a large number of messages for decryption, as described in "Everlasting ROBOT: the Marvin Attack" by Hubert Kario.
- Record
DEBIAN-CVE-2024-23170- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
OSVJLSEC-2025-223
5.5
An issue was discovered in Mbed TLS 2.x before 2.28.7 and 3.x before 3.5.2
An issue was discovered in Mbed TLS 2.x before 2.28.7 and 3.x before 3.5.2. There was a timing side channel in RSA private operations. This side channel could be sufficient for a local attacker to recover the plaintext. It requires the attacker to send a large number of messages for decryption, as described in "Everlasting ROBOT: the Marvin Attack" by Hubert Kario.
- Record
JLSEC-2025-223- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
OSVROOT-OS-DEBIAN-12-CVE-2024-23170
5.5
CVE-2024-23170 in mbedtls - Patched by Root
Root has patched CVE-2024-23170 in the mbedtls package for Root:Debian:12. Multiple fixed versions available.
- Record
ROOT-OS-DEBIAN-12-CVE-2024-23170- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
OSVUBUNTU-CVE-2024-23170
5.5
An issue was discovered in Mbed TLS 2.x before 2.28.7 and 3.x before 3.5.2. There was a timing side channel in RSA private operations. This side channel could be sufficient for a local attacker to recover the plaintext. It requires the attacker to send a large number of messages for decryption, as described in "Everlasting ROBOT: the Marvin Attack" by Hubert Kario.
- Record
UBUNTU-CVE-2024-23170- CVSS 3.1
- 5.5 Medium
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
OSVopenSUSE-SU-2024:0037-1 No score
Security update for mbedtls
This update for mbedtls fixes the following issues:
-
Update to version 2.28.7:
- Resolves CVE-2024-23170 boo#1219336
-
Update to 2.28.6:
Changes:
- Mbed TLS is now released under a dual Apache-2.0 OR GPL-2.0-or-later license. Users may choose which license they take the code under.
-
Update to 2.28.5:
Features:
- The documentation of mbedtls_ecp_group now describes the optimized representation of A for some curves. Fixes gh#Mbed-TLS/mbedtls#8045.
Security:
- Developers using mbedtls_pkcs5_pbes2() or mbedtls_pkcs12_pbe() should review the size of the output buffer passed to this function, and note that the output after decryption may include CBC padding. Consider moving to the new functions mbedtls_pkcs5_pbes2_ext() or mbedtls_pkcs12_pbe_ext() which checks for overflow of the output buffer and reports the actual length of the output.
- Improve padding calculations in CBC decryption, NIST key unwrapping and RSA OAEP decryption. With the previous implementation, some compilers (notably recent versions of Clang and IAR) could produce non-constant time code, which could allow a padding oracle attack if the attacker has access to precise timing measurements.
- Fix a buffer overread when parsing short TLS application data records in ARC4 or null-cipher cipher suites. Credit to OSS-Fuzz.
Bugfix:
- Fix x509 certificate generation to conform to RFC 5480 / RFC 5758 when using ECC key. The certificate was rejected by some crypto frameworks. Fixes gh#Mbed-TLS/mbedtls#2924.
- Fix some cases where mbedtls_mpi_mod_exp, RSA key construction or ECDSA signature can silently return an incorrect result in low memory conditions.
- Fix IAR compiler warnings. Fixes gh#Mbed-TLS/mbedtls#7873, gh#Mbed-TLS/mbedtls#4300.
- Fix an issue when parsing an otherName subject alternative name into a mbedtls_x509_san_other_name struct. The type-id of the otherName was not copied to the struct. This meant that the struct had incomplete information about the otherName SAN and contained uninitialized memory.
- Fix the detection of HardwareModuleName otherName SANs. These were being detected by comparing the wrong field and the check was erroneously inverted.
- Fix an error when MBEDTLS_ECDSA_SIGN_ALT is defined but not MBEDTLS_ECDSA_VERIFY_ALT, causing ecdsa verify to fail. Fixes gh#Mbed-TLS/mbedtls#7498. Functions in the ssl_cache module now return a negative MBEDTLS_ERR_xxx error code on failure. Before, they returned 1 to indicate failure in some cases involving a missing entry or a full cache.
Changes:
- In configurations with ARIA or Camellia but not AES, the value of MBEDTLS_CIPHER_BLKSIZE_MAX was 8, rather than 16 as the name might suggest. This did not affect any library code, because this macro was only used in relation with CMAC which does not support these ciphers. Its value is now 16 if ARIA or Camellia are present. This may affect application code that uses this macro.
-
Update to 2.28.4:
Features:
- Allow MBEDTLS_CONFIG_FILE and MBEDTLS_USER_CONFIG_FILE to be set by setting the CMake variable of the same name at configuration time.
Bugfix:
- Fix crypt_and_hash decryption fail when used with a stream cipher mode of operation, due to the input not being a multiple of the block size. Resolves #7417.
- Fix a bug where mbedtls_x509_string_to_names() would return success when given a invalid name string, if it did not contain '=' or ','.
- Fix missing PSA initialization in sample programs when MBEDTLS_USE_PSA_CRYPTO is enabled.
- Fix clang and armclang compilation error when targeting certain Arm M-class CPUs (Cortex-M0, Cortex-M0+, Cortex-M1, Cortex-M23, SecurCore SC000). Fixes #1077.
- Fixed an issue that caused compile errors when using CMake and the IAR toolchain.
- Fix the build with MBEDTLS_PSA_INJECT_ENTROPY. Fixes #7516. *…
- Record
openSUSE-SU-2024:0037-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2024:13639-1 No score
libeverest-3.5.2-1.1 on GA media
These are all security issues fixed in the libeverest-3.5.2-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2024:13639-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2024:13640-1 No score
libmbedcrypto7-2.28.7-1.1 on GA media
These are all security issues fixed in the libmbedcrypto7-2.28.7-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2024:13640-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
mbedtlsAlpine:v3.16 |
before 2.28.7-r0 | 2.28.7-r0 |
mbedtlsAlpine:v3.17 |
before 2.28.7-r0 | 2.28.7-r0 |
mbedtlsAlpine:v3.18 |
before 2.28.7-r0 | 2.28.7-r0 |
mbedtlsAlpine:v3.19 |
before 2.28.7-r0 | 2.28.7-r0 |
mbedtlsAlpine:v3.20 |
before 2.28.7-r0 | 2.28.7-r0 |
mbedtlsAlpine:v3.21 |
before 2.28.7-r0 | 2.28.7-r0 |
mbedtlsAlpine:v3.22 |
before 2.28.7-r0 | 2.28.7-r0 |
mbedtlsAlpine:v3.23 |
before 2.28.7-r0 | 2.28.7-r0 |
mbedtlsAlpine:v3.24 |
before 2.28.7-r0 | 2.28.7-r0 |
mbedtls2Alpine:v3.20 |
before 2.28.7-r0 | 2.28.7-r0 |
Show 20 moreShow less
| Package | Affected | Fixed |
|---|---|---|
mbedtls2Alpine:v3.21 |
before 2.28.7-r0 | 2.28.7-r0 |
mbedtls2Alpine:v3.22 |
before 2.28.7-r0 | 2.28.7-r0 |
mbedtls2Alpine:v3.23 |
before 2.28.7-r0 | 2.28.7-r0 |
mbedtls2Alpine:v3.24 |
before 2.28.7-r0 | 2.28.7-r0 |
mbedtls3Alpine:v3.24 |
before 2.28.7-r0 | 2.28.7-r0 |
hvloaderAzure Linux:2 |
before 1.0.1-6 | 1.0.1-6 |
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 2.28.7-1 | 2.28.7-1 |
mbedtlsDebian:14 |
before 2.28.7-1 | 2.28.7-1 |
MbedTLS_jllJulia |
before 2.28.10+0 | 2.28.10+0 |
mbedtlsRoot:Debian:12 |
before 2.28.3-1.root.io.14 | 2.28.3-1.root.io.142.28.3-1.root.io.62.28.3-1.root.io.52.28.3-1.root.io.92.28.3-1.root.io.72.28.3-1.root.io.102.28.3-1.root.io.152.28.3-1.root.io.162.28.3-1.root.io.82.28.3-1.root.io.112.28.3-1.root.io.122.28.3-1.root.io.132.28.3-1.aikido.17 |
rootio-mbedtlsRoot:Debian:12 |
before 2.28.3-1.root.io.14 | 2.28.3-1.root.io.142.28.3-1.root.io.62.28.3-1.root.io.52.28.3-1.root.io.92.28.3-1.root.io.72.28.3-1.root.io.102.28.3-1.root.io.152.28.3-1.root.io.162.28.3-1.root.io.82.28.3-1.root.io.112.28.3-1.root.io.122.28.3-1.root.io.132.28.3-1.aikido.17 |
mbedtlsUbuntu:16.04:LTS |
All versions, plus listed versions 2.1.2-12.2.0-12.2.1-12.2.1-22.2.1-2ubuntu0.12.2.1-2ubuntu0.22.2.1-2ubuntu0.3 |
None known |
mbedtlsUbuntu:Pro:18.04:LTS |
All versions, plus listed versions 2.5.1-1ubuntu12.6.0-12.7.0-22.8.0-12.8.0-1ubuntu0.1~esm1 |
None known |
mbedtlsUbuntu:Pro:20.04:LTS |
All versions, plus listed versions 2.16.2-12.16.3-12.16.4-1ubuntu22.16.4-1ubuntu2+esm1 |
None known |
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 |
mbedtlsSUSE:Package Hub 15 SP5 |
before 2.28.7-bp155.2.3.1 | 2.28.7-bp155.2.3.1 |
mbedtlsopenSUSE:Leap 15.5 |
before 2.28.7-bp155.2.3.1 | 2.28.7-bp155.2.3.1 |
mbedtlsopenSUSE:Tumbleweed |
before 3.5.2-1.1 | 3.5.2-1.1 |
mbedtls-2openSUSE:Tumbleweed |
before 2.28.7-1.1 | 2.28.7-1.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| 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-23170 is a medium vulnerability (CVSS 5.5) in Arm Mbed Tls, published January 31, 2024. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.31%, the 24th percentile. Fixed in mbedtls 2.28.7-r0.
References
mbed-tls.readthedocs.io/en/latest/security-advisories/mbedtls-security-advisory-2024-01-1
lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/IIBPEYSVRK4IFLBSYJAWKH33YBNH5HR2
lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/GP5UU7Z6LJNBLBT4SC5WWS2HDNMTFZH5
lists.fedoraproject.org/archives/list/[email protected]/message/GP5UU7Z6LJNBLBT4SC5WWS2HDNMTFZH5
lists.fedoraproject.org/archives/list/[email protected]/message/IIBPEYSVRK4IFLBSYJAWKH33YBNH5HR2
nvd.nist.gov/vuln/detail/CVE-2024-23170
Show 9 moreShow less
github.com/advisories/GHSA-w2fw-qqqw-v63m
security.alpinelinux.org/vuln/CVE-2024-23170
github.com/CVEProject/cvelistV5/tree/main/cves/2024/23xxx/CVE-2024-23170.json
security-tracker.debian.org/tracker/CVE-2024-23170
ubuntu.com/security/CVE-2024-23170
cve.org/CVERecord?id=CVE-2024-23170
lists.opensuse.org/archives/list/[email protected]/thread/TFW4YTDRTJEE3RUQXN4MRJ2SIL4ISBZT
bugzilla.suse.com/1219336
suse.com/security/cve/CVE-2024-23170
Left out here: the rest of 1 source description. The JSON record has them.