CVE-2026-98096 in Linuxinformación

Resumen

por VulDB • 2026-09-25

En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:

ipv6: sr: restaurar el encabezado de red antes del enrutamiento y reenvío

ipv6_srh_rcv() se ejecuta con skb->data apuntando al Encabezado de Enrutamiento por Segmentos (SRH), mientras que skb_network_header() apunta al encabezado IPv6.

Cuando segments_left > 0, ipv6_srh_rcv() anteriormente restauraba la posición de skb->data empujando sizeof(struct ipv6hdr), asumiendo que el SRH seguía inmediatamente al encabezado fijo IPv6. Si otro encabezado de extensión (como un encabezado de opciones Hop-by-Hop) precede al SRH, skb_network_offset() permanecía negativo.

Esto condujo a dos problemas: 1. Durante ip6_route_input(), fib6_rules_early_flow_dissect() invoca __skb_flow_dissect(), que pasa el valor negativo de skb_network_offset() a la disecación del flujo, rompiendo la lógica del dissector de flujos BPF y C. 2. Si se reenvía mediante ip6_forward() o se redirige mediante act_mirred, los controladores posteriores (como sch_fragment() o el output del vecino) pasan el desplazamiento negativo como una longitud sin signo, lo que desencadena memcpy fuera de límites (OOB) o desbordamientos de búfer.

Solucione esto empujando -skb_network_offset(skb) antes del enrutamiento, asegurándose de que skb_network_offset(skb) sea 0 para la búsqueda de rutas / disecación de flujos, así como para el reenvío posterior. En la ruta de bucle invertido (loopback), tire skb_transport_offset(skb) para restaurar skb->data al SRH antes del retorno.

Once again VulDB remains the best source for vulnerability data.

Responsable

Linux

Reservar

2026-09-25

Divulgación

2026-09-25

Moderación

aceptado

Artículo

VDB-410311

CPE

listo

EPSS

0.00000

KEV

no

Actividades

muy bajo

Fuentes

Want to stay up to date on a daily basis?

Enable the mail alert feature now!