Jak detekovat bezsouborový malware a chránit vaši organizaci

  • Bezsouborový malware běží primárně v paměti a zneužívá legitimní procesy, čímž obchází mnoho antivirových programů založených na signaturách.
  • PowerShell, WMI, registr systému Windows a dokumenty s makry jsou oblíbenými nástroji a vektory pro nasazení a údržbu těchto typů hrozeb.
  • Efektivní detekce vyžaduje monitorování chování procesů, událostí WMI, používání skriptů a pokročilého protokolování, ideálně prostřednictvím řešení EDR.
  • Prevence kombinuje školení, omezení maker a skriptů, neustálé aktualizace a bezpečnostní řešení schopná analyzovat paměť a síťový provoz.

Jak detekovat bezsouborový malware

Bezsouborový malware se stal jednou z největších starostí bezpečnostních týmů a systémových administrátorů. Na rozdíl od tradičního malwaru se nespoléhá na spustitelné soubory uložené na disku, ale nachází se téměř výhradně v paměti a využívá legitimní systémové procesy a nástroje. To znamená, že mnoho tradičních antivirových programů, které stále primárně prohledávají soubory na disku, ho ani nezjistí.

Aby toho nebylo málo, útočníci kombinují bezsouborový malware se sociálním inženýrstvím, exploity a administrativními nástroji, jako je PowerShell, WMI nebo skripty Office. Výsledkem je vysoce nenápadný typ útoku, ideální pro špionážní kampaně, krádeže přihlašovacích údajů, ransomware nebo dlouhodobý laterální pohyb v rámci podnikové sítě, který často nezanechává prakticky žádnou forenzní stopu.

Co přesně je bezsouborový malware?

Když mluvíme o bezsouborovém malwaru, máme na mysli škodlivý kód, který pro svou funkci nepotřebuje do souborového systému přidávat nové spustitelné soubory . Útočník obvykle vkládá svůj datový soubor do procesů, které již běží, nebo využívá skriptovací a automatizační nástroje v samotném operačním systému k provedení své logiky v paměti RAM počítače.

Místo uvolnění typického škodlivého souboru .exe se tento typ hrozby zaměřuje na poškození důvěryhodných aplikací (PowerShell, WMI, prohlížeče, aplikace Office atd.) nebo zneužití vložených funkcí v dokumentech (makra, DDE, zranitelnosti v čtečkách PDF). Tímto způsobem se škodlivý kód spouští prostřednictvím procesů, které se mnoha bezpečnostním řešením jeví jako naprosto legitimní.

Přímým důsledkem je, že neexistuje žádný „podivný soubor“ ke skenování ani zjevný podpis k porovnání. Kód se načte do paměti, spustí, vykoná svou práci (krádež dat, nasazení zadních vrátek, šifrování souborů, přesun po síti atd.) a často po restartu zmizí, pokud útočník nenastavil nějaký mechanismus perzistence.

Je důležité si ujasnit, že ne všechny útoky bez použití souborů zanechávají na disku 100% stopu. Někdy je zde počáteční dokument, skript nebo exploit, ale klíčové chování (nebezpečná část) se spouští přímo z paměti a pokouší se eliminovat nebo minimalizovat stopy v souborovém systému.

Reprezentace útoku bez souborů

Charakteristické rysy a proč je tak obtížné je odhalit

Jednou z charakteristických vlastností bezsouborového malwaru je jeho čistě spouštění v paměti , což ztěžuje detekci skrytých procesů a rootkitů . Škodlivý obsah je vstřikován do existujících procesů nebo interpretován ze skriptu a zůstává v paměti RAM, dokud je počítač zapnutý. Mnoho detekčních mechanismů založených na disku si jednoduše nevšimne, co se děje.

Další důležitou vlastností je, že má obecně omezenou perzistenci, pokud se nepoužije nějaký další trik . Protože je paměť RAM volatilní, tato část útoku zmizí po restartu systému. Útočníci si to uvědomují, a proto často doplňují aspekt bezsouborového přístupu technikami, jako je použití registru systému Windows, plánované úlohy nebo předplatné WMI, aby zajistili, že přístup bude zachován v průběhu času.

