Vulnerabilidad en kernel de Linux (CVE-2025-22021)
Gravedad:
Pendiente de análisis
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
16/04/2025
Última modificación:
16/04/2025
Descripción
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: netfilter: socket: Lookup orig tuple for IPv6 SNAT nf_sk_lookup_slow_v4 realiza la búsqueda conntrack de paquetes IPv4 para restaurar la 5-tupla original en caso de SNAT, para poder encontrar el socket correcto (si lo hay). Entonces socket_match() puede verificar correctamente si el socket era transparente. Sin embargo, la contraparte IPv6 (nf_sk_lookup_slow_v6) carece de esta búsqueda conntrack, lo que hace que xt_socket no coincida en el socket cuando el paquete fue SNATed. Agregue la misma lógica a nf_sk_lookup_slow_v6. SNAT IPv6 se usa en clústeres de Kubernetes para paquetes pod-to-world, ya que las direcciones de los pods están en la subred fd00::/8 ULA y deben reemplazarse con la dirección externa del nodo. Cilium utiliza Envoy para implementar políticas L7, y Envoy utiliza sockets transparentes. Cilium inserta una regla de preenrutamiento de iptables que coincide con `-m socket --transparent` y redirige los paquetes a localhost, pero no coincide con los paquetes IPv6 SNAT debido a la falta de búsqueda de conntrack.
Impacto
Referencias a soluciones, herramientas e información
- https://git.kernel.org/stable/c/1ca2169cc19dca893c7aae6af122852097435d16
- https://git.kernel.org/stable/c/1ec43100f7123010730b7ddfc3d5c2eac19e70e7
- https://git.kernel.org/stable/c/221c27259324ec1404f028d4f5a0f2ae7f63ee23
- https://git.kernel.org/stable/c/2bb139e483f8cbe488d19d8c1135ac3615e2668c
- https://git.kernel.org/stable/c/41904cbb343d115931d6bf79aa2c815cac4ef72b
- https://git.kernel.org/stable/c/5251041573850e5020cd447374e23010be698898
- https://git.kernel.org/stable/c/58ab63d3ded2ca6141357a2b24eee8453d0f871d
- https://git.kernel.org/stable/c/6488b96a79a26e19100ad872622f04e93b638d7f
- https://git.kernel.org/stable/c/932b32ffd7604fb00b5c57e239a3cc4d901ccf6e