Zephyr Project bis 4.4.x NVS Backend settings_nvs.c Pufferüberlauf

CVSS Meta Temp ScoreAktueller Exploitpreis (≈)CTI Interest Score
4.3$0-$5k0.47

Zusammenfassunginfo

Es wurde eine Schwachstelle in Zephyr Project Zephyr bis 4.4.x entdeckt. Sie wurde als problematisch eingestuft. Betroffen hiervon ist die Funktion settings_nvs_cache_match/settings_nvs_load/settings_nvs_save der Datei subsys/settings/src/settings_nvs.c der Komponente NVS Backend. Durch das Manipulieren mit unbekannten Daten kann eine Pufferüberlauf-Schwachstelle ausgenutzt werden. Die Verwundbarkeit wird mit der eindeutigen Identifikation CVE-2026-12634 gehandelt. Der Angriff muss lokal durchgeführt werden. Es ist soweit kein Exploit verfügbar.

Detailsinfo

Eine problematische Schwachstelle wurde in Zephyr Project Zephyr bis 4.4.x ausgemacht. Hierbei geht es um die Funktion settings_nvs_cache_match/settings_nvs_load/settings_nvs_save der Datei subsys/settings/src/settings_nvs.c der Komponente NVS Backend. Durch Manipulieren mit einer unbekannten Eingabe kann eine Pufferüberlauf-Schwachstelle ausgenutzt werden. Klassifiziert wurde die Schwachstelle durch CWE als CWE-787. Dies wirkt sich aus auf Integrität und Verfügbarkeit. CVE fasst zusammen:

The NVS backend of the Zephyr settings subsystem (subsys/settings/src/settings_nvs.c) reads stored setting-name entries into fixed 74-byte stack buffers and NUL-terminates them with buf[rc] = '\0', where rc is the return value of nvs_read(). Per its contract, nvs_read() returns the full stored entry length (wlk_ate.len), which can exceed the supplied buffer length — only MIN(len, stored_len) bytes are actually copied, but the return value may be much larger, bounded only by the NVS sector size. Three sites (settings_nvs_cache_match(), settings_nvs_load(), and settings_nvs_save()) used this value directly as the NUL index without clamping, so an oversized stored name entry causes a single \0 byte to be written past the end of the stack buffer at an attacker-influenced offset (CWE-787). The oversized entry cannot arise through the normal settings API, where names are bounded by SETTINGS_MAX_NAME_LEN. It requires an actor able to write the flash that backs the settings partition — a co-resident or untrusted component sharing the flash device, a malicious settings image/restore, or offline/physical flash access (a shared-flash threat model). The malformed entry is parsed when settings_load() runs at boot or subsystem init, or during settings_save(). The out-of-bounds write is a single NUL byte at an offset equal to the crafted entry length (up to the NVS sector size), so the practical impact is a crash or denial of service and limited stack corruption rather than reliable code execution. There is no confidentiality impact, and the path is not reachable from the network through the ordinary settings interface. The fix skips any entry whose nvs_read() length is greater than or equal to the buffer size before performing the NUL store.

Auf github.com kann das Advisory eingesehen werden. Die Identifikation der Schwachstelle findet seit dem 18.06.2026 als CVE-2026-12634 statt. Die Ausnutzbarkeit ist als leicht bekannt. Der Angriff muss lokal passieren. Das Angehen einer erweiterte Authentisierung ist erforderlich, um eine Ausnutzung anzugehen. Zur Schwachstelle sind technische Details bekannt, ein verfügbarer Exploit jedoch nicht.

Ein Upgrade auf die Version 4.5.0 vermag dieses Problem zu beheben.

If you want to get best quality of vulnerability data, you may have to visit VulDB.

Produktinfo

Typ

Hersteller

Name

Version

CPE 2.3info

CPE 2.2info

CVSSv4info

VulDB Vector: 🔒
VulDB Zuverlässigkeit: 🔍

CVSSv3info

VulDB Meta Base Score: 4.3
VulDB Meta Temp Score: 4.3

VulDB Base Score: 3.4
VulDB Temp Score: 3.3
VulDB Vector: 🔒
VulDB Zuverlässigkeit: 🔍

CNA Base Score: 5.3
CNA Vector (zephyr): 🔒

CVSSv2info

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
VektorKomplexitätAuthentisierungVertraulichkeitIntegritätVerfügbarkeit
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten

VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Zuverlässigkeit: 🔍

Exploitinginfo

Klasse: Pufferüberlauf
CWE: CWE-787 / CWE-119
CAPEC: 🔒
ATT&CK: 🔒

Physisch: Teilweise
Lokal: Ja
Remote: Nein

Verfügbarkeit: 🔒
Status: Nicht definiert

EPSS Score: 🔒
EPSS Percentile: 🔒

Preisentwicklung: 🔍
Aktuelle Preisschätzung: 🔒

0-Dayfreischaltenfreischaltenfreischaltenfreischalten
Heutefreischaltenfreischaltenfreischaltenfreischalten

Threat Intelligenceinfo

Interesse: 🔍
Aktive Akteure: 🔍
Aktive APT Gruppen: 🔍

Gegenmassnahmeninfo

Empfehlung: Upgrade
Status: 🔍

0-Day Time: 🔒

Upgrade: Zephyr 4.5.0

Timelineinfo

18.06.2026 CVE zugewiesen
19.08.2026 +62 Tage Advisory veröffentlicht
19.08.2026 +0 Tage VulDB Eintrag erstellt
19.08.2026 +0 Tage VulDB Eintrag letzte Aktualisierung

Quelleninfo

Advisory: github.com
Status: Bestätigt

CVE: CVE-2026-12634 (🔒)
GCVE (CVE): GCVE-0-2026-12634
GCVE (VulDB): GCVE-100-393434

Eintraginfo

Erstellt: 19.08.2026 23:08
Anpassungen: 19.08.2026 23:08 (67)
Komplett: 🔍
Cache ID: 216::103

If you want to get best quality of vulnerability data, you may have to visit VulDB.

Diskussion

Bisher keine Kommentare. Sprachen: de + en.

Bitte loggen Sie sich ein, um kommentieren zu können.

Do you want to use VulDB in your project?

Use the official API to access entries easily!