Cyber Posture

CVE-2026-31636

Critical

Published: 24 April 2026

Published
24 April 2026
Modified
27 April 2026
KEV Added
Patch
CVSS Score 9.1 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H
EPSS Score 0.0005 16.5th percentile
Risk Priority 18 60% EPSS · 20% KEV · 20% CVSS

Summary

CVE-2026-31636 is a critical-severity Out-of-bounds Read (CWE-125) vulnerability in Linux Linux Kernel. Its CVSS base score is 9.1 (Critical).

Operationally, exploitation aligns with the MITRE ATT&CK technique Exploit Public-Facing Application (T1190); ranked at the 16.5th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog.

The strongest mitigations our analysis identified are NIST 800-53 SI-2 (Flaw Remediation) and SC-7 (Boundary Protection).

Threat & Defense at a Glance

What attackers do: exploitation maps to Exploit Public-Facing Application (T1190) and 2 other techniques. What defenders deploy: see the NIST 800-53 controls recommended below.
Threat & Defense Details

Mitigating Controls (NIST 800-53 r5)AI

prevent

Timely patching of the Linux kernel flaw in rxgk_verify_authenticator() directly resolves the out-of-bounds read from malformed RxRPC RESPONSE authenticators.

prevent

Validating the length and bounds of RxRPC authenticator inputs before pointer arithmetic in kernel parsing prevents exploitation of the inflated parser limit.

prevent

Boundary protection at network interfaces blocks remote unauthenticated access to RxRPC services, mitigating exploitation over the network.

MITRE ATT&CK Enterprise TechniquesAI

T1190 Exploit Public-Facing Application Initial Access
Adversaries may attempt to exploit a weakness in an Internet-facing host or system to initially access a network.
T1212 Exploitation for Credential Access Credential Access
Adversaries may exploit software vulnerabilities in an attempt to collect credentials.
T1499.004 Application or System Exploitation Impact
Adversaries may exploit software vulnerabilities that can cause an application or system to crash and deny availability to users.
Why these techniques?

Remote unauthenticated network exploitation of exposed RxRPC kernel service directly matches T1190. OOB read enables kernel memory disclosure for credential/sensitive data access (T1212). High availability impact via system crash matches T1499.004 Application or System Exploitation.

Confidence: HIGH · MITRE ATT&CK Enterprise v18.1

NVD Description

In the Linux kernel, the following vulnerability has been resolved: rxrpc: fix RESPONSE authenticator parser OOB read rxgk_verify_authenticator() copies auth_len bytes into a temporary buffer and then passes p + auth_len as the parser limit to rxgk_do_verify_authenticator(). Since p is…

more

a __be32 *, that inflates the parser end pointer by a factor of four and lets malformed RESPONSE authenticators read past the kmalloc() buffer. Decoded from the original latest-net reproduction logs with scripts/decode_stacktrace.sh: BUG: KASAN: slab-out-of-bounds in rxgk_verify_response() Call Trace: dump_stack_lvl() [lib/dump_stack.c:123] print_report() [mm/kasan/report.c:379 mm/kasan/report.c:482] kasan_report() [mm/kasan/report.c:597] rxgk_verify_response() [net/rxrpc/rxgk.c:1103 net/rxrpc/rxgk.c:1167 net/rxrpc/rxgk.c:1274] rxrpc_process_connection() [net/rxrpc/conn_event.c:266 net/rxrpc/conn_event.c:364 net/rxrpc/conn_event.c:386] process_one_work() [kernel/workqueue.c:3281] worker_thread() [kernel/workqueue.c:3353 kernel/workqueue.c:3440] kthread() [kernel/kthread.c:436] ret_from_fork() [arch/x86/kernel/process.c:164] Allocated by task 54: rxgk_verify_response() [include/linux/slab.h:954 net/rxrpc/rxgk.c:1155 net/rxrpc/rxgk.c:1274] rxrpc_process_connection() [net/rxrpc/conn_event.c:266 net/rxrpc/conn_event.c:364 net/rxrpc/conn_event.c:386] Convert the byte count to __be32 units before constructing the parser limit.

Deeper analysisAI

CVE-2026-31636 is an out-of-bounds read vulnerability in the Linux kernel's RxRPC implementation, specifically in the rxgk_verify_authenticator() function within net/rxrpc/rxgk.c. The issue arises when processing RESPONSE authenticators: the function copies auth_len bytes into a temporary kmalloc() buffer but then passes p + auth_len as the parser limit to rxgk_do_verify_authenticator(), where p is a __be32 pointer. This pointer arithmetic inflates the end pointer by a factor of four, enabling malformed authenticators to read past the buffer bounds. Kernel Address Sanitizer (KASAN) detected this as a slab-out-of-bounds read during processing in rxgk_verify_response(), triggered via rxrpc_process_connection().

Remote, unauthenticated attackers can exploit this vulnerability over the network with low complexity and no user interaction, as indicated by its CVSS v3.1 base score of 9.1 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H). By sending crafted RESPONSE authenticators, an attacker can trigger the out-of-bounds read (CWE-125), potentially leading to sensitive kernel memory disclosure (high confidentiality impact) or system crashes via denial-of-service (high availability impact).

Mitigation requires applying upstream Linux kernel patches from the provided stable commit references, which resolve the flaw by converting the auth_len byte count to __be32 units before constructing the parser limit. The fixes are available at: https://git.kernel.org/stable/c/20a188775a9a9982d1987e12660d9b44b40a6c99, https://git.kernel.org/stable/c/3e3138007887504ee9206d0bfb5acb062c600025, and https://git.kernel.org/stable/c/7875f3d9777bd4e9892c4db830571ab8ac2044c0. Security practitioners should prioritize updating affected kernel versions using these commits.

Details

CWE(s)

Affected Products

linux
linux kernel
6.16, 7.0 · 6.16.1 — 6.18.23 · 6.19 — 6.19.13

CVEs Like This One

CVE-2025-21782Same product: Linux Linux Kernel
CVE-2025-21743Same product: Linux Linux Kernel
CVE-2026-23204Same product: Linux Linux Kernel
CVE-2026-31568Same product: Linux Linux Kernel
CVE-2026-43042Same product: Linux Linux Kernel
CVE-2026-23327Same product: Linux Linux Kernel
CVE-2024-57945Same product: Linux Linux Kernel
CVE-2026-31774Same product: Linux Linux Kernel
CVE-2026-43051Same product: Linux Linux Kernel
CVE-2026-23325Same product: Linux Linux Kernel

References