CVE-2025-38115: net_sched: sch_sfq: fix a potential crash on gso_skb handling
In the Linux kernel, the following vulnerability has been resolved:
net_sched: sch_sfq: fix a potential crash on gso_skb handling
SFQ has an assumption of always being able to queue at least one packet.
However, after the blamed commit, sch->q.len can be inflated by packets
in sch->gso_skb, and an enqueue() on an empty SFQ qdisc can be followed
by an immediate drop.
Fix sfq_drop() to properly clear q->tail in this situation.
ip netns add lb
ip link add dev to-lb type veth peer name in-lb netns lb
ethtool -K to-lb tso off # force qdisc to requeue gso_skb
ip netns exec lb ethtool -K in-lb gro on # enable NAPI
ip link set dev to-lb up
ip -netns lb link set dev in-lb up
ip addr add dev to-lb 192.168.20.1/24
ip -netns lb addr add dev in-lb 192.168.20.2/24
tc qdisc replace dev to-lb root sfq limit 100
ip netns exec lb netserver
netperf -H 192.168.20.2 -l 100 &
netperf -H 192.168.20.2 -l 100 &
netperf -H 192.168.20.2 -l 100 &
netperf -H 192.168.20.2 -l 100 &
Security readout for executives and security teams
Plain-English summary
A flaw in the Linux SFQ network scheduler can crash the kernel when it mishandles queued segmented packets. Exploitation requires local access under the supplied CVSS assessment, so this is not described as an unauthenticated internet attack. Affected multi-user, container, or network-processing systems deserve prompt review.
Executive priority
Treat as a high-priority kernel maintenance issue, especially for shared Linux infrastructure. It is less urgent than a remotely exploitable flaw, but a local user-triggered kernel crash could disrupt critical workloads. Patch through normal emergency maintenance after confirming vendor applicability.
Technical view
SFQ assumes it can always queue at least one packet. Packets held in sch->gso_skb can inflate sch->q.len, allowing enqueue on an empty SFQ queue to trigger an immediate drop. sfq_drop() may then retain an invalid q->tail state, potentially causing a kernel crash. Stable kernel commits clear the tail correctly.
Likely exposure
Exposure is most likely on affected Linux kernels where the SFQ qdisc and GSO requeue behavior are used. The supplied affected-version data is ambiguous and includes commit identifiers alongside release numbers, so administrators should map running distribution kernels to vendor advisories or the referenced stable fixes.
Exploitation context
The supplied CVSS 3.1 score is 7.8 with local access, low complexity, low privileges, and no user interaction. The source bundle provides a crash reproducer but no evidence of malicious exploitation. CISA KEV status is false, and remote exploitation is not established.
Researcher notes
The documented failure concerns inconsistent SFQ queue state when sch->gso_skb inflates the scheduler length and an immediate drop occurs on an otherwise empty queue. The fix clears q->tail in sfq_drop(). Sources establish crash potential, not code execution or observed attacks; avoid inferring broader impact solely from the CVSS confidentiality and integrity metrics.
Mitigation direction
Install a vendor-supported kernel update containing the referenced SFQ fix.
Check distribution advisories because packaged kernel versions may not match upstream numbering.
If updates are delayed, assess whether SFQ usage can be safely avoided under vendor guidance.
Prioritize shared, container-hosting, and network-intensive systems where local users may influence traffic scheduling.
Validation and detection
Inventory running kernel builds and compare them with distribution security advisories.
Confirm whether affected interfaces use the SFQ queueing discipline.
Verify the installed kernel incorporates the applicable referenced stable commit.
After updating, confirm systems boot normally and report the expected patched kernel build.
Review kernel logs for unexplained scheduler faults or crashes; this alone does not prove exploitation.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2025-38115 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
1CVSS vectors
3Timeline events
1ADP providers
11Source links
CVSS vector scores
1 official score
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.