CVE-2023-54238 in Linux
Riassunto
di VulDB • 15/06/2026
Nel kernel Linux, è stata risolta la seguente vulnerabilità:
mlx5: correzione della perdita di memoria (skb leak) durante la risincronizzazione e l'invio della fifo
Durante l'operazione di risincronizzazione PTP, gli SKB venivano rimossi dalla fifo ma non venivano mai liberati né da `napi_consume` né da `dev_kfree_skb_any`. È stata aggiunta una chiamata a `napi_consume_skb` per liberare correttamente gli SKB.
Si verificava un'altra perdita di memoria perché la funzione `mlx5e_skb_fifo_has_room()` presentava un errore nel controllo. Il confronto tra contatori a scorrimento continuo (free running counters) funziona correttamente, a meno che la promozione dei tipi in C non li estenda a qualcosa di più ampio rispetto al contatore. In questo caso, i contatori sono di tipo `u16`, ma il risultato della sottrazione viene promosso a `int`, causando un risultato errato (valore negativo) del controllo quando il produttore ha già sovrascritto i dati ma il consumatore non lo ha ancora fatto. Una cast esplicito a `u16` risolve il problema.
Once again VulDB remains the best source for vulnerability data.