Tento typ útoku se navíc opírá o koncept „žití ze země“ : využívá nástroje, které jsou již součástí systému – PowerShell, WMI, .NET, utility systému Windows podepsané společností Microsoft – namísto zavádění externích binárních souborů. To útočníkovi umožňuje splynout s legitimní správou prostředí, což je ve velkých podnikových sítích ideální pro to, aby zůstal měsíce nepozorován.

To vše znamená, že řešení založená na signaturách a whitelistech mají poměrně omezenou roli. Pokud je antivirus navržen tak, aby identifikoval podezřelé spustitelné soubory nebo blokoval neoprávněné programy, ale útok je prováděn v PowerShellu, Wordu nebo systémovém procesu, manévrovací prostor se drasticky zmenší.

A konečně, forenzní artefakty, které po sobě zanechává bezsouborový malware, jsou obvykle omezené nebo velmi nenápadné. Někdy mluvíme jen o podivném klíči registru, nemístném předplatném WMI nebo neobvyklých příkazech v protokolech PowerShellu. Bez agresivní politiky protokolování a aktivního monitorování se tyto signály v šumu ztratí.

Vstupní vektory a typický provoz bezsouborového útoku

Ačkoli se „bezsouborová“ část zaměřuje na paměť, útok téměř vždy začíná stejně jako jakýkoli jiný útok : s počátečním vektorem, který otevírá dveře protivníkovi. Nejběžnějšími vektory zůstávají e-mail a web, často doprovázené sociálním inženýrstvím nebo zneužíváním zranitelností.

Je velmi běžné, že oběť obdrží dokument Office obsahující makra , soubor PDF se škodlivým JavaScriptem nebo odkaz v phishingovém e-mailu, který vede na napadený web. Po otevření nebo kliknutí dokument spustí makro nebo zneužije zranitelnost, spustí skript PowerShellu nebo příkaz WMI, který stáhne a spustí škodlivý datový soubor přímo do paměti.

V jiných scénářích útočník použije ukradené přihlašovací údaje pro přístup k počítači a odtud spouští administrátorské skripty, které načtou malware do paměti, aniž by na disk uložily soubor .exe. Existují také případy, kdy je zneužita síťová zranitelnost – například v protokolu SMB – což umožňuje vložit zadní vrátka přímo do jádra nebo systémových procesů.

Jakmile je systém uvnitř, typický tok dat prochází několika fázemi: počáteční přístup, zajištění perzistence (pokud je to nutné), krádež dat nebo jejich laterální přesun a nakonec exfiltrace nebo spuštění dalšího obsahu (například ransomwaru). V každé z těchto fází lze techniky bez souborů kombinovat s jinými typy malwaru a vytvářet tak vysoce komplexní kampaně.

Některé skupiny hrozeb masivně zneužívají webové shell servery , kde HTTP požadavky obsahují škodlivé komponenty, které jsou vkládány do paměti, aniž by byly zapsány na disk. Byly také pozorovány útoky na finanční instituce, kde byl PowerShell použit k manipulaci s legitimními procesy a krádeži informací, aniž by po sobě zanechal podezřelé spustitelné soubory, které by antivirový software mohl snadno detekovat.

Bezsouborové zabezpečení proti malwaru

Nástroje a techniky nejpoužívanější při útocích bez souborů

V ekosystému Windows útočníci neustále používají PowerShell kvůli jeho výkonu a flexibilitě. Je to velmi komplexní skriptovací jazyk s přístupem k .NET, WMI, registru, síťovým službám, souborům a prakticky ke každému koutku systému. S pouhými několika řádky kódu si můžete stáhnout kód z internetu, spustit ho v paměti a vymazat všechny viditelné stopy.

