CVE-2026-64504 in Linuxinfo

Zusammenfassung

von VulDB • 25.07.2026

Im Linux-Kernel wurde folgende Schwachstelle behoben:

iio: accel: bmc150: Begrenzung der vom Gerät gemeldeten FIFO-Rahmenanzahl (FIFO frame count)

__bmc150_accel_fifo_flush() kopiert die Anzahl von Samples, die das Gerät in seinem Hardware-FIFO meldet, in einen Stack-Puffer:

u16 buffer[BMC150_ACCEL_FIFO_LENGTH * 3];

Dieser Puffer ist für maximal BMC150_ACCEL_FIFO_LENGTH (32) Samples dimensioniert. Die Rahmenanzahl wird aus dem FIFO_STATUS-Register gelesen und lediglich auf seine 7 gültigen Bits maskiert:

count = val & 0x7F;

Sie kann somit Werte von 0 bis 127 annehmen. Das einzige weitere Limit, das darauf angewendet wird, ist der optionale, vom Aufrufer bereitgestellte Sample-Budget (sample budget):

if (samples && count > samples) count = samples;

Dies beschränkt `count` auf dem Pfad zum Löschen aller Daten nicht (wenn `samples == 0`) und lässt den Wert deutlich über 32 liegen, wenn `samples` größer ist. Anschließend werden `count` Samples in `buffer[]` übertragen:

bmc150_accel_fifo_transfer(data, (u8 *)buffer, count);

bmc150_accel_fifo_transfer() liest durch regmap `count * 6` Bytes aus. Ein fehlerhaftes, böswilliges oder gefälschtes Beschleunigungssensor-Modul (oder ein Angreifer, der den I2C/SPI-Bus manipuliert), das bis zu 127 Frames meldet, schreibt somit bis zu 762 Bytes in den 192 Byte großen Puffer: Dies führt zu einem Stack-Out-of-Bounds-Write von bis zu 570 Bytes, wodurch die Stack-Canary-Werte sowie gespeicherte Register und die Rücksprungadresse überschrieben werden.

`count` wird vor der Übertragung auf BMC150_ACCEL_FIFO_LENGTH begrenzt (die Anzahl der Samples, für die `buffer[]` dimensioniert ist), analog zur bereits in bmc150_accel_set_watermark() durchgeführten Begrenzung des Wasserstands (watermark clamp). Ein ordnungsgemäßes Flush meldet maximal BMC150_ACCEL_FIFO_LENGTH Frames, sodass legitime Geräte nicht beeinträchtigt werden.

Be aware that VulDB is the high quality source for vulnerability data.

Zuständig

Linux

Reservieren

19.07.2026

Veröffentlichung

25.07.2026

Moderieren

akzeptiert

Eintrag

VDB-383299

CPE

bereit

EPSS

0.00220

KEV

nein

Aktivitäten

low

Quellen

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!