Linux: NULL Pointer Dereference
CVE-2026-31638 is a high-severity NULL pointer dereference vulnerability in Linux, with a CVSS 3.1 base score of 7.5 out of 10. It can be exploited remotely over the network by an unauthenticated attacker, without any action from a user. The record lists versions b8f66447448d6c305a51413a67ec8ed26aa7d1dd, 0c156aff8a2d4fa0d61db7837641975cf0e5452d, 8299ca146489664e3c0c90a3b8900d8335b1ede4 as the first without the flaw, so updating Linux to one of those releases or later removes the exposure. There is no confirmed exploitation so far. EPSS estimates a 0.44% chance of exploitation within 30 days, which is low compared with other CVEs.
High severity with no evidence of exploitation so far.
What to do
- Update Linux to b8f66447448d6c305a51413a67ec8ed26aa7d1dd or 0c156aff8a2d4fa0d61db7837641975cf0e5452d or 8299ca146489664e3c0c90a3b8900d8335b1ede4 or 9fb09861e2b8d1abfe2efaf260c9f1d30080ea38, whichever matches your release line, or a later version.
- Update Linux Kernel to 6.6.135 or 6.12.82 or 6.18.23 or 6.19.13, whichever matches your release line, or a later version.
- Until you can update, restrict network access to the affected service so it is not reachable from untrusted networks.
Affected products and versions
| Vendor | Product | Affected versions | Fixed in |
|---|---|---|---|
| Linux | Linux | 5e6ef4f1017c7f844e305283bbd8875af475e2fc up to, but not including, b8f66447448d6c305a51413a67ec8ed26aa7d1dd; 5e6ef4f1017c7f844e305283bbd8875af475e2fc up to, but not including, 0c156aff8a2d4fa0d61db7837641975cf0e5452d; 5e6ef4f1017c7f844e305283bbd8875af475e2fc up to, but not including, 8299ca146489664e3c0c90a3b8900d8335b1ede4; 5e6ef4f1017c7f844e305283bbd8875af475e2fc up to, but not including, 9fb09861e2b8d1abfe2efaf260c9f1d30080ea38; 5e6ef4f1017c7f844e305283bbd8875af475e2fc up to, but not including, 6331f1b24a3e85465f6454e003a3e6c22005a5c5; 6.2 | b8f66447448d6c305a51413a67ec8ed26aa7d1dd, 0c156aff8a2d4fa0d61db7837641975cf0e5452d, 8299ca146489664e3c0c90a3b8900d8335b1ede4, 9fb09861e2b8d1abfe2efaf260c9f1d30080ea38, 6331f1b24a3e85465f6454e003a3e6c22005a5c5 |
| Linux | Linux Kernel | 6.2.1 up to, but not including, 6.6.135; 6.7 up to, but not including, 6.12.82; 6.13 up to, but not including, 6.18.23; 6.19 up to, but not including, 6.19.13; 6.2; 7.0 | 6.6.135, 6.12.82, 6.18.23, 6.19.13 |
Version data comes from the organisation that assigned the CVE. Confirm against the vendor advisory before deciding you are unaffected.
How the severity score breaks down
- Attack vector
- NetworkCan be exploited remotely over a network, including the internet.
- Attack complexity
- LowNo special conditions are needed; the attack works reliably.
- Privileges required
- NoneNo account or login is needed.
- User interaction
- NoneNo action by a victim is required.
- Scope
- UnchangedImpact stays within the vulnerable component.
- Confidentiality
- NoneNo data is disclosed.
- Integrity
- NoneNothing can be modified.
- Availability
- HighThe component can be taken down completely.
Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H. Scored by CNA.
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.
Source: the CVE record as published by its numbering authority, via NVD and CVE.org.
The underlying weakness: NULL Pointer Dereference
The product dereferences a pointer that it expects to be valid but is NULL.
How developers prevent this class of flaw
- For any pointers that could have been modified or provided from a function that can return NULL, check the pointer for NULL before use. When working with a multithreaded or otherwise asynchronous environment, ensure that proper locking APIs are used to lock before the check, and unlock when it has finished.
- Select a programming language that is not susceptible to these issues.
- Check the results of all functions that return a value and verify that the value is non-null before acting upon it.
Timeline
- CVE record published.
- CISA published its SSVC assessment (exploitation: none, automatable: yes, technical impact: partial).
- Record last changed materially (score, affected products, status or references).
References
Patches and release notes
- git.kernel.org/stable/c/0c156aff8a2d4fa0d61db7837641975cf0e5452d
- git.kernel.org/stable/c/6331f1b24a3e85465f6454e003a3e6c22005a5c5
- git.kernel.org/stable/c/8299ca146489664e3c0c90a3b8900d8335b1ede4
- git.kernel.org/stable/c/9fb09861e2b8d1abfe2efaf260c9f1d30080ea38
- git.kernel.org/stable/c/b8f66447448d6c305a51413a67ec8ed26aa7d1dd
Recent NULL Pointer Dereference vulnerabilities
- 9.8 Critical severity
- 7.5 High severity
- 7.5 High severity
- 7.8 High severity
- 8.8 High severity
- 9.8 Critical severity
Spotted an error? Tell us.