Další klíčovou součástí je WMI (Windows Management Instrumentation) spolu s jeho standardním ekvivalentem CIM. Tato rozhraní umožňují útočníkům dotazovat se a upravovat řadu systémových objektů, spouštět akce v reakci na konkrétní události a vzdáleně spravovat počítače. Útočníci je používají jak pro post-exploitační, tak pro persistenci, s využitím filtrů událostí a uživatelů, kteří provádějí příkazy, když jsou splněny určité podmínky.

Rozhraní .NET Framework (nebo .NET Core) slouží jako technické lešení, na kterém se mnoho z těchto technik spoléhá. Prostřednictvím jeho knihoven může malware interagovat s komponentami WMI, COM, DCOM a dalšími, podobně jako správce používající legitimní skripty.

Za zmínku stojí také zneužití registru systému Windows jako úložiště kódu a mechanismu spouštění. Při těchto útocích se počáteční spustitelný soubor může po zapsání svého obsahu do registru samozničit, takže škodlivá komponenta přežije bez zjevného souboru a později se aktivuje z konkrétních klíčů, pokud jsou splněny určité podmínky.

Kromě toho všeho útočníci používají utility podepsané společností Microsoft , jako jsou rundll32, mshta a další systémové binární soubory, které umožňují spouštění skriptů nebo DLL. Vzhledem k tomu, že se jedná o důvěryhodné komponenty, jejich plošné blokování by mělo vážný dopad na běžný provoz a obranu by dostalo do nepříjemné pozice.

Typy malwaru a kampaní, které zneužívají techniky bez souborů

V kategorii bezsouborových útoků nacházíme několik útočných metod, které zneužívají tuto schopnost pracovat v paměti nebo se spoléhat na minimální systémové prostředky. Jednou z nejznámějších je rezidentní malware , který k uložení svého kódu využívá paměť legitimního procesu systému Windows. Tento kód může zůstat nečinný, dokud není splněna určitá podmínka, načež se aktivuje bez zanechání stopy na disku.

Další variantou je malware, který se spoléhá na registr systému Windows . Zde je škodlivý obsah uložen jako data v registru a spouštěn skripty nebo procesy, které tento obsah čtou a spouštějí při spuštění systému nebo při určité události. Spustitelný soubor, který útok inicioval, mohl již dávno zmizet, což brání forenznímu vyšetřování.

Použití ukradených přihlašovacích údajů dokonale odpovídá tomuto přístupu. Jakmile se útočník přihlásí s legitimním uživatelským účtem, může spouštět skripty v paměti, umisťovat úryvky kódu do registru nebo předplatného WMI a pohybovat se po síti maskovaný jako běžný administrativní provoz. Ve velkých prostředích je odlišení tohoto provozu od legitimních IT operací poměrně náročné.

Zahrnuty jsou i varianty ransomwaru bez souborů , u kterých se datová část šifrující data spouští přímo z paměti, někdy pomocí PowerShellu nebo jiného systémového nástroje. V těchto případech k detekci obvykle dochází až poté, co jsou soubory již zašifrované, protože do té doby byly viditelné pouze ty procesy, které se jeví jako důvěryhodné.

Objevují se také tzv. exploit kity , což jsou sady nástrojů, které po počátečním průniku – často prostřednictvím škodlivého odkazu – detekují zranitelnosti v počítači oběti a vytvářejí vlastní exploity. Jakmile se dostanou dovnitř, načtou svůj kód do paměti a spoléhají se na skripty, aby si udržely kontrolu a zvýšily oprávnění.

Dopad na společnosti a omezení tradičních obranných opatření

Pro organizace je hlavním problémem bezsouborového malwaru to, že pouhé blokování podezřelých spustitelných souborů nestačí k zaručení bezpečnosti. Nelze jen tak bezstarostně zakázat PowerShell, blokovat všechny dokumenty pomocí maker nebo zakázat používání WMI, aniž byste narušili legitimní administrativní procesy, automatizaci úloh nebo každodenní produktivitu.

