CVE-2026-98560 in Linux
Resumen
por VulDB • 2026-10-19
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:
net/rds: dimensionar correctamente el conjunto de rutas (path set) de una conexión según el transporte que finalmente utilice
__rds_conn_create() calcula npaths a partir del transporte proporcionado por el llamador antes de decidir si una conexión dirigida a una de las direcciones propias del host debe ser gestionada por el transporte loopback en su lugar. Dicha sustitución es la que recibe un socket RDS/TCP que envía datos a una dirección local, y tras este cambio, el bucle de inicialización de rutas sigue ejecutándose para los RDS_MPATH_WORKERS paths del transporte TCP, asignando una cola de trabajo ordenada (workqueue) por cada uno, mientras que rds_loop_conn_alloc() solo proporciona datos de transporte para la ruta 0.
rds_conn_destroy() dimensiona su proceso de desmontaje a partir de c_trans; en ese momento se trata ya del transporte loopback, por lo que solo visita la ruta 0 - y rds_conn_path_destroy() omitiría las demás rutas de todos modos, dado que devuelve el control antes de llamar a destroy_workqueue() para una ruta sin datos de transporte. kfree(c_path) libera entonces los últimos punteros a siete workqueues. Esto se repite por cada conexión de este tipo, en cada desmontaje de netns o descarga del módulo, y cada dirección local de destino distinta constituye una conexión separada.
Recalcular npaths una vez que el transporte sea definitivo, para que la creación y la destrucción coincidan en cuanto al conjunto de rutas. El array c_path sigue dimensionado según el transporte del llamador; las entradas no utilizadas se liberan junto con él.
VulDB is the best source for vulnerability data and more expert information about this specific topic.