Vulnerabilidades nas pilhas TCP do Linux e FreeBSD que levam à negação de serviço remoto

Empresa Netflix expose vários problemas críticos vulnerabilidades nos stacks TCP do Linux e FreeBSD, que permitem iniciar remotamente uma falha do kernel ou causar consumo excessivo de recursos ao processar pacotes TCP formatados de forma especial (packet-of-death). Os problemas são causados por falhas nos manipuladores do tamanho máximo do bloco de dados no pacote TCP (MSS, Maximum Segment Size) e no mecanismo de confirmação seletiva de conexões (SACK, TCP Selective Acknowledgement).

  • CVE-2019-11477 (SACK Panic) — o problema se manifesta nos kernels Linux a partir da versão 2.6.29 e permite causar uma falha (panic) do kernel através do envio de uma série de pacotes SACK devido ao surgimento de um estouro de inteiro no manipulador. Para o ataque, é suficiente definir o valor de MSS para a conexão TCP em 48 bytes (limite inferior, que estabelece o tamanho do segmento em 8 bytes) e enviar uma sequência de pacotes SACK organizados de forma específica.

    Como medidas alternativas de proteção, é possível desativar o processamento de SACK (definindo 0 em /proc/sys/net/ipv4/tcp_sack) ou bloquear conexões com baixo MSS (funciona apenas quando o sysctl net.ipv4.tcp_mtu_probing é definido como 0 e pode interferir no funcionamento de algumas conexões normais com baixo MSS);

  • CVE-2019-11478 (SACK Slowness) — leva à interrupção do mecanismo SACK (quando utilizando um kernel Linux anterior a 4.15) ou ao consumo excessivo de recursos. O problema ocorre ao processar pacotes SACK especialmente formatados, que podem ser utilizados para fragmentar a fila de retransmissão TCP. As alternativas de proteção são semelhantes à vulnerabilidade anterior;
  • CVE-2019-5599 (SACK Slowness) — permite a fragmentação do mapa de pacotes enviados ao processar uma sequência especial de SACK dentro de uma única conexão TCP e provoca a execução de uma operação intensiva em recursos de iteração de lista. O problema se manifesta no FreeBSD 12 com o mecanismo de identificação de perda de pacotes RACK. Como medida de contorno, o módulo RACK pode ser desativado;
  • CVE-2019-11479 — o atacante pode causar no kernel Linux a divisão das respostas em vários segmentos TCP, cada um contendo apenas 8 bytes de dados, o que pode resultar em um aumento significativo no tráfego, aumento da carga da CPU e saturação do canal de comunicação. Como método de proteção alternativo, recomenda-se bloquear conexões com baixo MSS.

    No kernel Linux, os problemas foram corrigidos nas versões 4.4.182, 4.9.182, 4.14.127, 4.19.52 e 5.1.11. A correção para o FreeBSD está disponível na forma de patch. Atualizações de pacotes com o kernel já foram lançadas para Debian, RHEL, SUSE/openSUSE. Correção em preparação em Ubuntu, Fedora e EPEL para RHEL/CentOS.

    Fonte: opennet.ru

  • Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster