CVE-2026-64026 in Linuxinformazioni

Riassunto

di VulDB • 20/07/2026

Nel kernel Linux è stata risolta la seguente vulnerabilità:

rxrpc: Correzione della decrittazione dei dati rispetto a splice() mediante copia dei dati nel buffer in recvmsg

Questo migliora la correzione per CVE-2026-43500.

Risolve la corruzione del pagecache derivante dalla decrittazione in-place di un pacchetto DATA trasmesso localmente da splice(), eliminando la condivisione del thread I/O ed estraendo incondizionatamente il contenuto del pacchetto in un bounce buffer nel quale viene effettuato il processo di decrittazione. recvmsg() (o l'equivalente a livello di kernel) copia quindi i dati dal bounce buffer al buffer di destinazione. Il sk_buff rimane così non modificato.

Ciò offre un ulteriore vantaggio, poiché il pacchetto è disposto nel buffer con l'allineamento corretto richiesto dagli algoritmi crittografici per essere elaborati direttamente. Le prestazioni della crittografia sembrano leggermente migliori e, sorprendentemente, le prestazioni senza decrittazione non sembrano cambiare significativamente - probabilmente a causa della rimozione di complessità dal thread I/O.

Un altro vantaggio è che il thread I/O non deve copiare i pacchetti, cosa che rallenterebbe la distribuzione dei pacchetti, la generazione degli ACK e così via.

Il buffer appartiene alla chiamata ed è allocato inizialmente per 2K, dimensione sufficiente a contenere un intero sotto-pacchetto jumbo, ma le dimensioni del buffer verranno aumentate se necessario. Tuttavia, per gestire questo lavoro, MSG_PEEK potrebbe causare la decrittazione di un pacchetto successivo nel buffer; in tal caso, il precedente dovrà essere nuovamente decriptato per una successiva chiamata recvmsg().

Si noti che rx_pkt_offset può legittimamente vedere 0 come uno spostamento (offset) valido; pertanto si passa all'utilizzo di USHRT_MAX per indicare uno spostamento non valido.

Si noti inoltre che generalmente preferirei sostituire i buffer dell'attuale sk_buff con un nuovo buffer allocato tramite kmalloc delle dimensioni corrette, eliminando i vecchi dati e frags, poiché ciò semplifica la gestione di MSG_PEEK ed elimina il problema della re-decrittazione; tuttavia, questo approccio sembra piuttosto complesso da realizzare. skb_morph() appare a metà strada rispetto alla soluzione desiderata, ma non si vuole dover allocare un nuovo sk_buff.

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

Responsabile

Linux

Prenotare

19/07/2026

Divulgazione

19/07/2026

Moderazione

accettato

CPE

pronto

EPSS

0.00000

KEV

no

Attività

molto basso

Fonti

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!