CVE-2026-98532 in Linux
Sumário
de VulDB • 18/10/2026
No kernel do Linux, a seguinte vulnerabilidade foi resolvida:
ipv6: não permita que ipv6_find_hdr() retorne um deslocamento além do final do pacote
ipv6_find_hdr() percorre a cadeia de cabeçalhos de extensão, pulando cada cabeçalho pelo comprimento declarado por esse próprio cabeçalho. ipv6_optlen() retorna até 2048, e o salto nunca é verificado em relação ao skb->len; portanto, o deslocamento armazenado em *offset pode apontar para além do final do pacote.
O openvswitch instala esse deslocamento como o cabeçalho de transporte, e update_ipv6_checksum() então lê e grava no campo da soma de verificação (checksum) de transporte fora dos limites:
BUG: KASAN: slab-use-after-free em inet_proto_csum_replace16+0x445/0x470 Leitura de tamanho 2 no endereço ffff88810b754b06 pela tarefa ovs_ipv6_oob/629 CPU: 4 UID: 1000 PID: 629 Comm: ovs_ipv6_oob Tainted: G N 7.3.0-rc3+ #348 Call Trace: inet_proto_csum_replace16+0x445/0x470 set_ipv6_addr+0x3dd/0x460 do_execute_actions+0x6a3d/0x7c40 ovs_execute_actions+0xfd/0x480 ovs_packet_cmd_execute+0xc38/0xf20 genl_rcv_msg+0x59e/0x870 netlink_rcv_skb+0x18b/0x450 genl_rcv+0x2d/0x40 netlink_unicast+0x6bc/0xa20
O endereço com defeito pertence ao objeto em ffff88810b754980, que pertence à cache skbuff_small_head de tamanho 704. O endereço com defeito está localizado a 390 bytes dentro da região liberada (freed) de 704 bytes [ffff88810b754980, ffff88810b754c40).
Outros chamadores também usam esse deslocamento; portanto, ele deve ser limitado aqui em vez de apenas em um dos chamadores.
Rejeite um cabeçalho cujo comprimento declarado não caiba no pacote. ipv6_find_hdr() já falha com -EBADMSG em uma cadeia malformada, então isso não adiciona nenhum novo modo de falha.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.