---
id: CVE-2026-64548
title: 'bpf, sockmap: reject overflowing copy + len in bpf_msg_push_data()'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  bpf, sockmap: reject overflowing copy + len in bpf_msg_push_data()

  When the scatterlist ring is full or nearly full, bpf_msg_push_data()
  enters a copy fallback path an…
severity: high
cvss: 8.4
cvssVector: 'CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'
cvssSource: cna
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 6fff607e2f14bd7c63c06c464a6f93b8efbabe28 <
    f1644c9508d24f50dd9e8ebe8d3ba86e0996d2f5
  - >-
    Linux >= 6fff607e2f14bd7c63c06c464a6f93b8efbabe28 <
    a12b1575f9feabd91695a9e9d004862f7195fa25
  - >-
    Linux >= 6fff607e2f14bd7c63c06c464a6f93b8efbabe28 <
    ff39d0e3b4feeb65ca43c453d7c75fdf872ded0d
  - >-
    Linux >= 6fff607e2f14bd7c63c06c464a6f93b8efbabe28 <
    888706a76286c547bd035432602571e8024b5305
  - >-
    Linux >= 6fff607e2f14bd7c63c06c464a6f93b8efbabe28 <
    db77b6bb6e6edb79b10b4efcce346eec5582d588
  - >-
    Linux >= 6fff607e2f14bd7c63c06c464a6f93b8efbabe28 <
    4e40056bb5c829f0423f0a6694a0477726d2147e
  - >-
    Linux >= 6fff607e2f14bd7c63c06c464a6f93b8efbabe28 <
    bd004716ba75fed6d185795c85cdc92540ebeaab
  - >-
    Linux >= 6fff607e2f14bd7c63c06c464a6f93b8efbabe28 <
    0c0a8ed85349dae298712d79cb276acfeb794d82
  - Linux 4.20
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: total
  timestamp: '2026-10-16T15:42:23.113167Z'
published: '2026-07-27'
updated: '2026-10-16'
sourceUpdated: '2026-10-16T15:52:51.859Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-64548'
references:
  - url: 'https://git.kernel.org/stable/c/f1644c9508d24f50dd9e8ebe8d3ba86e0996d2f5'
  - url: 'https://git.kernel.org/stable/c/a12b1575f9feabd91695a9e9d004862f7195fa25'
  - url: 'https://git.kernel.org/stable/c/ff39d0e3b4feeb65ca43c453d7c75fdf872ded0d'
  - url: 'https://git.kernel.org/stable/c/888706a76286c547bd035432602571e8024b5305'
  - url: 'https://git.kernel.org/stable/c/db77b6bb6e6edb79b10b4efcce346eec5582d588'
  - url: 'https://git.kernel.org/stable/c/4e40056bb5c829f0423f0a6694a0477726d2147e'
  - url: 'https://git.kernel.org/stable/c/bd004716ba75fed6d185795c85cdc92540ebeaab'
  - url: 'https://git.kernel.org/stable/c/0c0a8ed85349dae298712d79cb276acfeb794d82'
tags:
  - cve.org
epss: 0.00142
epssPercentile: 0.03112
ingestedAt: '2026-10-16T17:24:46.832Z'
---

## Overview

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

bpf, sockmap: reject overflowing copy + len in bpf_msg_push_data()

When the scatterlist ring is full or nearly full, bpf_msg_push_data()
enters a copy fallback path and computes copy + len for the page
allocation size. Since len comes from BPF with arg3_type = ARG_ANYTHING
and both are u32, a crafted len can wrap the sum to a small value,
causing an undersized allocation followed by an out-of-bounds memcpy.

 BUG: unable to handle page fault for address: ffffed104089a402
 Oops: Oops: 0000 [#1] SMP KASAN NOPTI
 Call Trace:
  __asan_memcpy (mm/kasan/shadow.c:105)
  bpf_msg_push_data (net/core/filter.c:2852 net/core/filter.c:2788)
  bpf_prog_9ed8b5711920a7d7+0x2e/0x36
  sk_psock_msg_verdict (net/core/skmsg.c:934)
  tcp_bpf_sendmsg (net/ipv4/tcp_bpf.c:421 net/ipv4/tcp_bpf.c:584)
  __sys_sendto (net/socket.c:2206)
  do_syscall_64 (arch/x86/entry/syscall_64.c:94)
  entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130)

Add an overflow check before the allocation.

## Affected

- `Linux >= 6fff607e2f14bd7c63c06c464a6f93b8efbabe28 < f1644c9508d24f50dd9e8ebe8d3ba86e0996d2f5`
- `Linux >= 6fff607e2f14bd7c63c06c464a6f93b8efbabe28 < a12b1575f9feabd91695a9e9d004862f7195fa25`
- `Linux >= 6fff607e2f14bd7c63c06c464a6f93b8efbabe28 < ff39d0e3b4feeb65ca43c453d7c75fdf872ded0d`
- `Linux >= 6fff607e2f14bd7c63c06c464a6f93b8efbabe28 < 888706a76286c547bd035432602571e8024b5305`
- `Linux >= 6fff607e2f14bd7c63c06c464a6f93b8efbabe28 < db77b6bb6e6edb79b10b4efcce346eec5582d588`
- `Linux >= 6fff607e2f14bd7c63c06c464a6f93b8efbabe28 < 4e40056bb5c829f0423f0a6694a0477726d2147e`
- `Linux >= 6fff607e2f14bd7c63c06c464a6f93b8efbabe28 < bd004716ba75fed6d185795c85cdc92540ebeaab`
- `Linux >= 6fff607e2f14bd7c63c06c464a6f93b8efbabe28 < 0c0a8ed85349dae298712d79cb276acfeb794d82`
- `Linux 4.20`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
