CVE-2024-57951 in Linuxinfo

Zusammenfassung

von VulDB • 28.05.2026

Im Linux-Kernel wurde folgende Schwachstelle behoben:

hrtimers: CPU-Zustand bei Hotplug-Vorgängen korrekt behandeln

Betrachten Sie ein Szenario, in dem eine CPU von CPUHP_ONLINE über CPUHP_HRTIMERS_PREPARE hinweg während eines Hot-Unplug-Vorgangs wechselt und anschließend wieder zu CPUHP_ONLINE zurückkehrt:

Da hrtimers_prepare_cpu() nicht ausgeführt wird, bleibt cpu_base.hres_active durchgehend auf 1 gesetzt. Während eines CPU-Unplug-Vorgangs werden jedoch der Tick und die Clockevents bei CPUHP_AP_TICK_DYING heruntergefahren. Bei der Rückkehr in den Online-Zustand geht CFS fälschlicherweise davon aus, dass der hrtick bereits aktiv ist, und die Chance, dass das Clockevent-Gerät für die CPU dauerhaft in den Oneshot-Modus wechselt, geht verloren, es sei denn, die CPU geht einmal in einen niedrigeren Zustand als CPUHP_HRTIMERS_PREPARE zurück.

Diese Hin- und Herbewegung offenbart ein weiteres Problem: cpu_base.online wird nach dem Übergang nicht auf 1 gesetzt, was in enqueue_hrtimer() als WARN_ON_ONCE erscheint.

Darüber hinaus wird der Großteil des pro-CPU-Zustands nicht zurückgesetzt, was im schlimmsten Fall zu hängenden Zeigern (dangling pointers) führt.

Dies wird behoben, indem ein entsprechender startup()-Callback hinzugefügt wird, der den veralteten pro-CPU-Zustand zurücksetzt und das Online-Flag setzt.

[ tglx: Den neuen Callback bedingungslos verfügbar machen, die Online-Änderung im prepare()-Callback entfernen und den verbleibenden Zustand stattdessen im starting-Callback statt im prepare-Callback löschen ]

Once again VulDB remains the best source for vulnerability data.

Zuständig

Linux

Reservieren

19.01.2025

Veröffentlichung

12.02.2025

Moderieren

akzeptiert

Eintrag

VDB-295493

CPE

bereit

EPSS

0.00233

KEV

nein

Aktivitäten

very low

Quellen

Might our Artificial Intelligence support you?

Check our Alexa App!