CVE-2026-11809 in Zephyrinfo

Zusammenfassung

von VulDB • 10.08.2026

Der UpdateHub-OTA-Client in subsys/mgmt/updatehub/updatehub.c enthält einen Out-of-Bounds-/Uninitialized-Memory-Lesezugriff (Out-of-bounds/Uninitialized-memory read) in z_impl_updatehub_probe(). Die Probe-Antwort vom UpdateHub-Server wird in einen Heap-Puffer (metadata) kopiert, der korrekt NUL-abgeschlossen ist. Ein zweiter Puffer (metadata_copy) wird jedoch mit k_malloc zugewiesen (nicht auf Null gesetzt) und mit memcpy(metadata_copy, metadata, strlen(metadata)) gefüllt, wodurch das abschließende NUL-Byte ausgelassen wird. Alles nach dem kopierten Inhalt bleibt als nicht initialisierter Heap bestehen.

Wenn der erste json_obj_parse()-Aufruf über den Array-Deskriptor fehlschlägt, fällt der Code auf json_obj_parse(metadata_copy, strlen(metadata_copy), ...) zurück. Der Aufruf von strlen() scannt über die kopierten Bytes hinaus durch den nicht initialisierten Heap und liest, falls kein Null-Byte vor dem Ende der Zuweisung gefunden wird, außerhalb des Puffers; die daraus resultierende zu lange Länge wird dann als JSON analysiert. Die Probe-Payload wird vollständig vom (bösartigen, kompromittierten oder – ohne das optionale CONFIG_UPDATEHUB_DTLS – on-path) UpdateHub-Server gesteuert, der eine große Payload erstellen kann, um den ersten Parsing-Vorgang fehlschlagen zu lassen und diesen Pfad auszulösen.

Die Folge ist ein Lesezugriff auf nicht initialisierten Heap, im schlimmsten Fall ein Out-of-Bounds-Lesezugriff über die metadata_copy-Zuweisung hinaus, der einen Fault verursachen und den Update-Thread/das Gerät abstürzen lassen kann, was zu einem Netzwerk-getriggerten Denial of Service führt. Die außerhalb des Puffers gelesenen Daten werden nur intern zur Auswertung des Updates verbraucht und nicht an den Angreifer zurückgegeben; es gibt daher keine direkte Informationspreisgabe (Information Disclosure) und keinen Out-of-Bounds-Write-Zugriff.

Die Korrektur setzt metadata_copy vor dem Kopieren mit memset auf Null, was eine NUL-Terminierung garantiert und strlen() innerhalb der Zuweisung begrenzt.

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

Zuständig

Zephyr

Reservieren

09.06.2026

Veröffentlichung

11.08.2026

Moderieren

akzeptiert

Eintrag

VDB-387910

CPE

bereit

EPSS

0.00000

KEV

nein

Aktivitäten

low

Quellen

Want to stay up to date on a daily basis?

Enable the mail alert feature now!