CVE-2026-98590 PUBLISHED

bpf: Fix bpf_sock context code generation

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: Fix bpf_sock context code generation

Currently, the ctx access code reads the rx_queue_mapping field with either a 4-byte or 2-byte load. The rest of the bits in the register are marked known zero by the verifier. However, the emitted ctx access code places in the register on certain the special value (-1) using BPF_MOV_IMM64, which gets sign-extended to turn on all the bits in the register. By shifting this value right, the program ends up with a value at runtime above what the verifier assumes is possible.

Fix this by ensuring the read value is as wide as the assumed size. Use MOV32 instructions instead of MOV64 instructions to keep the upper bits zero as assumed by the verifier. Also properly report the size of the destination variable (the bpf_sock field, 4 bytes) instead of the source (the socket field, 2 bytes).

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from c3c16f2ea6d20159903cf93afbb1155f3d8348d5 to e3ddcf4aeb342d4de2e5761c7042270d454752de (excl.)
  • affected from c3c16f2ea6d20159903cf93afbb1155f3d8348d5 to 4a41d064facc3330e176ecbbf5b0026ed18a5c69 (excl.)
  • affected from c3c16f2ea6d20159903cf93afbb1155f3d8348d5 to 70288599d1754e157df8326239316dbdf08ea33c (excl.)
  • affected from c3c16f2ea6d20159903cf93afbb1155f3d8348d5 to ea4dc96c902ccfa49dd3e4f23c443dab4a74b018 (excl.)
  • affected from c3c16f2ea6d20159903cf93afbb1155f3d8348d5 to b3f37afc7fd7c52bc2114310aff1eb24c7cd4d73 (excl.)
  • affected from c3c16f2ea6d20159903cf93afbb1155f3d8348d5 to d95dd5a6c6cd08d5ae466d3aed27b3cf59155a6c (excl.)
  • affected from c3c16f2ea6d20159903cf93afbb1155f3d8348d5 to 84ebb991ae985149079ae9ab51b7e3ba25a9ff53 (excl.)
  • affected from c3c16f2ea6d20159903cf93afbb1155f3d8348d5 to 4a4852376e3a2727ea40e61143d6d7c22bb6dfad (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 5.8 is affected
  • unaffected from 0 to 5.8 (excl.)
  • unaffected from 5.10.271 to 5.10.* (incl.)
  • unaffected from 5.15.222 to 5.15.* (incl.)
  • unaffected from 6.1.189 to 6.1.* (incl.)
  • unaffected from 6.6.158 to 6.6.* (incl.)
  • unaffected from 6.12.112 to 6.12.* (incl.)
  • unaffected from 6.18.55 to 6.18.* (incl.)
  • unaffected from 7.2.9 to 7.2.* (incl.)
  • unaffected from 7.3-rc5 to * (incl.)

References