Kognitivní inteligence pomáhá v boji proti polymorfnímu malwaru

18. 1. 2019
Doba čtení: 3 minuty

Sdílet

Kyberútočníci neustále zdokonalují metody, jak uniknout detekci. Ochrana založená na signaturách a běžné statické analýze selhává při použití balíčkovačů, obfuskátorů, polymorfismu nebo metamorfismu.

Na článku se dále podíleli Petr Černohorský, Harry Nayyar a Danila Khikhlukha, bezpečnostní experti společnosti Cisco Systems.

V psychologii se výrazem „kognice“ označuje souhrn operací a pochodů, jejichž prostřednictvím si člověk uvědomuje a poznává svět i sebe samého. V kybernetické bezpečnosti pomáhá aplikace principů kognice, na základě pozorování jednotlivých škodlivých událostí, získat hlubší porozumění charakteru hrozby. Tento proces se postupně zdokonaluje díky průběžnému učení. Cílem je zefektivnit odhalování nových nebo morfujících hrozeb a zjednodušit reakci na bezpečnostní incidenty.

Podívejme se, jak dnes vypadají každodenní úkoly bezpečnostního týmu:

  • kontrola neustále rostoucího množství podezřelých událostí z mnoha různých bezpečnostních nástrojů,
  • prvotní posouzení, zda anomálie vyžaduje bližší zkoumání, nebo ji lze ignorovat,
  • třídění a přiřazování priorit.

Všechny tyto činnosti závisí na procesech, technologiích a znalostech, jaké má konkrétní bezpečnostní tým k dispozici. Úvodní rozhodovací proces má přitom zásadní význam – chyba v úsudku může znamenat opomenutí závažné bezpečnostní události nebo naopak ztrátu času věnovaného zkoumání falešně pozitivního nálezu.

Automatizovat tyto činnosti pomáhá kognitivní inteligence. Tato technologie vyhodnocuje telemetrická data z různých zdrojů a poskytuje přesné, do kontextu zasazené informace specifické pro dané prostředí. Tyto informace potom ve spojení s globální mapou rizikových destinací a chování umožňují spolehlivě identifikovat různé varianty paměťově rezidentního škodlivého softwaru, polymorfní malware s odlišnými binárními soubory a obecně jakýkoli inovativní malware, který se snaží uniknout detekci tradičními metodami.

Ve výsledku taková automatizace zkracuje dobu, kterou je nutné vynaložit na podrobné zkoumání událostí pro potvrzení, zda došlo k narušení bezpečnosti, stanovení rozsahu a zahájení protiopatření. V jistém smyslu algoritmy kognitivní inteligence napodobují ruční vyhledávání hrozeb u podezřelých událostí.

Odhalují kombinace jevů, které svědčí o aktivitě škodlivého softwaru podobným způsobem, jakým by postupoval analytik – od relativně významných indikátorů z jednoho datového souboru postupuje k dalším dostupným datovým souborům. Každý takový krok může znamenat další důkaz, například o anomálii chování potvrzující hypotézu infekce. Nebo se naopak předpoklad narušení bezpečnosti ukáže jako neopodstatněný a zkoumání může být rychle ukončeno, případně později znovu obnoveno, jsou-li k dispozici nová data.

Probabilistické šíření hrozeb

Jedním z algoritmů kognitivní inteligence, se kterým se můžeme setkat v bezpečnostních řešeních, je tzv. probabilistické šíření hrozeb. Tento algoritmus je určený ke zvyšování počtu zpětně potvrzených vzorků škodlivého softwaru (tedy zbraní užívaných k útokům) i počtu prokázaných škodlivých domén (tj. infrastruktury užívané útočníky).

Graf probabilistického šíření hrozeb

Algoritmus monitoruje síťovou komunikaci od jednotlivých instancí malwaru (každá reprezentovaná kontrolním součtem hash pro každý jednotlivý soubor se škodlivým kódem) směrem na internetové servery a sestavuje graf pozorovaných spojení. Cílem je spolehlivě identifikovat rodiny polymorfního malwaru a dosud neznámé škodlivé domény na základě částečné znalosti některých již potvrzených hashí a domén. Klíčovou roli hraje skutečnost, že autoři škodlivého softwaru mají tendenci opakovaně využívat tutéž řídicí (C2) infrastrukturu. Domény C2 proto často zůstávají totožné pro všechny varianty polymorfního malwaru. Zároveň se nestává, že by přístup k takovým doménám sloužil neškodným účelům.

Pokud se tedy například neznámý soubor připojuje ke známé škodlivé doméně, existuje jistá míra pravděpodobnosti, že je daný vzorek škodlivý. Stejně tak existuje určitá pravděpodobnost, že neznámá doména, k níž se připojuje škodlivý soubor, je také škodlivá. K potvrzení takových předpokladů slouží statistická data o doménách včetně četnosti přístupů, typů souborů apod. Algoritmus dokáže podle jediného škodlivého souboru identifikovat desítky, ne-li stovky dalších binárních souborů náležících do téže rodiny hrozeb.

Statická analýza souborů

Jednou z klíčových metod při boji proti polymorfnímu a metamorfnímu malwaru je statická analýza. Tyto algoritmy zkoumají různé artefakty souborů a klasifikují je jako škodlivé nebo jako dosud neznámé. Statická analýza využívá techniky strojového učení, kdy porovnává zjištění s referenčními daty.

bitcoin_skoleni

Výsledky slouží pro ochranu zaměřenou do budoucna – aktivní klasifikaci souborů, které budou pravděpodobně v budoucnu rozpoznány jako potvrzený malware. V případě implementace tohoto algoritmu v bezpečnostních řešeních probíhá proces učení klasifikátoru statické analýzy souborů v cloudu, přičemž je dbáno na eliminaci vychýlení a optimalizaci datového souboru pro vyvážené zastoupení různých rodin a kategorií škodlivého softwaru. 

Tak jako se neustále vyvíjí kybernetické hrozby, probíhá vytrvale i vývoj nových algoritmů kognitivní inteligence, jejichž smyslem je zdokonalit detekci škodlivého softwaru. Přínos takové automatizace však spočívá nejen v lepší ochraně proti stále důmyslnějším hrozbám, ale také v kompenzaci přetrvávajícího nedostatku kvalifikovaných pracovníků výrazným navýšením efektivity jejich práce.

Autor článku

Jevgenij Mirolyubov se věnuje analýze pokročilých kybernetických hrozeb ve Výzkumném a vývojovém centru společnosti Cisco Systems v Praze.