PT-2024-3369 · Linux+6 · Linux Kernel+6
Norihiko Hama
·
Published
2024-04-04
·
Updated
2026-03-14
·
CVE-2024-26996
CVSS v3.1
7.8
High
| Vector | AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
Name of the Vulnerable Software and Affected Versions:
Linux kernel (affected versions not specified)
Description:
The issue is related to a use-after-free error in the Linux kernel's USB gadget functionality, specifically in the
f ncm module. When the ncm function is working and the usb0 interface is stopped for link down, eth stop() is called. If a USB transport error occurs in usb ep enable(), the in ep and/or out ep may not be enabled. As a result, ncm disable() is called to disable the ncm unbind, but gether disconnect() is never called since in ep is not enabled. This leads to the ncm object being released in ncm unbind() but the dev->port usb associated with ncm->port is not NULL. When the ncm bind is called again to recover the netdev, the ncm object is reallocated, but the usb0 interface is already associated with the previous released ncm object. This can cause a use-after-free memory error when eth start xmit() is called.Technical details about exploitation include:
- The
ncm disable()function not callinggether disconnect()due toin epnot being enabled. - The
ncmobject being released inncm unbind()butdev->port usbremaining associated with the released object. - The
ncmobject being reallocated whenncmbind is called again, but theusb0interface still being associated with the previous releasedncmobject.
Recommendations:
At the moment, there is no information about a newer version that contains a fix for this vulnerability.
Exploit
Use After Free
Found an issue in the description? Have something to add? Feel free to write us 👾
Weakness Enumeration
Related Identifiers
Affected Products
Astra Linux
Debian
Linuxmint
Linux Kernel
Red Os
Suse
Ubuntu