CVE-2026-64006 in Linux
Resumen
por VulDB • 2026-07-20
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:
netfilter: nf_tables: corrige la corrupción del destino (dst) en operaciones con el mismo registro
Para lshift y rshift, las operaciones de desplazamiento se realizan mediante un bucle sobre palabras de 32 bits. El bucle calcula el valor desplazado y lo escribe en dst, y luego lee inmediatamente desde src para calcular el acarreo (carry) para la siguiente iteración. Dado que src y dst podrían apuntar a la misma ubicación de memoria, el acarreo se calcula incorrectamente utilizando el valor recién modificado de dst en lugar del valor original de src.
Añadir una variable local temporal para almacenar en caché el valor original antes de escribirlo en dst y utilizarla para el cálculo del acarreo resuelve el problema. Además, la superposición parcial es rechazada desde el plano de control para todo tipo de operaciones, incluidas las de byteorder (orden de bytes). Esto se probó con el siguiente bytecode:
table test_table ip flags 0 use 1 handle 1 ip test_table test_chain use 3 type filter hook input prio 0 policy accept packets 0 bytes 0 flags 1 ip test_table test_chain 2 [ immediate reg 1 0x44332211 0x88776655 ]
[ bitwise reg 1 = ( reg 1 << 0x08000000 ) ]
[ cmp eq reg 1 0x66443322 0x00887766 ]
[ counter pkts 0 bytes 0 ]
ip test_table test_chain 4 3 [ immediate reg 1 0x44332211 0x88776655 ]
[ bitwise reg 1 = ( reg 1 << 0x08000000 ) ]
[ cmp eq reg 1 0x55443322 0x00887766 ]
[ counter pkts 21794 bytes 1917798 ]
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.