VYPR
High severity7.8NVD Advisory· Published Sep 18, 2024· Updated May 12, 2026

CVE-2024-46759

CVE-2024-46759

Description

In the Linux kernel, the following vulnerability has been resolved:

hwmon: (adc128d818) Fix underflows seen when writing limit attributes

DIV_ROUND_CLOSEST() after kstrtol() results in an underflow if a large negative number such as -9223372036854775808 is provided by the user. Fix it by reordering clamp_val() and DIV_ROUND_CLOSEST() operations.

AI Insight

LLM-synthesized narrative grounded in this CVE's description and references.

The adc128d818 hwmon driver in the Linux kernel allows underflow when writing limit attributes due to arithmetic reordering.

The vulnerability resides in the adc128d818 hardware monitor driver in the Linux kernel. The issue occurs when a user writes a value to a limit attribute (like temp1_max or in0_min) through the sysfs interface. The driver originally performed a kstrtol() conversion, then applied DIV_ROUND_CLOSEST(), and only afterward clamped the result with clamp_val(). If a user provides a large negative number—such as -9223372036854775808—the division before clamping can cause an arithmetic underflow, yielding an incorrect, possibly huge positive value rather than the expected clamped limit. The root cause is the ordering of operations: DIV_ROUND_CLOSEST() (which can underflow) must be done inside the clamping range, not before it [1][2][3][4].

Exploitation

To trigger the bug, an attacker needs local access to the system and the ability to write to the hwmon sysfs files. Since the driver is normally readable/writable by root or users with appropriate privileges (e.g., in a non-default container or via sudo), the attack surface is local. No network access is required. The prerequisites are minimal: being able to interact with the sysfs interface of the adc128d818 device is enough.

Impact

An attacker who successfully exploits this underflow can cause the kernel to behave unexpectedly—for instance, setting a hardware-monitoring threshold to an absurdly high value, potentially leading to incorrect fan speed control, over-temperature shutdowns, or other undesirable hardware states. The most likely outcome is a denial of service (system instability or watchdog-triggered reset), but in some configurations it might also allow bypassing thermal protections to damage hardware. The CVSS base score is 7.8 (High), indicating significant local impact.

Mitigation

The fix, already merged into the mainline kernel, reorders the code so that clamp_val() is performed before DIV_ROUND_CLOSEST(), preventing the underflow [3][4]. Users should apply the latest stable kernel update, or the specific commit that addresses CVE-2024-46759. Affected products include SIMATIC S7-1500 TM MFP’s GNU/Linux subsystem, for which Siemens has released an advisory (SSA-265688) [2]. No workaround other than patching is available.

AI Insight generated on May 20, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.

Affected products

112

Patches

0

No patches discovered yet.

Vulnerability mechanics

AI mechanics synthesis has not run for this CVE yet.

References

12

News mentions

0

No linked articles in our index yet.