What’s Vulnerable › Vulnerabilities
CVE-2022-49612: power: supply: core: Fix boundary conditions in interpolation
- Severity: high (CVSS 7.8 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.3% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2025-02-26 · updated 2026-06-17
- Weakness: CWE-787
Description
In the Linux kernel, the following vulnerability has been resolved: power: supply: core: Fix boundary conditions in interpolation The functions power_supply_temp2resist_simple and power_supply_ocv2cap_simple handle boundary conditions incorrectly. The change was introduced in a4585ba2050f460f749bbaf2b67bd56c41e30283 ("power: supply: core: Use library interpolation"). There are two issues: First, the lines "high = i - 1" and "high = i" in ocv2cap have the wrong order compared to temp2resist. As a consequence, ocv2cap sets high=-1 if ocv>table[0].ocv, which causes an out-of-bounds read. Second, the logic of temp2resist is also not correct. Consider the case table[] = {{20, 100}, {10, 80}, {0, 60}}. For temp=5, we expect a resistance of 70% by interpolation. However, temp2resist sets high=low=2 and returns 60.
Affected products
- Linux kernel: from 5.17 before 5.18.13; 5.19-rc1, 5.19-rc2, 5.19-rc3, 5.19-rc4, 5.19-rc5, 5.19-rc6 — fixed in 5.18.13
How to fix
Upgrade to a fixed version: Linux kernel 5.18.13. Check the vendor advisory for mitigations.
References
- https://git.kernel.org/stable/c/093d27bb6f2d1963f927ef59c9a2d37059175426
- https://git.kernel.org/stable/c/a762cee5d933fe4e2e1b773d60fc74fb8248d8c4
Get alerted when CVE-2022-49612 or the next vulnerability affects your stack