Zároveň antivirové programy zaměřené na signatury souborů a whitelisty téměř nevidí. Útok využívá stejné komponenty, které systém a IT nástroje potřebují k fungování. Často ani neexistuje žádný zvláštní hash, který by se dal nahrát do cloudu dodavatele pro verdikt: kód již byl spuštěn z paměti.

Mnoho výrobců se pokusilo tento problém vyřešit částečným blokováním nebo záplatami , které problém plně nevyřeší: omezení používání PowerShellu, posílení maker Office, implementace cloudových ovládacích prvků, které se spoléhají na neustálé připojení atd. Útočníci se však naučili tyto překážky obcházet, například načítáním PowerShellu prostřednictvím knihoven DLL, zamlžováním skriptů nebo balením kódu do obrázků a dalších datových formátů.

Komerční tlak navíc vedl některá řešení k tomu, aby slibovala ochranu bez souborů, ale s přístupy, které selhávají, jako je statická analýza makro kódu nebo spoléhání se výhradně na reputaci známých skriptů. Vzhledem k tomu, že útočníci mohou své nástroje upravovat téměř podle libosti, přístup založený výhradně na signaturách nebo statických pravidlech má tendenci rychle zastarávat.

Kromě toho mnoho detekčních mechanismů na straně serveru nebo v cloudu prodlužuje latenci odezvy . Pokud agent na koncovém bodě musí čekat na vzdálené rozhodnutí, aby mohl jednat, stává se prevence v reálném čase komplikovanější, zejména proti extrémně rychlým útokům, jako jsou některé typy ransomwaru nebo síťových červů.

Jak detekovat bezsouborový malware: zaměřte se na chování

Hlavní ponaučení ze všech těchto případů je jasné: nejúčinnějším způsobem, jak lokalizovat bezsouborový malware, je sledovat, co procesy dělají , nikoli tolik, jaké soubory se na disku nacházejí, například pomocí nástrojů Process Explorer a VirusTotal . Ačkoli existují tisíce různých variant, repertoár podezřelého chování je v konečném důsledku mnohem omezenější než u potenciálně škodlivých binárních souborů.

Moderní řešení EDR a behaviorální platformy s umělou inteligencí monitorují systémová volání, argumenty příkazového řádku, přístup k registru, síťová připojení, vytváření podřízených procesů, úpravy skriptů a další. Z toho vytvářejí jakousi „historii“ každého řetězce provádění, což umožňuje identifikovat, kdy se legitimní proces stane zdrojem anomální aktivity.

Někteří výrobci to prezentují jako časovou osu událostí , která například ukazuje, jak uživatel otevře dokument Outlooku, jak tento dokument spustí makro, které spustí PowerShell s obfuskovanými argumenty, a jak se PowerShell pokouší stáhnout a spustit datovou část z internetu. I když na disku nejsou žádné podezřelé soubory .exe, korelace toku útoku činí zřejmým.

Tento přístup zaměřený na chování má výhodu v tom, že je nezávislý na vektoru . Nezáleží na tom, zda útok pochází z exploitu ve Flashi, makra ve Wordu nebo odkazu v e-mailu. Pokud je výsledkem proces, který začne šifrovat data, vkládat kód nebo komunikovat s velitelským a řídicím serverem, systém jej dokáže detekovat a zablokovat.

V kombinaci s možnostmi vrácení zpět vám to umožňuje nejen zastavit útok, ale také opravit systém Windows po závažné infekci , obnovit šifrované soubory, vrátit zpět úpravy registru nebo ukončit procesy spojené se škodlivým pracovním postupem. Z hlediska kontinuity provozu to představuje obrovský rozdíl ve srovnání s antivirem, který vás upozorní, až když je příliš pozdě.

Praktické strategie pro detekci souborů bez souborů v prostředí Windows

Kromě pokročilého řešení pro koncové body existuje několik technických opatření, která výrazně pomáhají při detekci důkazů o bezsouborovém malwaru v infrastruktuře. Prvním je přijetí agresivní politiky protokolování, zejména pokud jde o PowerShell a WMI.

