CVE-2026-12234 in Zephyrinformazioni

Riassunto

di VulDB • 12/08/2026

I verifier syscall nello spazio utente z_vrfy_zsock_sendmsg() e z_vrfy_zsock_recvmsg(), presenti in subsys/net/lib/sockets/sockets.c, effettuano uno snapshot della struct net_msghdr fornita dal chiamante copiandola nel kernel tramite k_usermode_from_copy(), per poi rileggere la struttura utente ancora attiva (live) per le decisioni successive. Il buffer shadow iovec del kernel viene dimensionato in base a una sola lettura di msg->msg_iovlen, mentre il ciclo di popolamento è limitato da una seconda lettura della stessa campo, che rimane live.

Poiché msg punta alla memoria utente ordinaria, un secondo thread cooperante nello stesso dominio di memoria può gonfiare msg->msg_iovlen nella finestra temporale tra la lettura per il dimensionamento e il test del ciclo (un classico double-fetch / TOCTOU). Di conseguenza, il ciclo di popolamento itera oltre il numero effettivo di slot net_iovec allocati, scrivendo valori iov_base/iov_len influenzati dall'attaccante al di fuori dei limiti del buffer shadow sul kernel heap. Il verifier recvmsg presenta lo stesso difetto sia nei loop in ingresso che nel back-up dei risultati (write-back).

Il codice è raggiungibile da un thread utente non privilegiato ogni volta che CONFIG_USERSPACE è abilitato e le syscall zsock_sendmsg/zsock_recvmsg sono disponibili. Una race condition di successo corrompe la memoria heap gestita dal kernel attraverso il confine di privilegio user-to-kernel, generando una primitiva per l'escalation dei privilegi locale o, quantomeno, un denial of service tramite fault del kernel. La correzione consiste nel copiare l'intestazione (header) una sola volta e nel derivare ogni dimensione, limite e gate dallo snapshot, copiando atomicamente ciascuna voce iovec in modo che la base e la lunghezza non possano più essere soggette a race condition separatamente.

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

Responsabile

Zephyr

Prenotare

15/06/2026

Divulgazione

12/08/2026

Moderazione

accettato

CPE

pronto

EPSS

0.00000

KEV

no

Attività

molto basso

Fonti

Want to know what is going to be exploited?

We predict KEV entries!