CyberSecBulletin
CVE-2026-68136NVD status: Received

Linux: NULL Pointer Dereference

CVE-2026-68136 is a critical-severity NULL pointer dereference vulnerability in Linux, with a CVSS 3.1 base score of 9.8 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 7fc7e35212cf58c134310fb47566a844297ceae9, d1fb23f8f794ac4683127bd49a6422bd87e0ac02, db3e82da616f52e2b27e25e7be3fde2f2a5e54d6 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.54% chance of exploitation within 30 days, which is low compared with other CVEs.

Patch this week

Critical severity: a successful attack would have severe impact.

What to do

  1. Update Linux to 7fc7e35212cf58c134310fb47566a844297ceae9 or d1fb23f8f794ac4683127bd49a6422bd87e0ac02 or db3e82da616f52e2b27e25e7be3fde2f2a5e54d6 or 107e1a469f53a2a70874f3f12bf6fcd23925da1d, whichever matches your release line, or a later version.
  2. Until you can update, restrict network access to the affected service so it is not reachable from untrusted networks.

Affected products and versions

VendorProductAffected versionsFixed in
LinuxLinux3a1296a38d0cf62bffb9a03c585cbd5dbf15d596 up to, but not including, 7fc7e35212cf58c134310fb47566a844297ceae9; 3a1296a38d0cf62bffb9a03c585cbd5dbf15d596 up to, but not including, d1fb23f8f794ac4683127bd49a6422bd87e0ac02; 3a1296a38d0cf62bffb9a03c585cbd5dbf15d596 up to, but not including, db3e82da616f52e2b27e25e7be3fde2f2a5e54d6; 3a1296a38d0cf62bffb9a03c585cbd5dbf15d596 up to, but not including, 107e1a469f53a2a70874f3f12bf6fcd23925da1d; 3a1296a38d0cf62bffb9a03c585cbd5dbf15d596 up to, but not including, a4dfd46cc8f08a29c6183794790547d0945f3d45; 3a1296a38d0cf62bffb9a03c585cbd5dbf15d596 up to, but not including, fc0c0f7a207f0cd2d2aa725696c907f7d03af9e0; 3a1296a38d0cf62bffb9a03c585cbd5dbf15d596 up to, but not including, e751256486d0ded20f5a9f9863467f1dce65142f; 5.67fc7e35212cf58c134310fb47566a844297ceae9, d1fb23f8f794ac4683127bd49a6422bd87e0ac02, db3e82da616f52e2b27e25e7be3fde2f2a5e54d6, 107e1a469f53a2a70874f3f12bf6fcd23925da1d, a4dfd46cc8f08a29c6183794790547d0945f3d45, fc0c0f7a207f0cd2d2aa725696c907f7d03af9e0

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
HighAll data handled by the component can be read.
Integrity
HighData or code can be modified at will.
Availability
HighThe component can be taken down completely.

Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H. Scored by CNA.

Official description

In the Linux kernel, the following vulnerability has been resolved: net: gro: fix double aggregation of flush-marked skbs Commit 0ab03f353d36 ("net-gro: Fix GRO flush when receiving a GSO packet.") added a flush check to skb_gro_receive(), but skb_gro_receive_list() lacks the same validation. As a result, packets marked with NAPI_GRO_CB(skb)->flush may still be re-aggregated. This allows already-GRO'd packets with existing frag_list to be re-aggregated into a new GRO session, corrupting the frag_list chain structure. When skb_segment() attempts to unpack these malformed packets, it encounters invalid state and triggers a kernel panic. Scenario (Tethering/Device forwarding): 1. Driver: Generated aggregated packet P1 via LRO with frag_list 2. Dev A: Receives aggregated fraglist packet and flush flag set 3. Dev A: Re-enters GRO, skb_gro_receive_list() is called 4. Missing flush check allows re-aggregation despite flush flag 5. Frag_list chain becomes corrupted (loops or dangling refs) 6. Dev B: TX path calls skb_segment(), crashes on corrupted frag_list Root cause in skb_segment(): The check at line ~4891: if (hsize <= 0 && i >= nfrags && skb_headlen(list_skb) && (skb_headlen(list_skb) == len || sg)) { When frag_list is corrupted by double aggregation, when list_skb is a NULL pointer from skb->next, skb_headlen(list_skb) dereference NULL/corrupted pointers occurs. Call Trace: skb_headlen(NULL skb) skb_segment tcp_gso_segment tcp4_gso_segment inet_gso_segment skb_mac_gso_segment __skb_gso_segment skb_gso_segment validate_xmit_skb validate_xmit_skb_list sch_direct_xmit qdisc_restart __qdisc_run qdisc_run net_tx_action Fix: Add NAPI_GRO_CB(skb)->flush validation to the early-return check in skb_gro_receive_list(), matching the defensive programming pattern of skb_gro_receive().

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.

More NULL Pointer Dereference vulnerabilities (CWE-476)

Timeline

  1. CVE record published.
  2. CISA published its SSVC assessment (exploitation: none, automatable: yes, technical impact: total).
  3. Record last changed materially (score, affected products, status or references).

References

Recent NULL Pointer Dereference vulnerabilities

Spotted an error? Tell us.