Al nucli de Linux, s’ha resolt la següent vulnerabilitat: nfsd: corregeix el desbordament de l’emmagatzematge dinàmic a la memòria cau de reproducció LOCK d’NFSv4.0

ALERTES

23/06/2026

CVE-2026-31402

CRÍTIC (9,8)

CVSS3: 0,0

La memòria cau de reproducció NFSv4.0 utilitza un buffer en línia fix de 112 bytes (rp_ibuf[NFSD4_REPLAY_ISIZE]) per emmagatzemar les respostes d’operació codificades. Aquesta mida es va calcular a partir de les respostes OPEN i no té en compte les respostes LOCK denegades, que inclouen el propietari del bloqueig en conflicte com a camp de longitud variable de fins a 1024 bytes (NFS4_OPAQUE_LIMIT). Quan es denega una operació LOCK a causa d’un conflicte amb un bloqueig existent que té un propietari gran, nfsd4_encode_operation() copia la resposta codificada completa al buffer de reproducció de mida insuficient mitjançant read_bytes_from_xdr_buf() sense comprovació de límits. Això dona com a resultat una escriptura fora de límits de fins a 944 bytes més enllà del final del buffer, cosa que corromp la memòria de l’emmagatzematge dinàmic adjacent. Això pot ser activat remotament per un atacant no autenticat amb dos clients NFSv4.0 cooperants: un estableix un bloqueig amb una cadena de propietari gran i l’altre sol·licita un bloqueig conflictiu per provocar la denegació. Podríem solucionar-ho augmentant NFSD4_REPLAY_ISIZE per permetre un opac complet, però això augmentaria la mida de cada propietari d’estat, quan la majoria dels propietaris de bloqueigs no són tan grans.

Sistemes Afectats

  • Linux Linux Kernel
  • Linux Linux Kernel 2.6.12
  • Linux Linux Kernel 7.0

Remediació

Es pot solucionar comprovant la longitud de la resposta codificada amb NFSD4_REPLAY_ISIZE abans de copiar-la a la memòria intermèdia de reproducció. Si la resposta és massa gran, definiu rp_buflen a 0 per ometre l’emmagatzematge a la memòria cau de la càrrega útil de reproducció. L’estat encara està emmagatzemat a la memòria cau i el client ja ha rebut la resposta correcta a la sol·licitud original. Vegeu-ne les Referències.