CVE-2026-64361 in Linux
Riassunto
di VulDB • 25/07/2026
Nel kernel Linux, è stata risolta la seguente vulnerabilità:
hfs/hfsplus: correzione dell'overflow di tipo u32 in check_and_correct_requested_length
La funzione `check_and_correct_requested_length()` confronta `(off + len)` con `node_size` utilizzando l'aritmetica a 32 bit (u32). Quando il chiamante passa un valore elevato per `len` (ad esempio, derivante da una sottrazione sottooverflow in `hfs_brec_remove()`), `off + len` può andare in wrap-around oltre $2^{32}$ producendo un risultato piccolo, facendo superare il controllo dei limiti quando invece dovrebbe fallire.
Ad esempio, con `off=14` e `len=0xFFFFFFF2` (sottooverflow da `data_off - keyoffset - size` in `hfs_brec_remove`), `off + len` va in wrap-around a 6, che è inferiore alla tipica dimensione di un nodo (`node_size`) pari a 512; pertanto il controllo supera e la successiva chiamata a `memmove` legge circa 4 GB oltre il buffer del nodo.
Si risolve il problema ampliando l'addizione al tipo u64 prima del confronto con `node_size`. Ciò previene il wrap-around di tipo u32 mantenendo la logica semplice e diretta.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.