Nel modulo ksmbd, che offre un'implementazione integrata nel kernel di Linux di un server file basato sul protocollo SMB, sono state individuate due vulnerabilità che consentono l'esecuzione remota di codice con privilegi di kernel senza autenticazione o di determinare il contenuto della memoria del kernel su sistemi con il modulo ksmbd attivato. I problemi si manifestano a partire dal kernel 5.15, nel quale è stato incluso il modulo ksmbd. Le vulnerabilità sono state corrette negli aggiornamenti del kernel 6.7.2, 6.6.14, 6.1.75 e 5.15.145. È possibile monitorare la correzione nei vari distribuzioni alle seguenti pagine: Debian, Ubuntu, Gentoo, RHEL, SUSE, Fedora, Arch.
La prima vulnerabilità (CVE-2024-26592) può portare all'esecuzione di codice da parte dell'attaccante con privilegi di kernel inviando richieste TCP appositamente formattate e non autenticati a server ksmbd. La vulnerabilità è causata da una gestione errata del blocco degli oggetti nel codice di inizializzazione e interruzione della connessione TCP a ksmbd, che consente di creare condizioni per l'accesso a memoria già liberata (use-after-free).
La seconda vulnerabilità (CVE-2024-26594) porta a una perdita di contenuto della memoria del kernel durante l'elaborazione di un mech-token non valido nella richiesta di installazione della sessione inviata dal client. La vulnerabilità è causata da un'elaborazione impropria dei dati con un mech-token SMB2 e porta alla lettura di dati da un'area al di fuori del buffer allocato.
In aggiunta, ci sono altre vulnerabilità nel kernel di Linux:
- CVE-2023-52439 — accesso a memoria già liberata (use-after-free) nella funzione uio_open del sottosistema uio, che potrebbe consentire a un utente locale di eseguire codice con privilegi di kernel.
- CVE-2024-26582 — accesso a memoria già liberata (use-after-free) nell'implementazione TLS a livello di kernel (ktls), che potrebbe consentire l'elevazione dei privilegi durante le operazioni di decrittazione.
- CVE-2024-0646 — scrittura in un'area di memoria al di fuori del buffer nel sottosistema ktls a seguito di una manipolazione locale specifica del socket ktls tramite la funzione splice. La vulnerabilità potrebbe permettere l'elevazione dei privilegi nel sistema.
- CVE-2023-6932 — condizione di race nell'implementazione del protocollo IGMP (Internet Group Management Protocol) nello stack IPv4, che porta a un accesso a memoria già liberata (use-after-free). Questa vulnerabilità potrebbe potenzialmente consentire a un utente locale di elevare i propri privilegi nel sistema.
- CVE-2023-52435 — overflow di MSS nella funzione skb_segment() dello stack di rete del kernel.
- CVE-2024-26601 — errore nel codice di deallocazione dei blocchi nel filesystem ext4 che può essere sfruttato per danneggiare il buddy bitmap.
- CVE-2024-26598 — accesso a memoria già liberata (use-after-free) nel hypervisor. KVM.
Fonte: opennet.ru
