CVE-2025-49133
Libtpms contains a possible out-of-bound access and abort due to HMAC signing issue
Reported by github_m · Published June 10, 2025
Libtpms is a library that targets the integration of TPM functionality into hypervisors, primarily into Qemu. Libtpms, which is derived from the TPM 2.0 reference implementation code published by the Trusted Computing Group, is prone to a potential out of bounds (OOB) read vulnerability. The vulnerability occurs in the ‘CryptHmacSign’ function with an inconsistent pairing of the signKey and signScheme parameters, where the signKey is ALG_KEYEDHASH key and inScheme is an ECC or RSA scheme. The reported vulnerability is in the ‘CryptHmacSign’ function, which is defined in the "Part 4: Supporting Routines – Code" document, section "7.151 - /tpm/src/crypt/CryptUtil.c ". This vulnerability can be triggered from user-mode applications by sending malicious commands to a TPM 2.0/vTPM (swtpm) whose firmware is based on an affected TCG reference implementation. The effect on libtpms is that it will cause an abort due to the detection of the out-of-bounds access, thus for example making a vTPM (swtpm) unavailable to a VM. This vulnerability is fixed in 0.7.12, 0.8.10, 0.9.7, and 0.10.1.
Fixed versions
Upgrade to a fixed version or later. Language registries are listed first, then Linux distributions, then vendor products.
| Package | Ecosystem | Fixed in |
|---|---|---|
| libtpms | Alpine | 0.10.1-r0, 0.9.7-r0 |
Risk scores
Affected products
| Vendor | Product | Versions |
|---|---|---|
| stefanberger | libtpms | = 0.7.11, = 0.8.9, = 0.9.6 |
| alpine | libtpms | 0, 0 |
| stefanberger | libtpms | 0.7.11, 0.8.9, 0.9.6 |
Timeline
- Jun 10, 2025 CVE Published
- Jun 10, 2025 PoC Published (4 in total, the first dated here)
- Jun 11, 2025 EPSS Score (30 in total, the first dated here)
- Nov 3, 2025 CVE Updated
- Mar 11, 2026 Security Advisory (9 in total, the first dated here)
- Jun 6, 2026 Coalition ESS Score
- Nov 1, 2026 Distribution Patch (7 in total, the first dated here)
Query this with the API
The same record, from the CLI:
vulnetix vdb vuln CVE-2025-49133
vulnetix vdb fixes CVE-2025-49133
Or with curl, using the org id and key from your account page:
curl -s -H "Authorization: ApiKey ${VULNETIX_ORG_ID}:${VULNETIX_API_KEY}" \
"https://api.vdb.vulnetix.com/v2/vuln/CVE-2025-49133/fixes/registry"
The Community plan is free and allows 50 queries a day. Get a free API key · API quickstart
References
- https://github.com/stefanberger/libtpms/security/advisories/GHSA-25w5-6fjj-hf8g x_refsource_CONFIRM
- https://github.com/stefanberger/libtpms/commit/04b2d8e9afc0a9b6bffe562a23e58c0de11532d1 x_refsource_MISC
- https://trustedcomputinggroup.org/resource/tpm-library-specification x_refsource_MISC
- https://trustedcomputinggroup.org/wp-content/uploads/TPM-2.0-1.83-Part-4-Supporting-Routines-Code.pdf x_refsource_MISC
- https://www.kb.cert.org/vuls/id/282450 advisory