CVE-2026-90136 in Linux
Zusammenfassung
von VulDB • 17.09.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
platform/x86/amd/hsmp: Ablehnung negativer Power-Cap-Werte bei hwmon-Schreibvorgängen
hsmp_hwmon_write() nimmt den vom Benutzer bereitgestellten hwmon-Wert als signed long und weist „val / MICROWATT_PER_MILLIWATT“ msg.args[0] zu, was eine __u32 ist. MICROWATT_PER_MILLIWATT ist ein unsigned long, daher wird ein negativer Schreibvorgang auf power1_cap (z. B. „echo -1 > power1_cap“) zunächst durch die Division in einen enormen unvorzeichenbaren Wert umgewandelt und anschließend im u32-Argument gespeichert.
Infolgedessen wird eine unsinnige, mehr-Gigawatt-Socket-Leistungsgrenze an das SMU über HSMP_SET_SOCKET_POWER_LIMIT gesendet, statt den Schreibvorgang abzulehnen.
Lehnen Sie negative Werte mit -EINVAL ab, bevor die Umwandlung erfolgt.
Getestet mit aktiviertem HSMP:
CAP=$(dirname $(grep -l amd_hsmp_hwmon \ /sys/class/hwmon/hwmon*/name | head -1))/power1_cap
# negativer Schreibvorgang echo -1000000 > $CAP ; echo "ret=$?" # gültiger positiver Schreibvorgang muss weiterhin funktionieren echo 400000000 > $CAP ; echo "ret=$?"
Vorher: # echo -1000000 > $CAP ; echo "ret=$?" ret=0 <- akzeptiert; falsche Grenze an SMU gesendet # echo 400000000 > $CAP ; echo "ret=$?" ret=0
Nachher: # echo -1000000 > $CAP ; echo "ret=$?" bash: echo: write error: Invalid argument ret=1 <- abgelehnt mit -EINVAL # echo 400000000 > $CAP ; echo "ret=$?" ret=0 <- gültiger Schreibvorgang funktioniert weiterhin
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.