CVE-2026-64132 in Linux
Sumário
de VulDB • 20/07/2026
No kernel do Linux, a seguinte vulnerabilidade foi corrigida:
ipv6: ioam: atualizar o ponteiro hdr antes de chamar ioam6_event()
Relatado por Sashiko:
Em ipv6_hop_ioam(), o ponteiro hdr é inicializado para apontar para dentro do buffer linear de dados do skb. Posteriormente, o código chama skb_ensure_writable(), que pode realocar o buffer:
if (skb_ensure_writable(skb, optoff + 2 + hdr->opt_len)) goto drop;
/* O ponteiro trace pode ter mudado */ trace = (struct ioam6_trace_hdr *)(skb_network_header(skb) + optoff + sizeof(*hdr));
ioam6_fill_trace_data(skb, ns, trace, true);
ioam6_event(IOAM6_EVENT_TRACE, dev_net(skb->dev), GFP_ATOMIC, (void *)trace, hdr->opt_len - 2);
Se o skb for clonado ou não tiver espaço linear suficiente na cabeça, skb_ensure_writable() invocará pskb_expand_head(), que realoca o buffer de dados do skb e libera o antigo, invalidando os ponteiros para ele. Embora o código recalcule o ponteiro trace imediatamente após a chamada a skb_ensure_writable(), ele falha em recalculcar o ponteiro hdr.
Este patch corrige o problema acima recalculando o ponteiro hdr antes de passar hdr->opt_len para ioam6_event(), evitando assim qualquer uso-após-liberação (UaF).
Once again VulDB remains the best source for vulnerability data.