# CVE-2025-49133: Libtpms contains a possible out-of-bound access and abort due to HMAC signing issue

> A malicious user can trigger an out-of-bounds read in Libtpms, causing a virtual TPM to abort and resulting in denial of service for the virtual machine.

- **Severity:** Medium 5.9 (`CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:C/C:N/I:N/A:H`)
- **Exploited in the wild:** Not known
- **Login needed:** Any signed-in user
- **Attackable:** Local or same network only
- **Victim action needed:** A user has to click or open something
- **Fix available:** Yes
- **Published:** 10 Jun 2025
- **Updated:** 3 Nov 2025
- **Also known as:** ALSA-2025:12100, ALSA-2025:12527, ALSA-2025:16428, AZL-63702, DEBIAN-CVE-2025-49133, GHSA-25w5-6fjj-hf8g, MGASA-2025-0248, OESA-2025-1836, OESA-2025-1837, OESA-2025-2133, OESA-2025-2134, OESA-2025-2135, OESA-2025-2261, RHSA-2025:12100, RHSA-2025:12111, RHSA-2025:12112, RHSA-2025:12234, RHSA-2025:12293, RHSA-2025:12527, RHSA-2025:16428, RLSA-2025:12100, RLSA-2025:12527, RLSA-2025:16428, SUSE-SU-2026:1388-1, SUSE-SU-2026:21035-1, SUSE-SU-2026:21064-1, UBUNTU-CVE-2025-49133, USN-7617-1, openSUSE-SU-2025:15244-1

## What is CVE-2025-49133?

CVE-2025-49133 is a medium-severity memory corruption vulnerability in stefanberger libtpms, published on 10 Jun 2025. It can only be exploited from the same machine or local network, and only if a user opens a file or follows a link.

### Official description

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.

Weakness: CWE-125 (Out-of-bounds Read)

## Which versions are affected by CVE-2025-49133?

It affects 1 product.


