CVE-2026-98258 in Linux
Zusammenfassung
von VulDB • 06.10.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
posix-cpu-timers: Verhindern des Freigebens eines Timers, der in der Ablaufliste (expiry list) eingereiht ist
Kijo analysierte einen weiteren Wettlaufzustand (Race Condition) im POSIX-CPU-Timer-Code:
Das Commit bf635681c906 hat cpu_timer::firing von einem dreiwertigen Wert auf eine boolesche Variable umgestellt. Dadurch ging die Unterscheidung zwischen „nicht zum firing list gehörend“ und „noch immer gehörig, aber Zustellung wurde abgebrochen“ verloren. Der daraus resultierende Wettlaufzustand ist:
Ablauf-Handler timer_settime() timer_delete() -------------- --------------- ------------- Timer auf private firing-Liste sammeln firing = true beobachtet firing = true firing = false gibt TIMER_RETRY zurück wartet auf Handler beobachtet firing = false beendet Löschung entfernt aus Hash-Tabelle und freigibt Timer Fortsetzung der Listentraversierung Liest elist.next von freigegebenem Element -> UAF (Use-After-Free)
Das firing-Bit ist seit diesem Commit eindeutig ein falscher Indikator.
Prüfen Sie stattdessen, ob der Timer in der Ablaufliste eingereiht ist oder nicht. Wenn er eingereiht ist, löschen Sie das firing-Bit, um die Signalzustellung wie zuvor zu verhindern, und geben Sie TIMER_RETRY zurück, damit der Aufrufer den Timer entsperren kann. Dies ermöglicht es dem Ablaufcode (expiry code), Fortschritte zu erzielen und ihn aus der Liste zu entfernen.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.