In the Linux kernel, the following vulnerability has been resolved:
clk: hisilicon: hi3559a: Fix an erroneous devm_kfree()
'p_clk' is an array allocated just before the for loop for all clk that need to be registered. It is incremented at each loop iteration.
If a clkregister() call fails, 'pclk' may point to something different from what should be freed.
The best we can do, is to avoid this wrong release of memory.
{ "vanir_signatures": [ { "deprecated": false, "signature_type": "Line", "target": { "file": "drivers/clk/hisilicon/clk-hi3559a.c" }, "id": "CVE-2024-27039-2163d8bd", "digest": { "line_hashes": [ "332597821718226409568113605406793327133", "309567667706401340542286321912797230708", "126336363394604228041756257578920084517", "37338504203693493419817076075673344201" ], "threshold": 0.9 }, "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3f8445f1c746fda180a7f75372ed06b24e9cefe2" }, { "deprecated": false, "signature_type": "Function", "target": { "file": "drivers/clk/hisilicon/clk-hi3559a.c", "function": "hisi_clk_register_pll" }, "id": "CVE-2024-27039-3f634d45", "digest": { "length": 1490.0, "function_hash": "56508886141491420439528677230781191481" }, "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@2cc572e0085ebd4b662b74a0f43222bc00df9a00" }, { "deprecated": false, "signature_type": "Function", "target": { "file": "drivers/clk/hisilicon/clk-hi3559a.c", "function": "hisi_clk_register_pll" }, "id": "CVE-2024-27039-54240b82", "digest": { "length": 1490.0, "function_hash": "56508886141491420439528677230781191481" }, "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3f8445f1c746fda180a7f75372ed06b24e9cefe2" }, { "deprecated": false, "signature_type": "Function", "target": { "file": "drivers/clk/hisilicon/clk-hi3559a.c", "function": "hisi_clk_register_pll" }, "id": "CVE-2024-27039-59524ed1", "digest": { "length": 1490.0, "function_hash": "56508886141491420439528677230781191481" }, "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@64c6a38136b74a2f18c42199830975edd9fbc379" }, { "deprecated": false, "signature_type": "Line", "target": { "file": "drivers/clk/hisilicon/clk-hi3559a.c" }, "id": "CVE-2024-27039-834cf28e", "digest": { "line_hashes": [ "332597821718226409568113605406793327133", "309567667706401340542286321912797230708", "126336363394604228041756257578920084517", "37338504203693493419817076075673344201" ], "threshold": 0.9 }, "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@2cc572e0085ebd4b662b74a0f43222bc00df9a00" }, { "deprecated": false, "signature_type": "Line", "target": { "file": "drivers/clk/hisilicon/clk-hi3559a.c" }, "id": "CVE-2024-27039-b315cd29", "digest": { "line_hashes": [ "332597821718226409568113605406793327133", "309567667706401340542286321912797230708", "126336363394604228041756257578920084517", "37338504203693493419817076075673344201" ], "threshold": 0.9 }, "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@95d1f1228c1bb54803ae57525b76db60e99b37e4" }, { "deprecated": false, "signature_type": "Line", "target": { "file": "drivers/clk/hisilicon/clk-hi3559a.c" }, "id": "CVE-2024-27039-bf9cd53b", "digest": { "line_hashes": [ "332597821718226409568113605406793327133", "309567667706401340542286321912797230708", "126336363394604228041756257578920084517", "37338504203693493419817076075673344201" ], "threshold": 0.9 }, "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e0b0d1c46a2ce1e46b79d004a7270fdef872e097" }, { "deprecated": false, "signature_type": "Function", "target": { "file": "drivers/clk/hisilicon/clk-hi3559a.c", "function": "hisi_clk_register_pll" }, "id": "CVE-2024-27039-d2d068e5", "digest": { "length": 1490.0, "function_hash": "56508886141491420439528677230781191481" }, "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e0b0d1c46a2ce1e46b79d004a7270fdef872e097" }, { "deprecated": false, "signature_type": "Line", "target": { "file": "drivers/clk/hisilicon/clk-hi3559a.c" }, "id": "CVE-2024-27039-d4d8cc13", "digest": { "line_hashes": [ "332597821718226409568113605406793327133", "309567667706401340542286321912797230708", "126336363394604228041756257578920084517", "37338504203693493419817076075673344201" ], "threshold": 0.9 }, "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@64c6a38136b74a2f18c42199830975edd9fbc379" }, { "deprecated": false, "signature_type": "Function", "target": { "file": "drivers/clk/hisilicon/clk-hi3559a.c", "function": "hisi_clk_register_pll" }, "id": "CVE-2024-27039-dec9012b", "digest": { "length": 1490.0, "function_hash": "56508886141491420439528677230781191481" }, "signature_version": "v1", "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@95d1f1228c1bb54803ae57525b76db60e99b37e4" } ] }