CVE-2026-31638 rxrpc: Only put the call ref if one was acquired
A null pointer dereference in the Linux kernel's rxrpc module allows remote attackers to cause a system crash via crafted packets.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-31638?
CVE-2026-31638 is a high-severity vulnerability in Linux kernel, published on 24 Apr 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
In the Linux kernel, the following vulnerability has been resolved:
rxrpc: Only put the call ref if one was acquired
rxrpc_input_packet_on_conn() can process a to-client packet after the current client call on the channel has already been torn down. In that case chan->call is NULL, rxrpc_try_get_call() returns NULL and there is no reference to drop.
The client-side implicit-end error path does not account for that and unconditionally calls rxrpc_put_call(). This turns a protocol error path into a kernel crash instead of rejecting the packet.
Only drop the call reference if one was actually acquired. Keep the existing protocol error handling unchanged.
Weakness: CWE-476
Which versions are affected by CVE-2026-31638?
It affects 1 product.
Products include Linux kernel.
How do I fix CVE-2026-31638?
Apply the vendor's patch.
Is CVE-2026-31638 being exploited?
There is no known exploitation of CVE-2026-31638 in the wild and no public exploit code.
Other vulnerabilities in Linux kernel
Sources
Also known as AZL-83672, BELL-CVE-2026-31638, DEBIAN-CVE-2026-31638, GHSA-5vqj-w88j-2624, ROOT-OS-DEBIAN-13-CVE-2026-31638, ROOT-OS-UBUNTU-2404-CVE-2026-31638 and 1 more.