WEAPONIZING-CVE-2024-4367
CVE-2024-4367 é uma vulnerabilidade crítica (CVSS 9.8) no PDF.js, que permite a execução arbitrária de código JavaScript devido a verificações de tipo insuficientes no objeto FontMatrix dentro de arquivos PDF.
Assistente de Exploração CVE-2024-4367: Guia do Usuário
| IDENTIFICADOR CVE | CVE-2024-4367 |
|---|
| SEVERIDADE | Crítica (Pontuação CVSS: 9.8) |
| VULNERABILIDADE | Execução arbitrária de código JavaScript no PDF.js devido a verificações de tipo insuficientes no objeto FontMatrix |
| EXPLORAÇÃO | Arquivos PDF criados maliciosamente podem executar JavaScript no navegador da vítima, levando a roubo de dados, XSS ou RCE. |
1. Configuração do Ambiente
Pré-requisitos
-
Sistema Operacional:
- Uma distribuição Linux baseada em Debian/Ubuntu ou equivalente, com privilégios administrativos.
- Certifique-se de que o Python 3.x esteja instalado (
python3 --version).
-
Configuração do Script:
- Salve o script de exploração em um diretório de sua escolha (por exemplo,
~/cve-2024-4367/) com o nome de arquivo cve_2024_4367_exploit_wizard.py.
-
PDF Modelo:
- Coloque um arquivo PDF benigno chamado
template.pdf no mesmo diretório. Este arquivo servirá como base para o PDF malicioso.
-
Social Engineering Toolkit (SET):
2. Executando o Assistente de Exploração
Passo 1: Tornar o Script Executável (Opcional)
Conceda permissões de execução ao script:
chmod +x cve_2024_4367_exploit_wizard.py
Passo 2: Executar o Script
Execute o script usando um dos métodos abaixo:
./cve_2024_4367_exploit_wizard.py
ou
python3 cve_2024_4367_exploit_wizard.py
Passo 3: Siga os Prompts na Tela
O script irá guiá-lo pelo processo de ataque passo a passo.
3. Fluxo de Trabalho do Assistente Passo a Passo
Passo 1: Verificar e Instalar Dependências
- O script verifica automaticamente:
- PyPDF2: Necessário para manipular PDFs.
- SET: Usado para campanhas de phishing.
- Dependências ausentes serão instaladas automaticamente (ou solicitarão instalação manual).
Passo 2: Criar um PDF Malicioso
- O script injeta um payload JavaScript no campo
/FontMatrix do template.pdf.
- A saída,
malicious.pdf, será salva no mesmo diretório.
- Sucesso ou falha será exibido.
Passo 3: Gerenciar Alvos da Campanha
- Adicione e-mails de alvos (ou identificadores) interativamente.
- Digite cada e-mail de alvo um por um.
- Finalize a lista digitando
done.
- O script se integra ao SET para entregar o PDF malicioso via phishing.
- Siga os prompts do SET para configurar a campanha:
- Configure modelos de e-mail.
- Anexe
malicious.pdf.
- Saia do SET para retornar ao assistente.
Passo 5: Hospedar o PDF Malicioso
- O script inicia um servidor HTTP em
http://localhost:8080.
malicious.pdf fica acessível para download.
- Dados exfiltrados pelo payload (por exemplo,
document.cookie) serão registrados no console do script.
4. Testando a Exploração
Validar em um Ambiente Controlado
- Abra
malicious.pdf em uma versão vulnerável do PDF.js ou em uma VM em sandbox.
- Monitore os logs do servidor para confirmar a execução do payload e a exfiltração de dados.
Observar Logs de Exfiltração
Modificar o Payload para Testes Adicionais
- Personalize o payload para ações como keylogging ou redirecionamento.
- Teste a capacidade do seu ambiente de detectar ou mitigar essas ameaças.
5. Limpeza e Tarefas Pós-Execução
Parar o Servidor Local
Encerre o servidor HTTP usando Ctrl+C no terminal.
Proteger Ativos Maliciosos
- Exclua ou armazene com segurança
malicious.pdf para evitar uso acidental.
- Arquive com segurança quaisquer logs ou dados de campanha.
Redefinir o Ambiente de Teste
- Se estiver usando uma máquina virtual, reverta para um snapshot limpo.
- Certifique-se de que nenhum artefato malicioso permaneça no sistema.
6. Notas Importantes e Aviso Legal
Somente para Uso Autorizado
- Este script e guia são destinados a fins educacionais e testes de penetração autorizados em ambientes controlados.
- O uso não autorizado é ilegal e pode resultar em graves consequências legais.
- Sempre obtenha permissão explícita antes de conduzir qualquer teste de exploração.
Protegendo Seus Sistemas
-
Atualize o PDF.js:
- Certifique-se de que a versão mais recente do PDF.js esteja instalada para corrigir a CVE-2024-4367.
-
Restrinja JavaScript em PDFs:
- Desative a execução de JavaScript nos visualizadores de PDF sempre que possível.
-
Implemente Proteção de Endpoint:
- Use ferramentas robustas de detecção e resposta de endpoint.
-
Eduque os Usuários:
- Treine os funcionários para reconhecer tentativas de phishing e evitar abrir PDFs não verificados.
Seguindo este guia com responsabilidade, você pode simular efetivamente cenários de ataque do mundo real e reforçar suas defesas de cibersegurança.