7.8

CVE-2026-53078

bpf: Fix same-register dst/src OOB read and pointer leak in sock_ops

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

bpf: Fix same-register dst/src OOB read and pointer leak in sock_ops

When a BPF sock_ops program accesses ctx fields with dst_reg == src_reg,
the SOCK_OPS_GET_SK() and SOCK_OPS_GET_FIELD() macros fail to zero the
destination register in the !fullsock / !locked_tcp_sock path.

Both macros borrow a temporary register to check is_fullsock /
is_locked_tcp_sock when dst_reg == src_reg, because dst_reg holds the
ctx pointer. When the check is false (e.g., TCP_NEW_SYN_RECV state with
a request_sock), dst_reg should be zeroed but is not, leaving the stale
ctx pointer:

 - SOCK_OPS_GET_SK: dst_reg retains the ctx pointer, passes NULL checks
   as PTR_TO_SOCKET_OR_NULL, and can be used as a bogus socket pointer,
   leading to stack-out-of-bounds access in helpers like
   bpf_skc_to_tcp6_sock().

 - SOCK_OPS_GET_FIELD: dst_reg retains the ctx pointer which the
   verifier believes is a SCALAR_VALUE, leaking a kernel pointer.

Fix both macros by:
 - Changing JMP_A(1) to JMP_A(2) in the fullsock path to skip the
   added instruction.
 - Adding BPF_MOV64_IMM(si->dst_reg, 0) after the temp register
   restore in the !fullsock path, placed after the restore because
   dst_reg == src_reg means we need src_reg intact to read ctx->temp.
Daten sind bereitgestellt durch National Vulnerability Database (NVD)
LinuxLinux Kernel Version >= 5.4.61 < 5.5
LinuxLinux Kernel Version >= 5.7.18 < 5.8
LinuxLinux Kernel Version >= 5.8.4 < 5.9
LinuxLinux Kernel Version >= 5.9.1 < 7.0.10
LinuxLinux Kernel Version5.9 Update-
LinuxLinux Kernel Version5.9 Updaterc2
LinuxLinux Kernel Version5.9 Updaterc3
LinuxLinux Kernel Version5.9 Updaterc4
LinuxLinux Kernel Version5.9 Updaterc5
LinuxLinux Kernel Version5.9 Updaterc6
LinuxLinux Kernel Version5.9 Updaterc7
LinuxLinux Kernel Version5.9 Updaterc8
VulnDex Vulnerability Enrichment
Diese Information steht angemeldeten Benutzern zur Verfügung. Login Login
Zu dieser CVE wurde keine Warnung gefunden.
EPSS Metriken
Typ Quelle Score Percentile
EPSS FIRST.org 0.12% 0.021
CVSS Metriken
Quelle Base Score Exploit Score Impact Score Vector String
416baaa9-dc9f-4396-8d5f-8c081fb06d67 7.8 1.8 5.9
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CWE-125 Out-of-bounds Read

The product reads data past the end, or before the beginning, of the intended buffer.

https://git.kernel.org/stable/c/18e3ffde1822f0b48b1753bf34aa97ce839df1d8
Patch
https://git.kernel.org/stable/c/10f86a2a5c91fc4c4d001960f1c21abe52545ef6
Patch
https://git.kernel.org/stable/c/22400725de070b787cd6d806c5795370ab46d269
https://git.kernel.org/stable/c/2a2c98141e0a75f2d4a7d78b0316c88b3da784ac