usb: musb: sunxi: Fix accessing an released usb phy
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 4.5, 4.10, 4.14
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
- Exploitation: none
- Automatable: no
- Technical impact: total
Summary
In the Linux kernel, the following vulnerability has been resolved: usb: musb: sunxi: Fix accessing an released usb phy Commit 6ed05c68cbca ("usb: musb: sunxi: Explicitly release USB PHY on exit") will cause that usb phy @glue->xceiv is accessed after released. 1) register platform driver @sunxi_musb_driver // get the usb phy @glue->xceiv sunxi_musb_probe() -> devm_usb_get_phy(). 2) register and unregister platform driver @musb_driver musb_probe() -> sunxi_musb_init() use the phy here //the phy is released here musb_remove() -> sunxi_musb_exit() -> devm_usb_put_phy() 3) register @musb_driver again musb_probe() -> sunxi_musb_init() use the phy here but the phy has been released at 2). ... Fixed by reverting the commit, namely, removing devm_usb_put_phy() from sunxi_musb_exit().
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: no · Technical impact: total
- Record last updated
Affected versions
- Linux Linux
From 4.4.95 · fixed in 4.5; From 4.9.59 · fixed in 4.10; From 4.13.10 · fixed in 4.14
- Linux Linux
4.14
References 8
git.kernel.org
- stable/c/721ddad945596220c123eb6f7126729fe277ee4f
- stable/c/4aa77d5ea9944468e16c3eed15e858fd5de44de1
- stable/c/6e2848d1c8c0139161e69ac0a94133e90e9988e8
- stable/c/63559ba8077cbadae1c92a65b73ea522bf377dd9
- stable/c/ccd811c304d2ee56189bfbc49302cb3c44361893
- stable/c/8a30da5aa9609663b3e05bcc91a916537f66a4cd
- stable/c/b08baa75b989cf779cbfa0969681f8ba2dc46569
- stable/c/498dbd9aea205db9da674994b74c7bf8e18448bd