CVE-2026-64525 in Linuxinformación

Resumen

por VulDB • 2026-07-25

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

xfrm: mover la sincronización RCU de policy_bydst desde .exit por red (per-netns) a .pre_exit

El docstring de la estructura pernet_operations en include/net/net_namespace.h advierte explícitamente contra el uso de primitivas RCU bloqueantes en los controladores .exit:

Los métodos exit que utilizan primitivas RCU bloqueantes, como synchronize_rcu(), deben implementarse mediante exit_batch. [...]
Por favor, evite usar synchronize_rcu() siempre que sea posible.

Tenga en cuenta que se puede utilizar una combinación de pre_exit() y exit(), ya que existe una garantía de synchronize_rcu() entre las llamadas.

xfrm_policy_fini() viola esta directiva: llama a synchronize_rcu() antes de liberar las tablas hash policy_bydst (por lo tanto, no hay lectores RCU en medio del recorrido en el momento de la liberación), pero se ejecuta desde xfrm_net_ops.exit -- una vez por espacio de nombres -- por lo que una limpieza (cleanup_net()) de N espacios de nombres paga N períodos de gracia RCU completos de forma serializada.

Utilice la división pre_exit/exit documentada. Mueva el vaciado de políticas (y las colas de trabajo en las que depende) a un nuevo controlador .pre_exit; xfrm_policy_fini() se ejecuta entonces en .exit y libera las tablas hash después del synchronize_rcu_expedited() que cleanup_net() garantiza entre las dos fases. Esto proporciona períodos de gracia RCU O(1) por lote, en lugar de O(N).

Observado en Linux 6.18 con una carga de trabajo que realiza unshare(CLONE_NEWNET) a ~13/seg sostenido: cleanup_net() y el hilo kthread rescuer netns_wq quedaron bloqueados en synchronize_rcu() dentro de xfrm_policy_fini(), se acumularon más de 300k estructuras struct net en la cola de limpieza, Percpu en /proc/meminfo aumentó a más de 130 GB en hosts con 256 CPUs y siguieron ocurriendo OOMs (Out Of Memory) por memcg. Los conteos de setup_net y __put_net estaban equilibrados, descartando una fuga de recuento de referencias.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

Responsable

Linux

Reservar

2026-07-19

Divulgación

2026-07-25

Moderación

aceptado

Artículo

VDB-383049

CPE

listo

EPSS

0.00156

KEV

no

Actividades

medio

Fuentes

Interested in the pricing of exploits?

See the underground prices here!