Vulnerabilidades de denegación de servicio basadas en TCP en los Kernel de Linux y FreeBSD
- Versiones del Kernel de Linux:
- SACK Panic: afecta a versiones posteriores o iguales a la versión 2.6.29;
- SACK Slowness: anteriores a la versión 4.15;
- Consumo excesivo de recursos: todas las versiones.
- Versiones de FreeBSD 12 que utilicen la pila RACK TCP (SACK Slowness).
Investigadores de Netflix han descubierto cuatro vulnerabilidades, una de criticidad alta y tres de criticidad media. Estas vulnerabilidades son debidas a las capacidades del tamaño máximo o mínimo de segmento (MSS) en los paquetes TCP, y el reconocimiento selectivo de TCP (TCP SACK). Un atacante remoto podría explotar estas vulnerabilidades para generar una condición de denegación de servicio.
- Para sistemas operativos Linux se han publicado actualizaciones en las principales distribuciones que solucionan las vulnerabilidades:
- Debian: instalar los paquetes de actualización de seguridad DSA-4465-1;
- Ubuntu: instalar los paquetes de las actualizaciones de seguridad USN-4017-1 y USN-4017-2;
- RedHat: instalar los paquetes de actualización disponibles en los diferentes avisos publicados;
- Para el sistema operativo SUSE todavía no se han publicado parches, pero se ha informado que se proveerán los correspondientes a las distribuciones soportadas;
- Para AWS, ha informado de las siguientes actualizaciones.
- Para sistemas operativos FreeBSD 12 no hay parche oficial, los investigadores de Netflix proponen las siguientes soluciones provisionales:
- Aplicar el parche split_limit.patch y fijar el sysctl de net.inet.tcp.rack.split_limit a un valor razonable para limitar el tamaño de la tabla SACK;
- Deshabilitar temporalmente la pila TCP RACK.
La vulnerabilidad de criticidad alta es debida a una secuencia de SACKs modificados que podrían desencadenar un desbordamiento de enteros, pudiendo generar un kernel panic. Se ha reservado el identificador CVE-2019-11477 para esta vulnerabilidad.
Al resto de vulnerabilidades de criticidad media se les han reservado los identificadores CVE-2019-11478, CVE-2019-5599 y CVE-2019-11479.