13. Malware a jeho analýza

Co se po vás bude chtít?

Malware obecně

  • Definice malware
  • Základní typy malware a přídružené termíny (umět popsat jejich fungování):
    • backdoor - skrytý přístup do systému
    • botnet - síť kompromitovaných zařízení
    • rootkit - skrývá přítomnost malware v systému
    • worm / virus - samoreplikující se malware
    • ransomware - šifrování dat s výkupným
    • spyware - sledování aktivity uživatele
    • adware - nechtěné reklamy
    • scam - podvodné schéma
    • spam - nevyžádaná komunikace
    • phishing - vylákání citlivých informací

Virtualizace pro bezpečnou analýzu malware

Důvody použití VM pro analýzu

  • Izolace - oddělení od hostitelského systému
  • Snapshoty - možnost vrácení do čistého stavu
  • Opakovatelnost - konzistentní prostředí pro analýzu
  • Kontrolované prostředí - možnost monitorovat veškerou aktivitu

Základní nastavení VM pro analýzu potenciálně škodlivého SW

  • Síťová izolace:
    • Host-only network / Internal network / No network
    • Odpojení od internetu nebo kontrolovaný přístup přes izolovanou síť
    • Fake network services pro simulaci internetového připojení
  • Snapshot před analýzou:
    • Vytvoření čistého snapshotu systému před spuštěním malware
    • Možnost rychlého návratu do bezpečného stavu
  • Základní bezpečnostní opatření:
    • Vypnutí shared folders mezi hostem a VM
    • Vypnutí clipboard sharing
    • Vypnutí drag & drop funkcí
  • Příprava monitorovacích nástrojů:
    • Nainstalované nástroje pro monitoring (Process Monitor, Wireshark, atd.)
    • Připravené skripty pro sběr dat

Rizika při analýze ve VM a ochrana

  • Detekce VM malwarem:
    • Malware může detekovat virtualizované prostředí a změnit chování
    • Anti-VM techniky: kontrola hardware, časování, artefakty virtualizace
    • Obrana: modifikace VM pro utajení virtualizace
  • VM escape (escapování z VM):
    • Zneužití zranitelností hypervizoru k úniku z VM
    • Potenciální kompromitace hostitelského systému
    • Obrana: aktualizace hypervizoru, síťová izolace
  • Šíření po síti:
    • Malware může útočit na další systémy v síti
    • Obrana: správná síťová izolace
  • Exploit kernelových zranitelností:
    • Zneužití shared resources (filesystem, kernel)
    • Obrana: aktualizovaný hypervisor a guest OS

Hypervisory vhodné pro malware analýzu

  • VirtualBox - open-source, uživatelsky přívětivý
  • VMware - profesionální řešení, také uživatelsky přívětivý
  • QEMU/KVM - výkonné Linux řešení, komplikovanější použití
  • Specializované sandbox prostředí (Cuckoo Sandbox)

Analýza spustitelných souborů

Statická analýza

  • Výpočet otisku binárky a konzultace online malware databází:
    • Hash (MD5, SHA-256) pro identifikaci
    • VirusTotal, malware bazaar, hybridanalysis
  • Strings - proč & jak?
    • Hledání textových řetězců v binárce
    • Odhalení IP adres, URL, příkazů, klíčů
    • Nástroj: strings (Linux), Sysinternals Strings (Windows)
  • Packery:
    • Komprese/obfuskace malware pro ztížení analýzy
    • Detekce: entropy analýza, signatury packerů
    • Nástroje: Detect It Easy (DIE), PEiD
  • Analýza použitých knihoven:
    • Staticky linkované knihovny - součást binárky
    • Dynamicky linkované knihovny - načítané při startu
    • Runtime linkované knihovny - načítané za běhu (dlopen)
    • Proč: odhalení funkcí, které malware používá
    • Jak: ldd (Linux), Dependency Walker (Windows)
  • Exportované a importované funkce:
    • Import table - funkce, které malware využívá z jiných knihoven
    • Export table - funkce, které malware poskytuje
    • Nástroje: objdump, readelf (Linux), PE Explorer (Windows)
  • Struktura spustitelných souborů:
    • PE (Portable Executable) - Windows:
      • Header: DOS header, PE header, Optional header
      • Sekce: .text (kód), .data (data), .rdata (read-only data), .rsrc (resources)
    • ELF (Executable and Linkable Format) - Linux:
      • Header: ELF header, Program headers, Section headers
      • Sekce: .text (kód), .data (data), .bss (neinicializovaná data), .rodata (read-only)
  • Binwalk - k čemu slouží:
    • Vyhledání embedded souborů a dat v binárce
    • Extrakce nalezených souborů
    • Použití: binwalk -e soubor (extrakce), binwalk soubor (vyhledání)

Dynamická analýza

  • Spouštění programů ve VM:
    • Setup: izolovaná VM s monitoring nástroji
    • Snapshot před spuštěním
    • Rizika: viz sekce o virtualizaci výše
  • Monitorování chování spuštěného programu:
    • Sledování: síť, systémová volání, filesystém I/O, registry
    PE soubory (Windows):
    • Process Monitor (procmon):
      • Monitoring registry, file system, network, process, thread aktivit
      • Kombinuje FileMon a RegMon
      • Real-time sledování operací
    • Process Explorer:
      • Pokročilý task manager
      • Zobrazení procesů, DLL, handlů, síťových spojení
      • Analýza running procesů
    • RegShot:
      • Porovnání registrů OS před a po spuštění
      • Odhalení změn provedených malwarem
      • Identifikace persistence mechanismů
    ELF soubory (Linux):
    • strace:
      • Sledování systémových volání
      • Zobrazení parametrů a návratových hodnot
      • Použití: strace ./program
    • ptrace:
      • System call pro debugging a tracing
      • Základ pro debuggery a monitoring nástroje
      • Umožňuje kontrolu a modifikaci běhu procesu

Odkazy na zdroje informací

Malware analýza

  • Practical Malware Analysis / mirror - Kniha popisující základní techniky používané při analýze malware

    Chapter 1 - Basic Static Techniques teaches ways to get information from an executable without running it.

    Chapter 2 - Malware Analysis in Virtual Machines walks you through setting up virtual machines to use as a safe environment for running malware.

    Chapter 3 - Basic Dynamic Analysis teaches easy-to-use but effective techniques for analyzing a malicious program by running it.

Virtualizace

Nástroje a sandbox prostředí

Připrav se na HAXAGONu

Docker:

  • Docker - Úvod
  • Docker - První kontejner
  • Docker - Images
  • Docker - Dockerfile
  • Docker - Volumes
  • Docker - Network

Nebezpečný internet:

  • Nebezpečný internet (úvod)
  • Phishing
  • Jak chránit svá zařízení
  • Bezpečný internet

Kryptografie:

  • OSINT úvod (sběr informací o malware)