cve/2024/CVE-2024-42085.md

18 lines
1.6 KiB
Markdown
Raw Normal View History

2024-08-26 18:34:01 +00:00
### [CVE-2024-42085](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-42085)
![](https://img.shields.io/static/v1?label=Product&message=Linux&color=blue)
![](https://img.shields.io/static/v1?label=Version&message=2fa487a94667%3C%207026576e8909%20&color=brighgreen)
![](https://img.shields.io/static/v1?label=Vulnerability&message=n%2Fa&color=brighgreen)
### Description
In the Linux kernel, the following vulnerability has been resolved:usb: dwc3: core: remove lock of otg mode during gadget suspend/resume to avoid deadlockWhen config CONFIG_USB_DWC3_DUAL_ROLE is selected, and trigger systemto enter suspend status with below command:echo mem > /sys/power/stateThere will be a deadlock issue occurring. Detailed invoking path asbelow:dwc3_suspend_common() spin_lock_irqsave(&dwc->lock, flags); <-- 1st dwc3_gadget_suspend(dwc); dwc3_gadget_soft_disconnect(dwc); spin_lock_irqsave(&dwc->lock, flags); <-- 2ndThis issue is exposed by commit c7ebd8149ee5 ("usb: dwc3: gadget: FixNULL pointer dereference in dwc3_gadget_suspend") that removes the codeof checking whether dwc->gadget_driver is NULL or not. It causes thefollowing code is executed and deadlock occurs when trying to get thespinlock. In fact, the root cause is the commit 5265397f9442("usb: dwc3:Remove DWC3 locking during gadget suspend/resume") that forgot to removethe lock of otg mode. So, remove the redundant lock of otg mode duringgadget suspend/resume.
### POC
#### Reference
No PoCs from references.
#### Github
- https://github.com/fkie-cad/nvd-json-data-feeds