CVE-2024-29040 json
Fapi Verify Quote: Does not detect if quote was not generated by TPM
published 2024-06-28 2 y ago modified 2026-06-17 4 mo ago also EUVD-2024-26089
- cvss
- 4.3
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.3%
- EPSS 0.3% chance of exploitation in 30 days, percentile 26%
- public exploits
- 0
- none known
Summary
This repository hosts source code implementing the Trusted Computing Group's (TCG) TPM2 Software Stack (TSS). The JSON Quote Info returned by Fapi_Quote has to be deserialized by Fapi_VerifyQuote to the TPM Structure `TPMS_ATTEST`. For the field `TPM2_GENERATED magic` of this structure any number can be used in the JSON structure. The verifier can receive a state which does not represent the actual, possibly malicious state of the device under test. The malicious device might get access to data it shouldn't, or can use services it shouldn't be able to. This issue has been patched in version 4.1.0.
Patch / fix
- tpm2_software_stack_project tpm2_software_stack 4.1.0
- tpm2-tss Debian 14, Debian 13 4.1.0-1
debian advisories DEBIAN-CVE-2024-29040
- tpm2-tss Ubuntu 22.04 LTS 3.2.0-1ubuntu1.1
- tpm2-tss Ubuntu 24.04 LTS 4.0.1-7.1ubuntu5.1
ubuntu advisories UBUNTU-CVE-2024-29040
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- tpm2-0-tss Linux Micro 6.0 4.1.0-1.1
- efivar Linux Micro 6.0 38-3.1
- tpm2.0-tools Linux Micro 6.0 5.7-1.1
- tpm2-0-tss SLE Module for Basesystem 15 SP5, SLE Micro 5.5, SLE Micro 5.4 +4 more 3.1.0-150400.3.6.1
suse advisories SUSE-SU-2025:20151-1SUSE-SU-2024:1635-2SUSE-SU-2024:1635-1
- tpm2-tss Alpine 3.19 4.0.2-r0
- tpm2-tss Alpine 3.24, Alpine 3.23, Alpine 3.22 +2 more 4.1.1-r0
alpine advisories ALPINE-CVE-2024-29040
Alpine secdb © Alpine Linux, from https://secdb.alpinelinux.org via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- tpm2-tss Azure Linux 3.0 4.0.2-1
- tpm2-tss CBL-Mariner 2.0 2.4.6-4
azure linux advisories AZL-42978AZL-42985
Azure Linux vulnerability data, Copyright (c) Microsoft Corporation, from https://github.com/microsoft/AzureLinuxVulnerabilityData via OSV, under the MIT licence; changed: normalised to fixed package versions per release. MIT
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2024-29040 updated cvss 4.4
tpm2-tss: arbitrary quote data may go undetected by Fapi_VerifyQuote
-
Red Hat Enterprise Linux 7 tpm2-tss, tpm2-tss-utilsaffected: no fix planned “Out of support scope”
-
Red Hat Enterprise Linux 9 tpm2-tssaffected: no fix available
-
Red Hat OpenShift AI (RHOAI) rhoai/odh-dashboard-rhel9under investigation
-
Red Hat Enterprise Linux 8 tpm2-tss Red Hat Enterprise Linux 10 tpm2-tssnot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- partial
- Assessed
- 2 y ago
Exploit prediction
0.33% chance of exploitation in the next 30 days, higher than 26% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 4.3 | CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:L/I:N/A:N |
Affected products
- tpm2-software tpm2-tss
- tpm2_software_stack_project tpm2_software_stack
Classification
- Weakness
-
- CWE-502 Deserialization of Untrusted Data
References
- github.com /tpm2-software/tpm2-tss/security/advisories/GHSA-837m-jw3m-h9p6
- github.com /tpm2-software/tpm2-tss/releases/tag/4.1.0
- lists.fedoraproject.org /archives/list/package-announce@lists.fedoraproject.org/message/GI4JFEZBKQQUPJ4RWK6IHEWXAFCEJDPI/
- lists.fedoraproject.org /archives/list/package-announce@lists.fedoraproject.org/message/EFR7SVEWCOXORHPCLLGXEMHFMIGG2MFE/
Sources
- CVE List CVE-2024-29040
- NVD CVE-2024-29040
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.