CVEvulnerability
CVE-2026-31675
7.8 HIGH
Official page ↗
- Status
- Modified
- Published
- 2026-04-25
- Last modified
- 2026-10-19
- Assigner
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
- CVSS 3.1 (416baaa9-dc9f-4396-8d5f-8c081fb06d67)
- 7.8 HIGH — CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
- Weaknesses
- CWE-125, CWE-787
Description
In the Linux kernel, the following vulnerability has been resolved:
net/sched: sch_netem: fix out-of-bounds access in packet corruption
In netem_enqueue(), the packet corruption logic uses
get_random_u32_below(skb_headlen(skb)) to select an index for
modifying skb->data. When an AF_PACKET TX_RING sends fully non-linear
packets over an IPIP tunnel, skb_headlen(skb) evaluates to 0.
Passing 0 to get_random_u32_below() takes the variable-ceil slow path
which returns an unconstrained 32-bit random integer. Using this
unconstrained value as an offset into skb->data results in an
out-of-bounds memory access.
Fix this by verifying skb_headlen(skb) is non-zero before attempting
to corrupt the linear data area. Fully non-linear packets will silently
bypass the corruption logic.
Affected configurations
• linux linux kernel (>= 2.6.16 < 6.6.134)
• linux linux kernel (>= 6.7 < 6.12.81)
• linux linux kernel (>= 6.13 < 6.18.22)
• linux linux kernel (>= 6.19 < 6.19.12)
• linux linux kernel 7.0
Related
References
- https://git.kernel.org/stable/c/13a66ca1e235d4bcd53d12d4c68490cad7f8e46f Patch
- https://git.kernel.org/stable/c/3a2999704ac36cfb4041fed3652d26a3373e8d12 Patch
- https://git.kernel.org/stable/c/4fd258e281fa8bc15e9ce2c7691941537e9258ad Patch
- https://git.kernel.org/stable/c/a14b56863348686dd0387eea8ce66b85cf455908 Patch
- https://git.kernel.org/stable/c/d64cb81dcbd54927515a7f65e5e24affdc73c14b Patch