CVE-2025-40314 json
usb: cdns3: gadget: Use-after-free during failed initialization and exit of cdnsp gadget
published 2025-12-08 11 mo ago modified 2026-10-14 25 d ago also EUVD-2025-201631
- cvss
- —
- not scored
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.2%
- EPSS 0.2% chance of exploitation in 30 days, percentile 10%
- public exploits
- 0
- none known
Summary
In the Linux kernel, the following vulnerability has been resolved:
usb: cdns3: gadget: Use-after-free during failed initialization and exit of cdnsp gadget
In the __cdnsp_gadget_init() and cdnsp_gadget_exit() functions, the gadget structure (pdev->gadget) was freed before its endpoints. The endpoints are linked via the ep_list in the gadget structure. Freeing the gadget first leaves dangling pointers in the endpoint list. When the endpoints are subsequently freed, this results in a use-after-free.
Fix: By separating the usb_del_gadget_udc() operation into distinct "del" and "put" steps, cdnsp_gadget_free_endpoints() can be executed prior to the final release of the gadget structure with usb_put_gadget().
A patch similar to bb9c74a5bd14("usb: dwc3: gadget: Free gadget structure only after freeing endpoints").
Patch / fix
- Linux Linux 5.15.197, 6.1.159, 6.6.117, 6.12.58, 6.17.8, 6.18
- linux Debian 12 6.1.159-1
- linux Debian 13 6.12.63-1
- linux Debian 14 6.17.8-1
debian advisories DEBIAN-CVE-2025-40314
- linux Ubuntu 25.10 6.17.0-14.14
- linux-aws Ubuntu 25.10 6.17.0-1007.7
- linux-gcp Ubuntu 25.10 6.17.0-1007.7
- linux-azure Ubuntu 25.10 6.17.0-1008.8
- linux-raspi Ubuntu 25.10 6.17.0-1008.8
- linux-riscv Ubuntu 25.10 6.17.0-14.14.1
- linux-oracle Ubuntu 25.10 6.17.0-1007.7
- linux-aws-6.17 Ubuntu 24.04 LTS 6.17.0-1007.7~24.04.1
ubuntu advisories UBUNTU-CVE-2025-40314
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- kernel-rt Linux Micro 6.1, Linux Micro 6.0 6.4.0-40.1
- kernel-source-rt Linux Micro 6.1, Linux Micro 6.0 6.4.0-40.1
- kernel-source Linux Micro 6.1, Linux Micro 6.0 6.4.0-39.1
- kernel-default Linux Micro 6.1, Linux Micro 6.0 6.4.0-39.1
- kernel-kvmsmall Linux Micro 6.1, Linux Micro 6.0 6.4.0-39.1
- kernel-default-base Linux Micro 6.1, Linux Micro 6.0 6.4.0-39.1.21.16
- kernel-rt Linux Micro 6.2 6.12.0-160000.9.1
- kernel-64kb SLES 16.0, Linux Micro 6.2, SLES for SAP applications 16.0 6.12.0-160000.9.1
suse advisories SUSE-SU-2026:20845-1SUSE-SU-2026:20876-1SUSE-SU-2026:20477-1SUSE-SU-2026:20498-1SUSE-SU-2026:20207-1SUSE-SU-2026:20220-1
- kernel-rt openSUSE Leap 16.0 6.12.0-160000.9.1
- dtb-aarch64 openSUSE Leap 16.0 6.12.0-160000.9.1
- kernel-64kb openSUSE Leap 16.0 6.12.0-160000.9.1
- kernel-syms openSUSE Leap 16.0 6.12.0-160000.9.1
- kernel-azure openSUSE Leap 16.0 6.12.0-160000.9.1
- kernel-obs-qa openSUSE Leap 16.0 6.12.0-160000.9.1
- kernel-source openSUSE Leap 16.0 6.12.0-160000.9.1
- kernel-default openSUSE Leap 16.0 6.12.0-160000.9.1
opensuse advisories openSUSE-SU-2026:20145-1
- git.kernel.org/stable/c/0cf9a50af91fbdac3849f8d950e883a3eaa3ecea commit
- git.kernel.org/stable/c/37158ce6ba964b62d1e3eebd11f03c6900a52dd1 commit
- git.kernel.org/stable/c/ea37884097a0931abb8e11e40eacfb25e9fdb5e9 commit
- git.kernel.org/stable/c/9c52f01429c377a2d32cafc977465f37b5384f77 commit
- git.kernel.org/stable/c/fdf573c517627a96f5040f988e9b21267806be5c commit
- git.kernel.org/stable/c/87c5ff5615dc0a37167e8faf3adeeddc6f1344a3 commit
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2025-40314 updated
kernel: usb: cdns3: gadget: Use-after-free during failed initialization and exit of cdnsp gadget
-
Red Hat Enterprise Linux 6 perf, kernel, python-perf, kernel-kdump, kernel-firmware, kernel-bootwrapper, +1 more Red Hat Enterprise Linux 7 perf, kernel, bpftool, kernel-rt, python-perf, kernel-kdump, +8 more Red Hat Enterprise Linux 8 perf, kernel, bpftool, kernel-rt, kernel-core, kernel-tools, +29 more Red Hat Enterprise Linux 9 rv, perf, rtla, kernel, bpftool, libperf, +83 more Red Hat Enterprise Linux 10 kernelnot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
Exploit prediction
0.21% chance of exploitation in the next 30 days, higher than 10% of all scored CVEs (FIRST EPSS, 2026-11-08).
Affected products
- Linux Linux
Classification
- Technology feeds
References
- git.kernel.org /stable/c/0cf9a50af91fbdac3849f8d950e883a3eaa3ecea
- git.kernel.org /stable/c/37158ce6ba964b62d1e3eebd11f03c6900a52dd1
- git.kernel.org /stable/c/ea37884097a0931abb8e11e40eacfb25e9fdb5e9
- git.kernel.org /stable/c/9c52f01429c377a2d32cafc977465f37b5384f77
- git.kernel.org /stable/c/fdf573c517627a96f5040f988e9b21267806be5c
- git.kernel.org /stable/c/87c5ff5615dc0a37167e8faf3adeeddc6f1344a3
Sources
- CVE List CVE-2025-40314
- NVD CVE-2025-40314
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.