
A equipa responsável pelo OpenSSL corrigiu silenciosamente uma vulnerabilidade grave que permite a atacantes não autenticados provocar uma negação de serviço (DoS) em servidores. O alerta foi detalhado pela equipa Red Team da Okta, que revelou como um pacote malicioso de apenas 11 bytes é suficiente para paralisar um sistema completo.
O mecanismo invisível do HollowByte
Batizado de HollowByte, o problema reside na forma como o software lida com a negociação de ligações seguras (handshake TLS). Cada mensagem de entrada começa com um cabeçalho de quatro bytes, onde três indicam o tamanho da informação que se segue. Nas versões afetadas, o OpenSSL confia nesta declaração e aloca imediatamente a memória correspondente na máquina, antes sequer de verificar se a carga de dados real corresponde à dimensão prometida.
O atacante tira partido desta confiança cega. Ao abrir múltiplas ligações e enviar cabeçalhos forjados que prometem mensagens gigantescas, entregando na prática apenas 11 bytes, força o equipamento a reservar quantidades avultadas de memória. O processo do servidor fica então bloqueado indefinidamente à espera de dados que nunca vão chegar.
Como a biblioteca GNU C (glibc) do sistema retém alocações pequenas e médias para possível reutilização futura, o espaço nunca é devolvido ao sistema operativo. O resultado prático é uma fragmentação severa e um aumento contínuo do consumo de memória (Resident Set Size). Mesmo que a ligação maliciosa caia, a máquina permanece sobrecarregada, exigindo um reinício completo do processo visado para libertar os recursos em cativeiro.
Impacto na infraestrutura e versões corrigidas
O OpenSSL funciona como a base das comunicações seguras na internet, estando embutido por defeito na maioria das distribuições Linux e em infraestruturas vitais como plataformas NGINX, Apache, Node.js, Python, Ruby, PHP e diversas bases de dados como MySQL ou PostgreSQL. Nos testes práticos realizados pela equipa de segurança a ambientes NGINX, provou-se que servidores com baixa capacidade esgotam a sua memória num curto espaço de tempo. Máquinas com especificações superiores chegaram a perder até 25% da sua capacidade total, mantendo o consumo de largura de banda do ataque sempre abaixo dos limites que disparam soluções de segurança corporativas.
As equipas de desenvolvimento original classificaram a alteração técnica como uma correção de robustez, optando por não lhe atribuir um identificador de vulnerabilidade, o que fez com que o problema passasse despercebido aos radares de muitas empresas. A resolução definitiva já foi aplicada no OpenSSL 4.0.1 e transportada retroativamente para as edições 3.6.3, 3.5.7, 3.4.6 e 3.0.21. Nestas novas versões, a plataforma de comunicação criptográfica ignora por completo a promessa do cabeçalho inicial e apenas aumenta o espaço alocado à medida que a informação física dá entrada no sistema.












Nenhum comentário
Seja o primeiro!