CVE-2022-50034: usb: cdns3 fix use-after-free at workaround 2
In the Linux kernel, the following vulnerability has been resolved:
usb: cdns3 fix use-after-free at workaround 2
BUG: KFENCE: use-after-free read in __list_del_entry_valid+0x10/0xac
cdns3_wa2_remove_old_request()
{
...
kfree(priv_req->request.buf);
cdns3_gadget_ep_free_request(&priv_ep->endpoint, &priv_req->request);
list_del_init(&priv_req->list);
^^^ use after free
...
}
cdns3_gadget_ep_free_request() free the space pointed by priv_req,
but priv_req is used in the following list_del_init().
This patch move list_del_init() before cdns3_gadget_ep_free_request().
Security readout for executives and security teams
Plain-English summary
CVE-2022-50034 is a Linux kernel bug in the Cadence USB3 controller gadget driver. A request object can be freed and then used again, which can cause memory corruption or a kernel crash. Business impact is likely limited to systems using this specific USB controller path, but kernel bugs should be prioritized where affected hardware is present.
Executive priority
Treat as a targeted kernel maintenance priority, not an emergency based on current sources. Patch affected Linux systems where cdns3 USB gadget functionality exists, especially embedded, appliance, or device platforms. Broader server fleets may have low exposure if this driver path is absent.
Technical view
The issue is a use-after-free in the Linux kernel cdns3 USB gadget code. In cdns3_wa2_remove_old_request(), cdns3_gadget_ep_free_request() frees priv_req, then list_del_init() uses priv_req afterward. The fix reorders list_del_init() before freeing the request. Multiple stable kernel commits are referenced as fixes.
Likely exposure
Exposure appears limited to Linux systems running affected kernel versions with the Cadence USB3 cdns3 gadget driver path in use. The CVE record lists fixes across stable branches including 5.4.211, 5.10.138, 5.15.63, 5.19.4, and 6.0. Confirm exact exposure through your distribution kernel advisories.
Exploitation context
The provided sources do not report active exploitation, public exploit code, or CISA KEV listing. The bug was detected as a KFENCE use-after-free read. Practical impact depends on whether an attacker can influence the affected USB gadget request lifecycle on a vulnerable system.
Researcher notes
The evidence is clear on root cause and fix ordering, but incomplete on exploitability, attack prerequisites, and CVSS severity. Validate branch-specific affected ranges through Linux stable or downstream distribution records because vendors often backport fixes without changing major kernel versions.
Mitigation direction
Update to a vendor kernel containing the referenced stable fixes.
Prioritize systems using Cadence USB3 cdns3 gadget functionality.
Check distribution advisories for backported fixes and package names.
If no patched package exists, follow vendor guidance for temporary risk reduction.
Validation and detection
Inventory Linux kernel versions and branches across affected assets.
Determine whether cdns3 USB gadget driver support is enabled or loaded.
Review kernel package changelogs for CVE-2022-50034 or referenced fix commits.
Confirm updated systems run a kernel at or beyond the fixed branch version.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cve · low confidence lookup
CVE-2022-50034 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
0CVSS vectors
3Timeline events
0ADP providers
6Source links
Vulnerability timeline
Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.
CVE reservedCVE Program
The CVE ID was reserved by the assigning CNA.
CVE publishedCVE Program
The CVE record was published.
Jun 18, 2025, 11:01 UTC (UTC+00:00)
CVE updatedCVE Program
The CVE record metadata indicates this as the latest update time.