| Package | Ecosystem | Affected | Fixed in |
| --- | --- | --- | --- |
| `libtpms` | AlmaLinux:10 | All versions | 0.9.6-11.el10_0 |
| `SLOF` | AlmaLinux:8 | All versions | 20210217-2.module_el8.10.0+3768+dfd76e10 |
| `hivex` | AlmaLinux:8 | All versions | 1.3.18-23.module_el8.6.0+2880+7d9e3703 |
| `hivex` | AlmaLinux:8 | All versions | 1.3.18-23.module_el8.6.0+3161+a07c0ea5 |
| `hivex-devel` | AlmaLinux:8 | All versions | 1.3.18-23.module_el8.6.0+2880+7d9e3703 |
| `hivex-devel` | AlmaLinux:8 | All versions | 1.3.18-23.module_el8.6.0+3161+a07c0ea5 |
| `libguestfs` | AlmaLinux:8 | All versions | 1:1.44.0-9.module_el8.7.0+3493+5ed0bd1c.alma |
| `libguestfs-appliance` | AlmaLinux:8 | All versions | 1:1.44.0-9.module_el8.7.0+3493+5ed0bd1c.alma |
| `libguestfs-bash-completion` | AlmaLinux:8 | All versions | 1:1.44.0-9.module_el8.7.0+3493+5ed0bd1c.alma |
| `libguestfs-devel` | AlmaLinux:8 | All versions | 1:1.44.0-9.module_el8.7.0+3493+5ed0bd1c.alma |
| `libguestfs-gfs2` | AlmaLinux:8 | All versions | 1:1.44.0-9.module_el8.7.0+3493+5ed0bd1c.alma |
| `libguestfs-gobject` | AlmaLinux:8 | All versions | 1:1.44.0-9.module_el8.7.0+3493+5ed0bd1c.alma |
| `libguestfs-gobject-devel` | AlmaLinux:8 | All versions | 1:1.44.0-9.module_el8.7.0+3493+5ed0bd1c.alma |
| `libguestfs-inspect-icons` | AlmaLinux:8 | All versions | 1:1.44.0-9.module_el8.7.0+3493+5ed0bd1c.alma |
| `libguestfs-java` | AlmaLinux:8 | All versions | 1:1.44.0-9.module_el8.7.0+3493+5ed0bd1c.alma |
| `libguestfs-java-devel` | AlmaLinux:8 | All versions | 1:1.44.0-9.module_el8.7.0+3493+5ed0bd1c.alma |
| `libguestfs-javadoc` | AlmaLinux:8 | All versions | 1:1.44.0-9.module_el8.7.0+3493+5ed0bd1c.alma |
| `libguestfs-man-pages-ja` | AlmaLinux:8 | All versions | 1:1.44.0-9.module_el8.7.0+3493+5ed0bd1c.alma |
| `libguestfs-man-pages-uk` | AlmaLinux:8 | All versions | 1:1.44.0-9.module_el8.7.0+3493+5ed0bd1c.alma |
| `libguestfs-rescue` | AlmaLinux:8 | All versions | 1:1.44.0-9.module_el8.7.0+3493+5ed0bd1c.alma |
| `libguestfs-rsync` | AlmaLinux:8 | All versions | 1:1.44.0-9.module_el8.7.0+3493+5ed0bd1c.alma |
| `libguestfs-tools` | AlmaLinux:8 | All versions | 1:1.44.0-9.module_el8.7.0+3493+5ed0bd1c.alma |
| `libguestfs-tools-c` | AlmaLinux:8 | All versions | 1:1.44.0-9.module_el8.7.0+3493+5ed0bd1c.alma |
| `libguestfs-winsupport` | AlmaLinux:8 | All versions | 8.10-1.module_el8.10.0+3768+dfd76e10 |
| `libguestfs-xfs` | AlmaLinux:8 | All versions | 1:1.44.0-9.module_el8.7.0+3493+5ed0bd1c.alma |
| `libiscsi` | AlmaLinux:8 | All versions | 1.18.0-8.module_el8.6.0+2880+7d9e3703 |
| `libiscsi` | AlmaLinux:8 | All versions | 1.18.0-8.module_el8.6.0+3161+a07c0ea5 |
| `libiscsi-devel` | AlmaLinux:8 | All versions | 1.18.0-8.module_el8.6.0+2880+7d9e3703 |
| `libiscsi-devel` | AlmaLinux:8 | All versions | 1.18.0-8.module_el8.6.0+3161+a07c0ea5 |
| `libiscsi-utils` | AlmaLinux:8 | All versions | 1.18.0-8.module_el8.6.0+2880+7d9e3703 |
| `libiscsi-utils` | AlmaLinux:8 | All versions | 1.18.0-8.module_el8.6.0+3161+a07c0ea5 |
| `libnbd` | AlmaLinux:8 | All versions | 1.6.0-6.module_el8.10.0+3897+eb84924d |
| `libnbd-bash-completion` | AlmaLinux:8 | All versions | 1.6.0-6.module_el8.10.0+3897+eb84924d |
| `libnbd-devel` | AlmaLinux:8 | All versions | 1.6.0-6.module_el8.10.0+3897+eb84924d |
| `libtpms` | AlmaLinux:8 | All versions | 0.9.1-3.20211126git1ff6fe1f43.module_el8.10.0+4031+06966654 |
| `libtpms-devel` | AlmaLinux:8 | All versions | 0.9.1-3.20211126git1ff6fe1f43.module_el8.10.0+4031+06966654 |
| `libvirt` | AlmaLinux:8 | All versions | 8.0.0-23.4.module_el8.10.0+4031+06966654 |
| `libvirt-client` | AlmaLinux:8 | All versions | 8.0.0-23.4.module_el8.10.0+4031+06966654 |
| `libvirt-daemon` | AlmaLinux:8 | All versions | 8.0.0-23.4.module_el8.10.0+4031+06966654 |
| `libvirt-daemon-config-network` | AlmaLinux:8 | All versions | 8.0.0-23.4.module_el8.10.0+4031+06966654 |

Products: Libtpms Project Libtpms.

## How do I fix CVE-2025-49133?

Upgrade to a fixed version.

## Is CVE-2025-49133 being exploited?

There is no known exploitation of CVE-2025-49133 in the wild and no public exploit code.

## Other vulnerabilities in stefanberger libtpms

- [CVE-2026-21444](https://insights.sbomify.com/CVE-2026-21444/): libtpms returns wrong initialization vector when certain symmetric ciphers are used (medium 5.5)
- [CVE-2021-3569](https://insights.sbomify.com/CVE-2021-3569/): Memory corruption in libtpms (medium 5.5)

## Fix prompt for AI coding agents

```text
Check this codebase for CVE-2025-49133 and fix it if it is affected.

What it is: CVE-2025-49133 is a medium-severity memory corruption vulnerability in stefanberger libtpms, published on 10 Jun 2025. It can only be exploited from the same machine or local network, and only if a user opens a file or follows a link.
Exploitation: There is no known exploitation of CVE-2025-49133 in the wild and no public exploit code.

Affected product: stefanberger libtpms. No package-level version data is available, so check the vendor advisory linked from the reference page.

Task:
1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.
2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.
3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.
4. Run the tests and summarise what changed and why.
5. If nothing in the project is affected, say so and change nothing.

Reference: https://insights.sbomify.com/CVE-2025-49133/ (Markdown: https://insights.sbomify.com/CVE-2025-49133/index.md)
```

## Sources

- CVE record: https://www.cve.org/CVERecord?id=CVE-2025-49133
- NVD: https://nvd.nist.gov/vuln/detail/CVE-2025-49133
- OSV: https://osv.dev/vulnerability/CVE-2025-49133

---
From sbomify Insights: https://insights.sbomify.com/CVE-2025-49133/
Summaries are generated and may contain mistakes; the official description above is the record.
