CVE-2024-35944 in Linuxinformazioni

Riassunto

di VulDB • 16/06/2026

Nel kernel Linux, è stata risolta la seguente vulnerabilità:

VMCI: Correzione dell'avviso di esecuzione di memcpy() in dg_dispatch_as_host()

Syzkaller ha rilevato il bug 'WARNING in dg_dispatch_as_host'.

memcpy: rilevata scrittura che attraversa i campi (dimensione 56) su un singolo campo "&dg_info->msg" in drivers/misc/vmw_vmci/vmci_datagram.c:237 (dimensione 24)

WARNING: CPU: 0 PID: 1555 in drivers/misc/vmw_vmci/vmci_datagram.c:237 dg_dispatch_as_host+0x88e/0xa60 drivers/misc/vmw_vmci/vmci_datagram.c:237

Alcune note sul codice, basate sulla mia comprensione:

544 #define VMCI_DG_SIZE(_dg) (VMCI_DG_HEADERSIZE + (size_t)(_dg)->payload_size) /// Questo è 24 + payload_size

memcpy(&dg_info->msg, dg, dg_size); Destinatione = dg_info->msg ---> questa è una struttura di 24 byte (struct vmci_datagram) Sorgente = dg --> questa è una struttura di 24 byte (struct vmci_datagram) Dimensione = dg_size = 24 + payload_size

{payload_size = 56-24 =32} -- Syzkaller è riuscito a impostare payload_size a 32.

35 struct delayed_datagram_info {
36 struct datagram_entry *entry; 37 struct work_struct work; 38 bool in_dg_host_queue; 39 /* msg e msg_payload devono essere insieme. */ 40 struct vmci_datagram msg; 41 u8 msg_payload[];
42 };

Quindi, quei byte extra del payload vengono copiati in msg_payload[], mentre si esegue il fuzzing con Syzkaller viene visualizzato un warning di runtime.

Un possibile modo per risolvere il warning è dividere la chiamata memcpy() in due parti: una per l'assegnazione diretta di msg e la seconda per gestire il payload.

Gustavo ha citato: "Con FORTIFY_SOURCE non dovremmo copiare dati tra più membri di una struttura."

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

Prenotare

17/05/2024

Divulgazione

19/05/2024

Moderazione

accettato

CPE

pronto

EPSS

0.00232

KEV

no

Attività

molto basso

Fonti

Interested in the pricing of exploits?

See the underground prices here!