Uma vulnerabilidade crítica rastreada como CVE-2026-55200 foi descoberta na biblioteca libssh2, amplamente usada em clientes SSH. Identificada em 23 de junho de 2026, a falha de gravação fora dos limites permite que atacantes remotos executem código arbitrário enviando pacotes SSH malformados, sem exigir autenticação, afetando versões até a 1.11.1.

Como a falha funciona

A vulnerabilidade reside na função ssh2_transport_read(), dentro do arquivo transport.c do libssh2. Classificada como CWE-680 — um estouro de inteiro que leva a estouro de buffer —, a falha ocorre porque a biblioteca não impõe limites máximos adequados ao campo packet_length dos pacotes SSH recebidos.

Quando um atacante envia um pacote SSH com um valor de packet_length excessivamente grande, o libssh2 aloca memória insuficiente e em seguida grava além do buffer reservado. O resultado é corrupção do heap, permitindo sobrescrever estruturas de memória adjacentes e obter execução arbitrária de código no contexto da aplicação afetada.

Por que o risco é alto

O vetor de ataque é totalmente remoto e baseado em rede. O vetor CVSS v4 indica baixa complexidade de exploração e nenhuma interação do usuário, o que significa que o exploit pode ser executado de forma automática contra serviços expostos. Com um score de 9,2 em 10, a falha se enquadra na categoria de severidade crítica.

Atributo Detalhe
CVE CVE-2026-55200
CVSS 9,2 (Crítica)
Tipo Gravação fora dos limites (CWE-680)
Vetor Remoto, sem autenticação
Versões afetadas libssh2 até 1.11.1
Correção Commit 7acf3df
Pesquisador Tristan Madani

Onde o libssh2 está presente

O libssh2 é frequentemente embutido em utilitários de transferência de arquivos, frameworks de automação, clientes SSH personalizados e sistemas embarcados. Em muitos casos, a biblioteca é linkada estaticamente, o que significa que ferramentas de gestão de pacotes podem não identificá-la como vulnerável, mesmo quando o sistema principal parece atualizado.

Essa amplitude aumenta a superfície de ataque, especialmente em ambientes corporativos onde serviços automatizados processam conexões SSH sem supervisão direta.

Como se proteger agora

Os mantenedores lançaram uma correção que adiciona verificação rigorosa de limites ao campo packet_length antes da alocação e processamento de memória. As ações recomendadas incluem:

  • Atualizar o libssh2 para a versão corrigida ou aplicar o patch do commit 7acf3df no repositório oficial do GitHub.
  • Auditar dependências para localizar instâncias linkadas estaticamente que não aparecem em gestores de pacotes.
  • Restringir acesso SSH apenas a hosts confiáveis e implementar filtragem no nível de rede.
  • Monitorar tráfego SSH por pacotes anormalmente grandes ou travamentos inesperados de aplicação.

O cenário evoca outros casos recentes de falhas críticas em bibliotecas amplamente adotadas, como a vulnerabilidade no Redis que permitia execução remota e a falha crítica em exploração ativa no Jenkins, que também exigiam correção urgente.

Fontes