CVE-2026-23383

Source
https://cve.org/CVERecord?id=CVE-2026-23383
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-23383.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2026-23383
Downstream
Related
Published
2026-03-25T10:28:02.126Z
Modified
2026-04-24T18:29:23.444802951Z
Summary
bpf, arm64: Force 8-byte alignment for JIT buffer to prevent atomic tearing
Details

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

bpf, arm64: Force 8-byte alignment for JIT buffer to prevent atomic tearing

struct bpf_plt contains a u64 target field. Currently, the BPF JIT allocator requests an alignment of 4 bytes (sizeof(u32)) for the JIT buffer.

Because the base address of the JIT buffer can be 4-byte aligned (e.g., ending in 0x4 or 0xc), the relative padding logic in build_plt() fails to ensure that target lands on an 8-byte boundary.

This leads to two issues: 1. UBSAN reports misaligned-access warnings when dereferencing the structure. 2. More critically, target is updated concurrently via WRITEONCE() in bpfarchtextpoke() while the JIT'd code executes ldr. On arm64, 64-bit loads/stores are only guaranteed to be single-copy atomic if they are 64-bit aligned. A misaligned target risks a torn read, causing the JIT to jump to a corrupted address.

Fix this by increasing the allocation alignment requirement to 8 bytes (sizeof(u64)) in bpfjitbinarypackalloc(). This anchors the base of the JIT buffer to an 8-byte boundary, allowing the relative padding math in build_plt() to correctly align the target field.

Database specific
{
    "cna_assigner": "Linux",
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/23xxx/CVE-2026-23383.json"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
b2ad54e1533e91449cb2a371e034942bd7882b58
Fixed
80ad264da02cc4aee718e799c2b79f0f834673dc
Fixed
519b1ad91de5bf7a496f2b858e9212db6328e1de
Fixed
66959ed481a474eaae278c7f6860a2a9b188a4d6
Fixed
ef06fd16d48704eac868441d98d4ef083d8f3d07

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-23383.json"

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
6.0.0
Fixed
6.12.77
Type
ECOSYSTEM
Events
Introduced
6.13.0
Fixed
6.18.17
Type
ECOSYSTEM
Events
Introduced
6.19.0
Fixed
6.19.7

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-23383.json"