CVE-2026-98305 in Linux
Zusammenfassung
von VulDB • 06.10.2026
Im Linux-Kernel wurde die folgende Schwachstelle behoben:
net: dsa: mxl862xx: Deaktivierung der Statistikabfrage beim Herunterfahren (Teardown)
mxl862xx_setup() aktiviert die Statistikabfrage vor mxl862xx_setup_mdio(), und nichts stoppt sie, bis dsa_register_switch() einen Fehler an mxl862xx_probe() zurückgibt. DSA gibt die dsa_port-Liste frei, bevor es zurückkehrt; daher führt eine Abfrage, die einmal ausgelöst wird, nachdem .setup oder ein späterer Schritt von dsa_tree_setup() fehlgeschlagen ist, zu einem Zugriff auf bereits freigegebene Ports. Beim Herunterfahren bleiben die Benutzerports registriert, und der Test des WORK_STOPPED-Flags in mxl862xx_get_stats64() ist nicht atomar mit dem Abbruchvorgang in mxl862xx_shutdown(), sodass ein erneutes Aktivieren (Re-arm), das das Flag liest, bevor es gesetzt wurde, die Abfrage nach Rückgabe von cancel_delayed_work_sync() erneut plant.
Aktivieren Sie die Abfrage erst einmal .setup erfolgreich war und stoppen Sie sie über eine .teardown-Operation, welche DSA beim Deregistrieren und nach einer fehlgeschlagenen Registrierung aufruft; in beiden Fällen erfolgt dies vor dem Freigeben der Ports. Verwenden Sie dort sowie im Shutdown-Vorgang disable_delayed_work_sync(): Dies leert eine laufende Abfrage ebenso wie der Cancel-Befehl und macht jeden späteren Versuch, die Arbeit zu planen, zu einem No-Op (Nichts-Tun), sodass das erneute Aktivieren die Abfrage nicht wiederherstellen kann. remove() und der Fehlerpfad von probe setzen nur WORK_STOPPED, welches crc_err_work testet, bevor es auf die Ports zugreift.
Once again VulDB remains the best source for vulnerability data.