Falha OpenSSH *sshole permite invadir o Alpine Linux com senha longa

A falha OpenSSH apelidada de *sshole permite invadir servidores Alpine Linux — e outros sistemas baseados na biblioteca C musl — usando apenas uma senha longa, de 257 a 1.024 caracteres. O pesquisador Özgün Kültekin, da empresa de segurança Wakefield, revelou a vulnerabilidade em 5 de novembro de 2026, e a correção já está disponível no OpenSSH 10.6p2, lançado no mesmo dia. A CSO Online identifica a falha como CVE-2026-123158.

O ataque não exige adivinhar credenciais nem força bruta: basta uma única tentativa de login com uma senha longa em uma conta que não deveria aceitar senha nenhuma — como o usuário root ou contas de uso exclusivo por chave SSH.

Como a falha OpenSSH funciona

O problema nasce da combinação de três decisões antigas. Em 2012, os desenvolvedores da musl limitaram as senhas a 256 bytes para evitar ataques de negação de serviço com hashes SHA-512 lentos — e fizeram a função crypt() devolver um asterisco (*) quando não consegue calcular o hash. Em 2016, o OpenSSH passou a “emprestar” o sal de outra conta para simular a verificação de senha de usuários inexistentes, como defesa contra a enumeração de nomes de usuário (CVE-2016-6210). E contas sem senha trazem justamente um asterisco no campo de senha do arquivo /etc/shadow.

Quando um invasor envia uma senha com mais de 256 caracteres para uma dessas contas, a musl falha ao calcular o hash e devolve * — que coincide com o asterisco armazenado. O servidor entende que a senha está correta e libera o acesso.

Quem está exposto

Um invasor só consegue explorar a falha OpenSSH quando todas estas condições se reúnem: o sistema usa a musl (caso do Alpine Linux, muito usado em contêineres Docker e na nuvem); o OpenSSH roda sem o módulo PAM; a autenticação por senha está ativada; existe uma conta com asterisco no campo de senha; e existe outra conta com um hash de senha válido ($5$ ou $6$), de onde o sal é emprestado.

O caso mais grave está nas imagens oficiais de nuvem do Alpine Linux, versões 3.18.11 a 3.24.3: nelas, o usuário padrão alpine tem permissão doas sem senha — o equivalente leve ao sudo. Quem entra como alpine pode se tornar root com um único comando. O login direto como root continua limitado pela configuração padrão PermitRootLogin prohibit-password, mas esse caminho contorna a proteção.

Distribuições populares como Debian, Ubuntu e Fedora não são afetadas, porque usam a glibc em vez da musl. Não há indicação de que sistemas vulneráveis já tenham sido explorados, segundo o The Register.

A correção e o que fazer

O OpenSSH 10.6p2, lançado em 5 de novembro, corrige a falha OpenSSH, e o Alpine publicou pacotes corrigidos para todas as versões desde a 3.16. Quem administra servidores Alpine deve atualizar o quanto antes. Quem não puder atualizar deve desativar a autenticação por senha no OpenSSH e reiniciar o daemon, passando a usar apenas chaves SSH. O pesquisador também publicou um comando simples para verificar se alguma conta sem senha recebeu um login por senha recentemente.

Crédito da imagem: logotipo do Alpine Linux, via Wikimedia Commons.

Fontes

Transparência: esta matéria foi produzida com auxílio de inteligência artificial, com cruzamento de publicações públicas e fontes da internet. Consulte as fontes originais para confirmar as informações.

Muse