Recomposer – Altera aleatoriamente os arquivos do Win32 / 64 PE para fazer upload ‘mais seguro’ para sites de malware e sandbox

Você já teve a sensação não tão segura de enviar seus binários de malware para o VirusTotal ou outros sites de antivírus, porque você pode procurar binários por hashes? (Exemplo: https://github.com/mubix/vt-notify )
Sinta-se um pouco mais seguro com o Recomposer! * O
Recomposer pegará seu binário e fará o seguinte aleatoriamente:
- Mude o nome do arquivo
- Alterar os nomes das seções
- Alterar os sinalizadores de seção
- Número aleatório de injeção de cinco tipos diferentes de nops em cada caverna de código disponível com mais de 20 bytes de comprimento
A propósito, seu arquivo ainda será executado, então faça o upload! *
Suporta arquivos win32 / 64 PE !!
Dois modos:
- Manual: Funciona como um editor de PE, altera nomes de seções e sinalizadores
- Auto: altera aleatoriamente o binário
Testado criando 11200 amostras de um binário. Resultados:
- Sem colisões de hash
- A porcentagem de ssdeep correspondente ao arquivo original variou de 94% a 77%
Uso:
Modo Automático:
./recomposer.py -f live.sysinternals.com/Tcpview.exe -a
Old file name: live.sysinternals.com/Tcpview.exe
New file name: zYmycO4NO2LYW.exe
[*] Checking if binary is supported
[*] Gathering file info
1 Section: .text | SectionFlags: 0x60000020
2 Section: .rdata | SectionFlags: 0x40000040
3 Section: .data | SectionFlags: 0xc0000040
4 Section: .rsrc | SectionFlags: 0x40000040
[*] Changing Section .text Name
[*] Changing Section .rdata Name
[*] Changing Section .data Flags
[*] Changing Section .data Name
[*] Changing Section .rsrc Name
Updated Binary:
updatedfile/zYmycO4NO2LYW.exe
[*] Checking if binary is supported
[*] Gathering file info
1 Section: .mhz | SectionFlags: 0x60000020
2 Section: .p1k | SectionFlags: 0x40000040
3 Section: .FSr0U | SectionFlags: 0xd0000443
4 Section: .q2X | SectionFlags: 0x40000040
Writing to log_recomposer.txt
Você pode ver este aviso:
[!] Warning, .text section hash is not changed!
[!] No caves available for nop injection.
O que significa que o hash da seção .text será igual ao arquivo original e poderá ser pesquisado (na Web) assim que o Google indexar os resultados do VT (se você fizer o upload do arquivo, é claro). Se isso acontecer, a codificação upx do arquivo recomposto deve resolver esse problema (a menos que o arquivo já esteja codificado upx).
Após a conclusão do recomposer, seu arquivo estará no diretório updatedfile. Faça o upload para o seu serviço de sandbox demalware favorito !
Modo Manual:
Um simples editor de PE:
./recomposer.py -f live.sysinternals.com/Tcpview.exe -m
[*] Checking if binary is supported
[*] Gathering file info
[?] What sections would you like to change:
1 Section: .text | SectionFlags: 0x60000020
2 Section: .rdata | SectionFlags: 0x40000040
3 Section: .data | SectionFlags: 0xc0000040
4 Section: .rsrc | SectionFlags: 0x40000040
Section number:1
[-] You picked the .text section.
[?] Would you like to (A) change the section name or (B) the section flags? b
[-] You picked: b
=========================
[*] Current attributes:
.text | 0x60000020
[-] IMAGE_SCN_MEM_READ, IMAGE_SCN_MEM_EXECUTE
[-] IMAGE_SCN_CNT_CODE
=========================
[*] Commands 'zero' out the flags, 'help', 'write', or ('exit', 'quit', 'q', 'done')
[*] Use 'write' to commit your changes or 'clear' to start over.
[?] Enter an attribute to add or type 'help' or 'exit':
[...]
Basta seguir o menu e seus resultados estarão no diretório updatedfile como change.filename.exe ou qualquer que seja a saída que você escolheu ao usar o sinalizador -o.
Se você está confuso sobre onde estão seus arquivos, basta olhar em log_recomposer.txt para obter a localização e os hashes dos arquivos alterados:
filename|filename_hash|changedfile|changedfile_hash
psinfo.exe|ae1554f2c1b1454a91c5610747603824|updatedfile/8dV5.exe|791ff4d4b2010accebc718afda58f83a
psexec.exe|d0df366711c8b296680002840336b6fd|updatedfile/udi6ieIVFi.exe|6fafa108d697a46a271a918436e60cd5
live.sysinternals.com/Tcpview.exe|9aa5a93712c584acdcaa7eef9d25ef4d|updatedfile/zYmycO4NO2LYW.exe|fd984b833443c457668a480a37cf9904
live.sysinternals.com/Tcpview.exe|9aa5a93712c584acdcaa7eef9d25ef4d|updatedfile/change.Tcpview.exe|c43eeec089a3e4f9e6fd0218a27ca4c2
* O Recomposer não impede que o malware notifique o proprietário do malware de sua execução binária fora de um ambiente esperado. **
** IE: Seu ambiente. ***
*** Mas se você não se importa, vá em frente!