Vulnerabilidades en pilas TCP de Linux y FreeBSD que provocan denegación remota de servicio

Netflix empresa revelado varios críticos vulnerabilidades en pilas TCP de Linux y FreeBSD, que le permiten iniciar de forma remota un fallo del kernel o provocar un consumo excesivo de recursos al procesar paquetes TCP especialmente diseñados (paquete de la muerte). Problemas causado por errores en los manejadores para el tamaño máximo de bloque de datos en un paquete TCP (MSS, Tamaño máximo de segmento) y el mecanismo de reconocimiento selectivo de conexiones (SACK, TCP Selective Acknowledgment).

  • CVE-2019-11477 (SACK Panic): un problema que aparece en los kernels de Linux a partir de 2.6.29 y le permite provocar un pánico en el kernel enviando una serie de paquetes SACK debido a un desbordamiento de enteros en el controlador. Para atacar, basta con establecer el valor MSS para una conexión TCP en 48 bytes (el límite inferior establece el tamaño del segmento en 8 bytes) y enviar una secuencia de paquetes SACK organizados de cierta manera.

    Como soluciones de seguridad, puede desactivar el procesamiento SACK (escriba 0 en /proc/sys/net/ipv4/tcp_sack) o para bloquear conexiones MSS bajas (sólo funciona cuando sysctl net.ipv4.tcp_mtu_probing está configurado en 0 y puede interrumpir algunas conexiones MSS bajas normales);

  • CVE-2019-11478 (SACK Slowness): provoca una interrupción del mecanismo SACK (cuando se utiliza un kernel de Linux anterior a 4.15) o un consumo excesivo de recursos. El problema ocurre al procesar paquetes SACK especialmente diseñados, que pueden usarse para fragmentar una cola de retransmisión (retransmisión TCP). Las soluciones de seguridad son similares a la vulnerabilidad anterior;
  • CVE-2019-5599 (SACK Slowness): le permite provocar la fragmentación del mapa de paquetes enviados al procesar una secuencia SACK especial dentro de una única conexión TCP y provocar que se realice una operación de enumeración de listas que consume muchos recursos. El problema aparece en FreeBSD 12 con el mecanismo de detección de pérdida de paquetes RACK. Como solución alternativa, puede desactivar el módulo RACK;
  • CVE-2019-11479 - un atacante puede hacer que el kernel de Linux divida las respuestas en varios segmentos TCP, cada uno de los cuales contiene solo 8 bytes de datos, lo que puede provocar un aumento significativo del tráfico, una mayor carga de la CPU y la obstrucción del canal de comunicación. Se recomienda como solución alternativa para la protección. para bloquear conexiones con bajo MSS.

    En el kernel de Linux, los problemas se resolvieron en las versiones 4.4.182, 4.9.182, 4.14.127, 4.19.52 y 5.1.11. Hay una solución para FreeBSD disponible como parche. En las distribuciones, ya se han publicado actualizaciones de los paquetes del kernel para Debian, RHEL, SUSE/openSUSE. Corrección durante la preparación. Ubuntu, Fedora и Arch Linux.

    Fuente: opennet.ru

  • Añadir un comentario