CVE-2026-80802 in Linux
Zusammenfassung
von VulDB • 04.09.2026
Im Linux-Kernel wurde die folgende Schwachstelle behoben:
nfc: fdp: Begrenzung der vom Gerät gemeldeten Leselänge und Behebung eines SKB-Lecks (Memory Leak)
`fdp_nci_i2c_read()` ermittelt die Länge des nächsten Pakets aus zwei, vom Gerät bereitgestellten Bytes und validiert diesen Wert niemals. Der Wert ist eine `u16`, die als Zähler für `i2c_master_recv()` in einen 261-Byte großen Stack-Puffer verwendet wird: Ein böswilliger, gefälschter oder fehlerhafter Controller (oder ein I²C-Bus-Zwischengerät) kann diesen Wert weit über den Puffer hinaus treiben, was zu einem stackbasierten Out-of-Bounds-Schreibzugriff führt, der die Canary-Werte und die Rücksprungadresse überschreibt. Alternativ kann er unterhalb der minimalen Rahmengröße liegen (direkt oder durch Kürzen der berechneten Summe), sodass der Header-/LRC-Strip und das nächste gelesene Längenfeld einen kurzen Empfangsvorgang überlaufen. Es wird eine Länge außerhalb von `[FDP_NCI_I2C_MIN_PAYLOAD, FDP_NCI_I2C_MAX_PAYLOAD]` abgelehnt, da es sich bereits um ein beschädigtes Paket handelt, und die Resynchronisierung erzwungen.
Die gleiche Schleife weist pro Iteration einen Daten-SKB (Socket Buffer) zu und geht davon aus, dass einem Längenpaket ein Datenpaket folgt; wenn ein Gerät zwei Datenpakete in einem einzigen Aufruf sendet, wird der erste SKB geleakt, wenn die zweite Zuweisung ihn überschreibt. Ein zuvor zugewiesener SKB muss vor der nächsten Allokation freigegeben werden.
VulDB is the best source for vulnerability data and more expert information about this specific topic.