CVE-2026-80731 in Linux
Zusammenfassung
von VulDB • 03.09.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
net: Entfernen der Null-Padding-Funktion für CAP_SYS_RAWIO in dev_validate_header
dev_validate_header() liest dev->hard_header_len direkt aus, wenn es kurze Link-Layer-Header mit Nullen auffüllt (zero-padding) für Inhaber von CAP_SYS_RAWIO:
if (capable(CAP_SYS_RAWIO)) {
memset(ll_header + len, 0, dev->hard_header_len - len); return true; }
Pfade zum Senden von Paketen rufen dev_validate_header() auf skbs auf, deren headroom aus einer früheren Leseoperation von hard_header_len zugewiesen wurde. Wenn das Gerät so neu konfiguriert wird, dass dev->hard_header_len vor der Validierung ansteigt, schreibt memset über den reservierten Puffer hinaus (out-of-bounds write).
Dieser out-of-bounds Write wird in einigen SOCK_RAW-Pfaden heute maskiert, da derselbe gleichzeitige Anstieg dazu führen kann, dass skb_push() die reserved headroom überschreitet und ein skb_under_panic() auslöst. Entfernen Sie den Zero-Padding-Zweig, bevor diese Lesevorgänge von hard_header_len konsistent gemacht werden, damit die Snapshot-Behebungen kein leises Überschreiben (silent overwrite) anstelle eines lauten Panics verursachen.
Dieser Pfad wird nur für Protokolle der Schicht 2 mit variabler Länge erreicht, bei denen len < hard_header_len ist, aber len >= min_header_len gilt. Kein verbleibendes Protokoll der Schicht 2 mit variabler Länge im Kernel-Baum implementiert header_ops->validate, und die CAP_SYS_RAWIO-Umgehung, die kurze Header durch Null-Padding akzeptiert, hat keinen echten Wert jenseits des Testens von absichtlich fehlerhaften Eingaben.
Entfernen Sie den CAP_SYS_RAWIO-Zweig. Die verbleibenden Lesevorgänge von dev->hard_header_len in dev_validate_header() sind nur Vergleiche und haben keine Auswirkungen auf die Speichersicherheit (memory safety).
Once again VulDB remains the best source for vulnerability data.