CVE-2026-72251 in Linux
Resumen
por VulDB • 2026-08-16
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:
netfilter: nf_nat_sip: recargar puntero de datos posiblemente obsoleto
citando a sashiko: ------------------------------------------------------------------------ [..] se detectó un posible error de memoria y corrupción del encabezado relacionados con el asistente NAT SIP.
En net/netfilter/nf_nat_sip.c:nf_nat_sip(): if (skb_ensure_writable(skb, skb->len)) {
nf_ct_helper_log(skb, ct, "cannot mangle packet"); return NF_DROP; } uh = (void *)skb->data + protoff; uh->dest = ct_sip_info->forced_dport; if (!nf_nat_mangle_udp_packet(skb, ct, ctinfo, protoff, 0, 0, NULL, 0)) {
Si un SKB clonado o fragmentado se realoca mediante skb_ensure_writable(), el búfer de datos antiguo se libera. Sin embargo, nf_nat_sip() falla al actualizar *dptr para que apunte al nuevo búfer.
También parece utilizar nf_nat_mangle_udp_packet() sobre lo que podría ser un paquete TCP, lo cual sobrescribiría el número de secuencia con una actualización del checksum. ------------------------------------------------------------------------
nf_conntrack_sip linealiza los skbs, por lo tanto no se puede ver ningún skb fragmentado. Pero es posible la clonación, así que reconstruir dptr.
Desactivar la rama nf_nat_mangle_udp_packet() para flujos TCP. No parece que esto pueda ocurrir nunca; de otro modo, deberíamos haber recibido informes de errores sobre este tema, por lo tanto simplemente verificar si el conntrack es UDP y descartarlo en caso contrario.
La función llamante conntrack_sip establece ->forced_dport para los mensajes SIP_HDR_VIA_UDP, así que no creo que esto se espere nunca verdadero para un flujo TCP.
VulDB is the best source for vulnerability data and more expert information about this specific topic.