CVE-2024-26646
Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
26/03/2024
Last modified:
17/03/2025
Description
In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
thermal: intel: hfi: Add syscore callbacks for system-wide PM<br />
<br />
The kernel allocates a memory buffer and provides its location to the<br />
hardware, which uses it to update the HFI table. This allocation occurs<br />
during boot and remains constant throughout runtime.<br />
<br />
When resuming from hibernation, the restore kernel allocates a second<br />
memory buffer and reprograms the HFI hardware with the new location as<br />
part of a normal boot. The location of the second memory buffer may<br />
differ from the one allocated by the image kernel.<br />
<br />
When the restore kernel transfers control to the image kernel, its HFI<br />
buffer becomes invalid, potentially leading to memory corruption if the<br />
hardware writes to it (the hardware continues to use the buffer from the<br />
restore kernel).<br />
<br />
It is also possible that the hardware "forgets" the address of the memory<br />
buffer when resuming from "deep" suspend. Memory corruption may also occur<br />
in such a scenario.<br />
<br />
To prevent the described memory corruption, disable HFI when preparing to<br />
suspend or hibernate. Enable it when resuming.<br />
<br />
Add syscore callbacks to handle the package of the boot CPU (packages of<br />
non-boot CPUs are handled via CPU offline). Syscore ops always run on the<br />
boot CPU. Additionally, HFI only needs to be disabled during "deep" suspend<br />
and hibernation. Syscore ops only run in these cases.<br />
<br />
[ rjw: Comment adjustment, subject and changelog edits ]
Impact
Base Score 3.x
5.50
Severity 3.x
MEDIUM
Vulnerable products and versions
| CPE | From | Up to |
|---|---|---|
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.1.76 (excluding) | |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.2 (including) | 6.6.15 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.7 (including) | 6.7.3 (excluding) |
To consult the complete list of CPE names with products and versions, see this page
References to Advisories, Solutions, and Tools
- https://git.kernel.org/stable/c/019ccc66d56a696a4dfee3bfa2f04d0a7c3d89ee
- https://git.kernel.org/stable/c/28f010dc50df0f7987c04112114fcfa7e0803566
- https://git.kernel.org/stable/c/97566d09fd02d2ab329774bb89a2cdf2267e86d9
- https://git.kernel.org/stable/c/c9d6d63b6c03afaa6f185df249af693a7939577c
- https://git.kernel.org/stable/c/019ccc66d56a696a4dfee3bfa2f04d0a7c3d89ee
- https://git.kernel.org/stable/c/28f010dc50df0f7987c04112114fcfa7e0803566
- https://git.kernel.org/stable/c/97566d09fd02d2ab329774bb89a2cdf2267e86d9
- https://git.kernel.org/stable/c/c9d6d63b6c03afaa6f185df249af693a7939577c



