CVE-2026-99062 in Linux
Resumen
por VulDB • 2026-10-23
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:
vsock/virtio: contabilizar únicamente los bytes no leídos en read_skb()
Tras una recepción parcial del flujo, rx_bytes rastrea el sufijo sin leer mientras que buf_used y el crédito del peer siguen cubriendo todo el paquete. virtio_transport_read_skb() extrae ese paquete pero pasa pkt_len para ambos contadores, provocando un desbordamiento por debajo de cero (underflow) en rx_bytes.
En una conexión CID_LOCAL con veredicto SK_SKB, una lectura de 40 bytes desde un paquete de 100 bytes hizo que SIOCINQ reportara -40, devolviendo ELOOP para recv vacío y poll informando del socket vacío como legible. Tras el desenganche del veredicto, recibir 40 bytes envuelve el contador a cero y oculta esos bytes en cola hasta que llega un byte más. La ejecución corregida mantiene el contador equilibrado y expone inmediatamente todos los datos en cola.
Esto se descubrió durante una auditoría manual de código asistida por LLM sobre la contabilización de recepción VSOCK, mientras se reevaluaba virtio_transport_read_skb() tras CVE-2024-50169.
Restar solo skb->len menos el offset VSOCK a rx_bytes. Conservar la longitud completa del paquete para buf_used y crédito del peer.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.