Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: ieee802154: ca8210: Fix a potential UAF in ca8210_probe If of_clk_add_provider() fails in ca8210_register_ext_clock(), it calls clk_unregister() to release priv->clk and returns an error. However, the caller ca8210_probe() then calls ca8210_remove(), where priv->clk is freed again in ca8210_unregister_ext_clock(). In this case, a use-after-free may happen in the second time we call clk_unregister(). Fix this by removing the first clk_unregister(). Also, priv->clk could be an error code on failure of clk_register_fixed_rate(). Use IS_ERR_OR_NULL to catch this case in ca8210_unregister_ext_clock().
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected ded845a781a578dfb0b5b2c138e5a067aa3b1242 before 28b68cba378e3e50a4082b65f262bc4f2c7c2add; affected ded845a781a578dfb0b5b2c138e5a067aa3b1242 before cdb46be93c1f7bbf2c4649e9fc5fb147cfb5245d; affected ded845a781a578dfb0b5b2c138e5a067aa3b1242 before 85c2857ef90041f567ce98722c1c342c4d31f4bc; affected ded845a781a578dfb0b5b2c138e5a067aa3b1242 before 55e06850c7894f00d41b767c5f5665459f83f58f; affected ded845a781a578dfb0b5b2c138e5a067aa3b1242 before 84c6aa0ae5c4dc121f9996bb8fed46c80909d80e; affected ded845a781a578dfb0b5b2c138e5a067aa3b1242 before 217efe32a45249eb07dcd7197e8403de98345e66; affected ded845a781a578dfb0b5b2c138e5a067aa3b1242 before becf5c147198f4345243c5df0c4f035415491640; affected ded845a781a578dfb0b5b2c138e5a067aa3b1242 before f990874b1c98fe8e57ee9385669f501822979258 |
| Linux / Linux | affected 4.12; unaffected 0 before 4.12; unaffected 4.14.328 through 4.14.*; unaffected 4.19.297 through 4.19.*; unaffected 5.4.259 through 5.4.*; unaffected 5.10.199 through 5.10.*; unaffected 5.15.136 through 5.15.*; unaffected 6.1.59 through 6.1.*; unaffected 6.5.8 through 6.5.*; unaffected 6.6 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/28b68cba378e3e50a4082b65f262bc4f2c7c2add
- https://git.kernel.org/stable/c/cdb46be93c1f7bbf2c4649e9fc5fb147cfb5245d
- https://git.kernel.org/stable/c/85c2857ef90041f567ce98722c1c342c4d31f4bc
- https://git.kernel.org/stable/c/55e06850c7894f00d41b767c5f5665459f83f58f
- https://git.kernel.org/stable/c/84c6aa0ae5c4dc121f9996bb8fed46c80909d80e
- https://git.kernel.org/stable/c/217efe32a45249eb07dcd7197e8403de98345e66
- https://git.kernel.org/stable/c/becf5c147198f4345243c5df0c4f035415491640
- https://git.kernel.org/stable/c/f990874b1c98fe8e57ee9385669f501822979258
ADP enrichment
No English description supplied.
No references supplied.
No English description supplied.
- https://git.kernel.org/stable/c/28b68cba378e3e50a4082b65f262bc4f2c7c2add
- https://git.kernel.org/stable/c/cdb46be93c1f7bbf2c4649e9fc5fb147cfb5245d
- https://git.kernel.org/stable/c/85c2857ef90041f567ce98722c1c342c4d31f4bc
- https://git.kernel.org/stable/c/55e06850c7894f00d41b767c5f5665459f83f58f
- https://git.kernel.org/stable/c/84c6aa0ae5c4dc121f9996bb8fed46c80909d80e
- https://git.kernel.org/stable/c/217efe32a45249eb07dcd7197e8403de98345e66
- https://git.kernel.org/stable/c/becf5c147198f4345243c5df0c4f035415491640
- https://git.kernel.org/stable/c/f990874b1c98fe8e57ee9385669f501822979258