Crypto in Malware / Reverse Engineering
Tip
Aprenda e pratique Hacking AWS:
HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP:HackTricks Training GCP Red Team Expert (GRTE)
Aprenda e pratique Hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Supporte o HackTricks
- Confira os planos de assinatura!
- Junte-se ao 💬 grupo do Discord ou ao grupo do telegram ou siga-nos no Twitter 🐦 @hacktricks_live.
- Compartilhe truques de hacking enviando PRs para o HackTricks e HackTricks Cloud repositórios do github.
Esta subseção ajuda quando você vê crypto/compression dentro de binaries e quer reconhecê-los rapidamente.
Identifying cryptographic / compression algorithms
Technique-first heuristics
- Muitos shifts/rotates, XORs e aritmética 32-bit em loops apertados.
- Lookup tables (S-boxes) em
.dataou geradas em tempo de execução. - Loops repetidos de
0x100iterações indicando RC4.
Windows crypto/compression APIs
CryptDeriveKey / CryptCreateHash
Se estes são usados, o segundo parâmetro é um ALG_ID:
.png)
Table: https://learn.microsoft.com/en-us/windows/win32/seccrypto/alg-id
RtlCompressBuffer / RtlDecompressBuffer
Geralmente indica compressão integrada do Windows (LZNT1, XPRESS, etc).
Constants & tables
Às vezes você pode identificar um hash/cipher procurando constantes (ou o primeiro dword das tabelas) online.
.png)
AES tables example:
.png)
RC4 recognition notes
RC4 é frequentemente reconhecível por:
- Dois loops de 256 iterações (init + KSA)
- Então um loop PRGA usando
% 256e XORando um keystream com os dados
Unpacking binaries
Technique
Packers transformam um binary de forma que a análise estática seja enganosa (junk code, encrypted sections, runtime unpacking). O objetivo é capturar o momento em que ele:
- aloca/descriptografa o código real na memória
- marca como executável
- salta para ele
Identifying packed binaries
- Falta de strings (ou apenas strings do packer)
- Muitas strings sem xrefs (packers comerciais)
- Use ferramentas de packer-ID:
- PEiD
- Exeinfo PE
Basic recommendations
- Comece a análise de baixo para cima; unpackers frequentemente saltam tarde.
- Procure padrões
JMP/CALL regou truques de stack (push addr; retn). - Coloque breakpoint em
VirtualAlloc/VirtualProtecte rastreie regiões RWX. - Uma explosão repentina de strings após um jump frequentemente indica que você alcançou código desempacotado.
- Faça dump da memória e corrija headers com ferramentas como PE-bear.
Tip
Aprenda e pratique Hacking AWS:
HackTricks Training AWS Red Team Expert (ARTE)
Aprenda e pratique Hacking GCP:HackTricks Training GCP Red Team Expert (GRTE)
Aprenda e pratique Hacking Azure:
HackTricks Training Azure Red Team Expert (AzRTE)
Supporte o HackTricks
- Confira os planos de assinatura!
- Junte-se ao 💬 grupo do Discord ou ao grupo do telegram ou siga-nos no Twitter 🐦 @hacktricks_live.
- Compartilhe truques de hacking enviando PRs para o HackTricks e HackTricks Cloud repositórios do github.
HackTricks

