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
MorphAES — IDPS & SandBox & AntiVirus ASSASSINO FURTIVO. O MorphAES é o primeiro motor de shellcode polimórfico do mundo, com propriedades metamórficas e capacidade de contornar sandboxes, o que o torna indetectável para um IDPS, sendo também multiplataforma e independente de bibliotecas. | Kitploit
Ferramentas/GitHubGitHub/cryptolok/morphaes
ExploraçãoEvasão de IDS/IPSShellcodeTestes de PenetraçãoGeração de ShellcodeDesenvolvimento de PayloadsExploração de Binários
GitHubcryptolok/morphaes

MorphAES

IDPS & SandBox & AntiVirus ASSASSINO FURTIVO. O MorphAES é o primeiro motor de shellcode polimórfico do mundo, com propriedades metamórficas e capacidade de contornar sandboxes, o que o torna indetectável para um IDPS, sendo também multiplataforma e independente de bibliotecas.

Ver Repositório
324103há 4 anosRevisado pelo Kitploit

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

MorphAES

IDPS & SandBox & AntiVirus ASSASSINO STEALTH.

MorphAES é o primeiro mecanismo de shellcode polimórfico do mundo, com propriedades metamórficas e capacidade de contornar sandboxes, o que o torna indetectável para um IDPS, também é multiplataforma e independente de bibliotecas.

Propriedades:

  • Polimorfismo (criptografia AES)
  • Metamorfismo (mudanças de lógica e constantes)
  • Independente de plataforma (Linux/BSD/Windows)
  • Furtividade de IDPS (o número total de assinaturas possíveis é maior que o número de átomos no universo para um único código)
  • Evasão de sandbox (instruções especiais de assembly)
  • Evitando caracteres proibidos (\x00, \x04, \x05, \x09, \x0a, \x20)
  • Pode produzir executáveis e ser explorado remotamente
  • O código de entrada pode ter comprimento arbitrário
  • Possibilidade de um NOP sled

Dependências para o morpher:

  • Python 2.7 - mecanismo principal

Dependências para a execução do código:

  • Intel AES-NI de 64 bits - para descriptografia

No entanto, existem algumas limitações (também conhecidas como aspectos white-hat):

  • O metamorfismo não é muito robusto e pode ser detectado usando expressões regulares (mas pode ser melhorado com bastante facilidade)
  • Bytes nulos Unicode ainda podem funcionar (mas quem se importa?)
  • Funcionará apenas em processadores Intel de 64 bits com suporte a AES-NI, mas como todos os PCs dos usuários (como Pentium, Celeron, i3, i5, i7) e os servidores da indústria (como Xeon) o possuem, é mais uma especificação do que uma limitação, portanto uma implementação de 32 bits é impraticável
  • Quase qualquer shellcode tem garantia de funcionar, no entanto, um código arbitrário não funciona (para evitar abuso de malware)
  • PoC e executáveis Windows/BSD estão em andamento, assim como a versão ARM

Como funciona

  1. Preenchimento do shellcode com NOPs (já que AES é uma cifra de bloco) e adição de um NOP sled opcional
  2. Criptografia do shellcode com uma chave aleatória usando AES-128-ECB personalizado (não o melhor, mas o mais simples) - polimorfismo
  3. Randomização de constantes, mudanças de lógica, modificação e reescrita de instruções - metamorfismo

HowTo

Você precisará montar minha implementação personalizada de AESNI-128-ECB usando uma CPU Intel x64 e colocá-la na mesma pasta do script Python.

Para Linux:

root@kitploit:~
sudo apt-get install python
as --64 AES.s -o AES.o
ld AES.o -o AES

Execute o script Python e insira seu shellcode ou nada para um shell Linux padrão. Você também pode especificar seu próprio endereço de execução.

Também é possível construir e executar no Windows/BSD/Mac, mas ainda estou testando.

Você pode testar a PoC Linux em assembly:

root@kitploit:~
as --64 shellcodePoC.s -o shellcodePoC.o
ld shellcodePoC.o -o shellcodePoC
./shellcodePoC

ou em C:

root@kitploit:~
gcc -m64 -fno-stack-protector -z execstack shellcode.c -o shellcode
./shellcode

Cada arquivo é comentado e explicado

Testes

Neste ponto, deve ser bastante óbvio que os hashes seriam diferentes a cada vez, mas vamos comparar os SSDEEP de 2 executáveis Linux do mesmo shellcode:

  • 96:GztTHyKGQh3lo6Olv4W4zS/2WnDf74i4a4B7UEoB46keWJl09:Gzty6VOlvqSTDflmNroh,
  • 96:GQtT23yKmFUh3lo6OlOnIrFS4rkoPPf74i4a4B7UEoB46keWJ5:GQtCGWVOlOWFSsPflmNroh,

Bem, há algo em comum, mas globalmente são 2 assinaturas diferentes. E quanto ao próprio shellcode:

  • 6:Cq8bnJYn4Xkm3qECaADATyEnT8snTiETiTCfhUaAP6mYGexCKdKZzX+rqVCKdKTc:xuJ0Zp2xRZof79G/KVyk/KTbA,
  • 6:vrg+T1RfLEQD/zD1DZzDJ3zDBfjDcDRJDULUwzWq0Cgk3g4zE/Yq0Cgk3gy12Ots:vLjjEszWCp3w/YCp3Nts,

Assinaturas quase totalmente diferentes para o mesmo shellcode metamorfoseado!

Na data da publicação, o executável foi detectado como shellcode por apenas 2 dos 53 antivírus (AVG e Ikarus) no virustotal, mas agora, ele simplesmente falha na análise.

malwr e cuckoo2 não veem nada suspeito.

Na perspectiva do reverser, o IDA também não verá nada.

O Radare2 mostraria as instruções reais apenas se montado pelo próprio montador, mas não detecta nenhuma criptografia ou atividade suspeita no executável.

Embora eu não tenha testado pessoalmente, acho que FortiSandbox, Sophos Sandstorm, Blue Coat, GateWatcher e seus derivados podem falhar bastante...

Resumindo

Basicamente, pode transformar o código de um script-kid (ou um conhecido) em um zero-day.

IDPS falhará porque é quase impossível criar uma assinatura e difícil fazer uma expressão regular ou análise heurística.

A maioria das sandboxes não usa instruções Intel AES-NI diretamente, então elas não executarão o código, então "está tudo bem" para elas, enquanto não está.

A única maneira de derrotar esse tipo de shellcode é usar um sandboxing adequado e/ou uma IA.

Claro que DEP/NX/CANARY/ASLR também devem funcionar.

Observe que toda a execução é feita em assembly puro, nenhum Python (ou OpenSSL) é necessário para a execução do shellcode, pois eu uso apenas instruções de assembly integradas, portanto é independente de sistema (certamente, você precisará montá-lo para cada um adaptando as instruções/opcodes, mas eles ainda são os mesmos).

Notas

Este ainda é um trabalho em andamento, implementarei mecanismos e PoCs para Windows e BSD/Mac em breve.

IDPSes e sandboxes são o passado.

"A tradição torna-se nossa segurança, e quando a mente está segura, ela está em decadência."

Jiddu Krishnamurti

Baixar ferramenta