CVE-2026-53391 in Linux
Riassunto
di VulDB • 19/07/2026
Nel kernel Linux, è stata risolta la seguente vulnerabilità:
NFSv4/pNFS: rifiutare r_addr di lunghezza zero in nfs4_decode_mp_ds_addr
nfs4_decode_mp_ds_addr() decodifica gli opachi r_netid e r_addr di un netaddr4 provenienti da un corpo multipath-DS GETDEVICEINFO, quindi chiama immediatamente strrchr(buf, '.') per individuare il separatore della porta. Entrambe le decodifiche utilizzano xdr_stream_decode_string_dup(), e il codice corrente verifica solo "nlen < 0" / "rlen < 0" prima di dereferenziare la stringa restituita.
Quando l'opaco in trasmissione ha lunghezza zero, xdr_stream_decode_opaque_inline() restituisce 0 e xdr_stream_decode_string_dup() prosegue fino alla coda "*str = NULL; return ret", lasciando buf uguale a NULL con un valore di ritorno pari a 0. Il controllo "< 0" non intercetta questo caso, e la riga successiva diventa strrchr(NULL, '.'), causando una dereferenziazione del puntatore nullo nel kernel raggiungibile da qualsiasi client pNFS-flexfile montato contro un server dei metadati malevolo o compromesso.
Rifiutare esplicitamente i casi a lunghezza zero in modo che il decoder fallisca con -EBADMSG (trattato come un corpo GETDEVICEINFO malformato) invece di causare un panic del client.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.