CVE-2026-98589 PUBLISHED

bpf: Reject pkt arguments in mutating subprogs

Assigner: Linux
Reserved: 25.09.2026 Published: 18.10.2026 Updated: 18.10.2026

In the Linux kernel, the following vulnerability has been resolved:

bpf: Reject pkt arguments in mutating subprogs

The verifier tracks changes in how PTR_TO_PACKET registers' bounds are modified across subprog boundaries. PTR_TO_PACKET registers are actually passed as PTR_TO_MEM, which is assumed valid for the entire call. This is not the case with packet memory, where a pskb_* call may invalidate its memory region.

Reject BPF code that passes PTR_TO_PACKET pointers to subprogs that may mutate a packet. We cannot pass the pointer as a true PTR_TO_PACKET because we would also need to somehow pass the PTR_TO_PACKET_META or PTR_TO_PACKET_END to the subprog. Since we cannot avoid representing the pointer in the subprog as PTR_TO_MEM, only permit it if the subprog is guaranteed not to mutate the packet.

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to 0b6b2bb9b90ad1e2d94d18f626258a1dbbdee0ea (excl.)
  • affected from 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 to a6c1edfbe240e4377038a0e1d233ad81fde9a21b (excl.)
  • affected from 0 to 7.2.9 (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • unaffected from 7.2.9 to 7.2.* (incl.)
  • unaffected from 7.3-rc5 to * (incl.)

References