ieee802154: ca8210: Fix a potential UAF in ca8210_probe (Linux Linux)

CVE-2023-52510
HIGH 7.8

At a glance

Source
NVD
EPSS
EPSS 0.24 % · percentile 16 ()
State
PUBLISHED
Published
Updated
Assigner
Linux
NVD status
Analyzed

Description

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().

Weaknesses (CWE)

References

Scores

VersionScoreVectorScored by
CVSS 3.1HIGH 7.8CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HNVD · nvd@nist.gov (Primary)

European references

CERT-FR advisories

Affected configurations (NVD CPE)

Affected products

ProductVersions
Linux · Linuxaffected ded845a781a578dfb0b5b2c138e5a067aa3b1242 < 28b68cba378e3e50a4082b65f262bc4f2c7c2add ; affected ded845a781a578dfb0b5b2c138e5a067aa3b1242 < cdb46be93c1f7bbf2c4649e9fc5fb147cfb5245d ; affected ded845a781a578dfb0b5b2c138e5a067aa3b1242 < 85c2857ef90041f567ce98722c1c342c4d31f4bc ; affected ded845a781a578dfb0b5b2c138e5a067aa3b1242 < 55e06850c7894f00d41b767c5f5665459f83f58f ; affected ded845a781a578dfb0b5b2c138e5a067aa3b1242 < 84c6aa0ae5c4dc121f9996bb8fed46c80909d80e ; affected ded845a781a578dfb0b5b2c138e5a067aa3b1242 < 217efe32a45249eb07dcd7197e8403de98345e66
Linux · Linuxaffected 4.12 ; unaffected 0 < 4.12 ; unaffected 4.14.328 ≤ 4.14.* ; unaffected 4.19.297 ≤ 4.19.* ; unaffected 5.4.259 ≤ 5.4.* ; unaffected 5.10.199 ≤ 5.10.*

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
CERT-FR (ANSSI)Licence Ouverte / Etalab 2.0
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD