CVE-2026-12520 in Zephyrinfo

Zusammenfassung

von VulDB • 18.08.2026

Der Treiber für das Sierra Wireless HL7800-Zellmodem (drivers/modem/vendor_standalone/hl7800.c, in v4.4.0 und früher unter drivers/modem/hl7800.c zu finden) parst AT-Antworten mit etwa zwanzig Handlern, die net_buf_linearize(value, sizeof(value), *buf, 0, len) in einen 128-Byte großen Stack-Puffer aufrufen und anschließend value[out_len] = 0 schreiben. Da net_buf_linearize() (lib/net_buf/buf.c) eine Anzahl zurückgeben kann, die gleich seinem Ziel-Längenargument ist, führt ein Feld, das den Puffer genau füllt dazu, dass das abschließende NUL-Byte einen Byte jenseits des Endes landet; dies stellt einen Einzelbyte-Out-of-Bounds-Schreibzugriff in benachbarten Stack-Speicher dar.

Der +KCELLMEAS-Zellmessungs-Handler on_cmd_atcmdinfo_rssi() ist noch schlimmer: Er übergibt die Drahtlänge len als Zielgröße (net_buf_linearize(value, len, *buf, 0, len)), sodass eine Antwortzeile von mehr als 128 Bytes den value-Stack-Puffer mit angreifergesteuerbarem Inhalt überläuft. Die Zeilenlänge stammt aus net_buf_findcrlf(), das Bytes über die gesamte Kette der net_buf-Fragmente ansammelt und nicht auf 128 begrenzt ist, sodass eine zu lange Zeile den Fehler erreicht.

Die Daten stammen vom Zellmodem über UART, angetrieben durch das Netzwerk: Operator-Scan-Ergebnisse, +CGCONTRDP IP/DNS-Informationen, Socket-Hinweise und +KCELLMEAS-Nachbarzellenberichte. Ein Angreifer, der in der Lage ist, die Ausgabe des Modems zu formen – eine böswillige Basisstation, ein kompromittiertes Modem-Basband oder ein entfernter Peer, der überlange Antwort-Frames einspeist – kann eine Zeile jenseits von 128 Bytes treiben. Die Handler werden im RX-Thread des Treibers im Kernel-Kontext ausgeführt, sodass die Beschädigung kernelseitig erfolgt.

Der +KCELLMEAS-Pfad ist ein vollständiger Stack-Buffer-Overflow, dessen schlimmster Fall eine Code-Ausführung im Kernel-Kontext ist und dessen Mindestfall ein zuverlässiger Absturz ist; die übrigen Stellen sind Einzelbyte-NUL-Out-of-Bounds-Schreibzugriffe. Die Ausnutzung erfordert, dass das Modem eine zu lange AT-Antwortzeile ausgibt, was bei einem benachbarten (Zellfunk-Funk-) Vektor zu einer hohen Angriffskomplexität führt. Der Fix übergibt sizeof(dst) - 1 (und korrekte explizite Grenzen für die IMSI- und +KCELLMEAS-Stellen), sodass der Terminator immer innerhalb der Grenzen bleibt.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

Zuständig

Zephyr

Reservieren

17.06.2026

Veröffentlichung

18.08.2026

Moderieren

akzeptiert

Eintrag

VDB-391952

CPE

bereit

EPSS

0.00000

KEV

nein

Aktivitäten

low

Quellen

Interested in the pricing of exploits?

See the underground prices here!