CVE-2026-68368: Linux kernel · usb: gadget: f_ncm: validate datagram bounds in ncm_unwrap_ntb()
Affects Linux kernelSource CVE Database V5
Not known to be exploited · fixed in fff1059d139ef798bab917990524faaf25854ca8 : update Linux kernel when convenient.
Data as of 6 Nov 2026, 17:04 UTC
Rated by Threat Radar · No CVSS score from NVD or the CNA
Thin evidence
One scorer or none- CISA SSVC
- Exploitation
- No evidence of active exploitation and no public proof of concept
- Automatable
- Attackers cannot reliably automate steps 1–4 of the kill chain
- Technical impact
- Limited control over the software or limited information exposure
CISA SSVC assessment, 2026-11-06.
- Patch
- Available – fixed in fff1059d139ef798bab917990524faaf25854ca8, f87ed889f0f7417b8938c98d8833f559b755373c, e07751d0527ccc2a1c32eb0b0b7da3b4b9b5381f +10
Exploitation evidence
Disclosed: evidence found.
CVE published 10 Aug 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponized: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 6 Nov 2026.
What to do
Upgrade to a fixed release listed under Affected software.
Affected software
| Product | Affected | Fixed in |
|---|---|---|
| LinuxLinux | Affected
| Fixed in
|
| LinuxLinux | Affected
| Fixed in– |
Description
In the Linux kernel, the following vulnerability has been resolved: usb: gadget: f_ncm: validate datagram bounds in ncm_unwrap_ntb() When unpacking host-supplied NTBs, ncm_unwrap_ntb() checks datagram length against frame_max but does not verify that the datagram fits within the declared block length. Additionally, when decoding multiple NTBs from a single socket buffer, subsequent block lengths are not checked against the actual remaining buffer data. With these checks missing, a malicious USB host can specify datagram offsets and lengths that point beyond the block, or supply secondary NTB headers declaring lengths larger than the buffer. skb_put_data() then copies adjacent kernel memory from skb_shared_info into the network skb. Fix this by verifying that sufficient buffer space remains for the NTB header before parsing, handling zero-length block declarations, ensuring that block lengths never exceed the remaining buffer space, and verifying that each datagram payload stays strictly within the block boundary.
References
- git.kernel.org/stable/c/35d15bbaec0557330e774ec31412ef508de6e0e0 (opens in a new tab)
- git.kernel.org/stable/c/6b2be489eaa6293e60549005d91f15ceb150510f (opens in a new tab)
- git.kernel.org/stable/c/f87ed889f0f7417b8938c98d8833f559b755373c (opens in a new tab)
- git.kernel.org/stable/c/e07751d0527ccc2a1c32eb0b0b7da3b4b9b5381f (opens in a new tab)
- git.kernel.org/stable/c/fff1059d139ef798bab917990524faaf25854ca8 (opens in a new tab)
- git.kernel.org/stable/c/40c706a0224bde194667e3378c689b542fec4b44 (opens in a new tab)
- git.kernel.org/stable/c/41fd5f2fb0027d3773ae949e3247c2e0a2a7fe5c (opens in a new tab)
- git.kernel.org/stable/c/1febec7e47cdcd01f43fb0211094e3010474666e (opens in a new tab)