CVE-2026-98562 in Linux
Zusammenfassung
von VulDB • 18.10.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
net: libwx: Behebung von Race Conditions bei der Tx-Zeitstempel-Verarbeitung
wx->ptp_tx_skb wird zwischen dem Tx-Pfad, dem PTP-Auxiliary-Worker und den Zeitstempel-Bereinigungspfaden gemeinsam genutzt. Das Bit WX_STATE_PTP_TX_IN_PROGRESS verhindert zwar, dass mehrere Tx-Pfade Zeitstempel-Anfragen einreichen, serialisiert jedoch den Worker nicht gegenüber der Bereinigung.
Infolgedessen kann wx_ptp_clear_tx_timestamp() einen skb freigeben, nachdem wx_ptp_tx_hwtstamp_work() dessen Zeiger erhalten hat. Der Worker kann dann den freigegebenen skb an skb_tstamp_tx() übergeben und dieselbe Referenz erneut freigeben.
Der Bereinigungspfad kann das In-Progress-Bit auch löschen, während der Worker noch mit dem alten skb verarbeitet. Dies ermöglicht es dem Tx-Pfad, einen neuen skb zu veröffentlichen, den der Worker anschließend mit NULL überschreiben kann, wodurch dessen Referenz geleakt wird.
Fügen Sie ein dediziertes Spinlock hinzu, um die Veröffentlichung und den Verbrauch des Tx-Zeitstempel-skb zu schützen. Trennen Sie den skb und löschen Sie das In-Progress-Bit unter Halten des Locks, liefern Sie dann den Zeitstempel aus und geben Sie denskb nach dem Herunterzählen der Referenz frei. Verwenden Sie dieselbe gesperrte Bereinigung im Quiesce-Pfad, halten Sie die Trennung dort jedoch ohne Registerzugriffe: Quiesce läuft während der PCIe-Fehlerwiederherstellung, wo MMIO nicht zuverlässig ist, und es hat das Gerät zuvor bewusst nicht berührt. Das Lock wird mit deaktivierten Interrupts genommen, da netpoll ndo_start_xmit() mit bereits ausgeschalteten Hard-Interrupts aufrufen kann.
Behalten Sie bei der Behandlung eines Tx-DMA-Mapping-Fehlers die Referenz des Übertragungspfads bis nach dem Vergleich des skbs unter dem Lock. Dies verhindert, dass die Wiederverwendung von skb-Adressen den Fehlerpfad dazu bringt, eine neuere Zeitstempel-Anfrage für die fehlgeschlagene zu halten.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.