CVE-2025-40094

CVE-2025-40094

High · published October 30, 2025

CVSS v3.1
7.8
EPSS
0%
Percentile
4.2
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

usb: gadget: f_acm: Refactor bind path to use __free()

After an bind/unbind cycle, the acm->notify_req is left stale. If a

subsequent bind fails, the unified error label attempts to free this

stale request, leading to a NULL pointer dereference when accessing

ep->ops->free_request.

Refactor the error handling in the bind path to use the __free()

automatic cleanup mechanism.

Unable to handle kernel NULL pointer dereference at virtual address 0000000000000020

Call trace:

usb_ep_free_request+0x2c/0xec

gs_free_req+0x30/0x44

acm_bind+0x1b8/0x1f4

usb_add_function+0xcc/0x1f0

configfs_composite_bind+0x468/0x588

gadget_bind_driver+0x104/0x270

really_probe+0x190/0x374

__driver_probe_device+0xa0/0x12c

driver_probe_device+0x3c/0x218

__device_attach_driver+0x14c/0x188

bus_for_each_drv+0x10c/0x168

__device_attach+0xfc/0x198

device_initial_probe+0x14/0x24

bus_probe_device+0x94/0x11c

device_add+0x268/0x48c

usb_add_gadget+0x198/0x28c

dwc3_gadget_init+0x700/0x858

__dwc3_set_mode+0x3cc/0x664

process_scheduled_works+0x1d8/0x488

worker_thread+0x244/0x334

kthread+0x114/0x1bc

ret_from_fork+0x10/0x20

The record
Technical detail
CVSS v3.1
7.8 · HIGH
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00154 · 4.2th percentile
Published
2025-10-30T14:15Z
References (6)
EPSS history
Timeline
  • 30 OCT 09:48Z
    usb: gadget: f_acm: Refactor bind path to use __free()
    cvelistv5