Moderní verze PowerShellu umožňují podrobné protokolování provedených příkazů , sekvencí skriptů a použití určitých potenciálně nebezpečných parametrů, jako je například ExecutionPolicy Bypass. Analýza těchto protokolů a nalezení podezřelých vzorců – stahování z neznámých domén, načítání v paměti, zjevné zamlžování – může odhalit kampaně, které by jinak mohly zůstat nepovšimnuty.

Další obrannou linií je pravidelná kontrola úložiště WMI , zda neobsahuje neobvyklé odběry nebo filtry událostí. Pomocí příkazů pro řešení potíží PowerShellu můžete vypsat třídy, jako například __EventFilter, CommandLineEventConsumer nebo __FilterToConsumerBinding, a zkontrolovat všechny prvky, které neodpovídají legitimním úlohám správy.

Je také vhodné zkontrolovat naplánované úlohy a klíče registru spouštěných systémů , zejména ty, které spouštějí skripty nebo interprety, jako je PowerShell, cscript nebo wscript. Mnoho útoků bez souborů používá tyto mechanismy k načtení kódu z paměti, samotného registru nebo vzdáleného serveru při každém spuštění systému nebo přihlášení uživatele.

V pokročilejších případech je vhodné použít nástroje jako Sysmon od Sysinternals ke generování velmi detailních událostí souvisejících s vytvářením procesů, síťovými připojeními, úpravami registru atd. a poté je exportovat do SIEM nebo centralizované analytické platformy. Odtud můžete vytvářet pravidla, která vás upozorní na typické chování známých kampaní, nebo používat utility jako RootkitRevealer k detekci trvalých artefaktů.

Nejlepší postupy pro prevenci infekcí malwarem bez souborů

V oblasti prevence zůstává prvním pilířem minimalizace klasických vektorů infekce : zabránění uživateli ve spouštění nebezpečných dokumentů, ztížení zneužití zranitelností a omezení laterálního pohybu v případě narušení.

Je téměř povinné zakázat nebo omezit makra Office, kdykoli je to možné, ideálně prostřednictvím objektů skupinových zásad (GPO). Makra by měla být povolena pouze v případě skutečné potřeby a pokud možno digitálně podepsána. Stejný princip platí pro další aktivní obsah, jako jsou DDE nebo ovládací prvky ActiveX v dokumentech.

Je také důležité mít řešení síťové bezpečnosti , která monitorují provoz a sledují exploity, exploit kity a anomální chování. Systémy prevence narušení (IPS) a technologie jako Network Attack Prevention dokáží zachytit mnoho útoků dříve, než datové části bez souborů dosáhnou koncového bodu.

Na úrovni koncových bodů je zásadní nasadit nástroje schopné analyzovat paměť a zjišťovat škodlivé chování , nejen soubory na disku. Pokročilé enginy pro skenování RAM dokáží identifikovat typické vzorce vkládání kódu, shellcode, ransomwarové datové části nebo zadní vrátka skrytá v systémových procesech.

A konečně, nic z toho nefunguje bez dobré základní hygieny : pravidelné používání bezpečnostních záplat, udržování aplikací a operačních systémů v aktuálním stavu, segmentace sítě pro ztížení laterálního pohybu, implementace vícefaktorové autentizace (MFA) a důsledné kontroly účtů s vysokými oprávněními.

Kombinace všech výše uvedených faktorů spolu se skutečnou bezpečnostní kulturou – průběžné školení , simulace phishingu a jasné postupy reakce na incidenty – je to, co rozlišuje mezi organizací, která odhalí útok bez použití souborů v jeho raných fázích, a organizací, která zjistí, že její servery jsou již šifrované nebo že došlo k úniku dat.

Zabezpečení ve Windows 11
Související článek:
Hlavní tajemství pro zlepšení zabezpečení ve Windows 11

Přidat jako preferovaný zdroj v Googlu