facebook LinkedIN LinkedIN - follow
IT Security , IT Security

Automatizované útoky vyžadují automatizovanou obranu

aneb Jak umělá inteligence odhaluje hackery

Martin Rehák, Petr Somol


Na jedné straně je nenápadná kancelářská budova v Brazílii, na Filipínách, v Rusku nebo Číně, kde za počítačem sedí hacker, který chce získat citlivá data. Na té druhé se elitní IT expert snaží tyto snahy odrazit. Podobnou scénu jistě do svého filmu zakomponovala už pěkná řádka režisérů, skutečnost však dnes vypadá odlišně. Dnes spolu nesoupeří obránci a útočníci v souboji jeden na jednoho, ale algoritmy. Lidé je pouze navrhují a dohlíží na ně.


Prakticky každé nové bezpečnostní řešení dnes obsahuje inteligentní algoritmy umělé inteligence, které mají za úkol doplnit či nahradit lidské rozhodnuti. To je nezbytné pro ochranu napadených systémů v reálném čase. Pokročilé formy malwaru totiž využívají sofistikovaných technik, snaží se odlákat pozornost obránců a automatizují se. Rovnice je zde jednoduchá – čím automatizovanější jsou útoky, tím automatizovanější musí být i obrana.

I lehká nákaza může přerůst v likvidační škody

Útočníci dnes disponují mnohem lepšími možnostmi, jak zpeněžit výsledky své aktivity. Investují tak do pokročilejších technologií. V loňském roce jsme se například setkali s rekordní aktivitou kampaní využívajících ransomware, který se stal nejziskovějším typem malwaru. Riziko však představují i na první pohled méně nebezpečné typy. Jako příklad lze uvést vývoj adwaru. Zatímco dříve tento typ spíše než počítačový systém ohrožoval trpělivost uživatelů instalováním nechtěných toolbarů, zobrazováním reklamy a instalací jiných programů, nyní pozorujeme, že útočníci využívají známé nákazy k novým, mnohem silnějším útokům. Nenápadný adware se tak může stát základem mnoha dalších procesů a vést k cílené krádeži dat (zejména u firemních uživatelů) či k šíření ransomwaru (zejména u domácích uživatelů).

Jak se z malé nákazy stane velká, lze demonstrovat na šíření velmi nebezpečného exploit kitu DNSChanger, který napadá routery a umožňuje útočníkům ovládnout síťový provoz. Nedávno před jeho novou variantou byli díky CSIRT.CZ varování také čeští uživatelé. Klasická forma DNSChangeru se do systému dostane prostřednictvím trojanu Mamba. Mamba je malý, vysoce modulární malware postavený na jazyku Python. Má schopnost stáhnout další části škodlivého softwaru a exfiltrovat citlivé údaje, jako jsou přístupová hesla či informace o souborech v zařízení oběti. Infikování zařízení malwarem Mamba však přichází až ve druhé fázi útoku. A původ infekce? Během naší hloubkové analýzy jsme zjistili, že Mamba i DNSChanger se vyskytovaly pouze v zařízeních, která už před tím byla kompromitována adwarem či softwary typu PUA (Potentially Unwanted Application) a ad-injector. Příčinou druhé fáze byly aplikace jako Adware Multiplug, System Healer, YouTube Downloader a BrowseFox. 

Obr. 1
Obr. 1: Graf ukazuje počet zařízení infikovaných exploit kitem DNSChanger na jeden milion zařízení.


Když lidské kapacity nestačí, nastupuje strojové učení

Předchozí příklad ukazuje, že ani lehké nákazy nelze ignorovat. A v dnešní době se jich vyskytuje tolik, že není v lidských silách je monitorovat a reagovat na ně. Pokročilý malware navíc využívá diverzních technik a automatizace. Již dávno neplatí, že zaútočí na náhodná zařízení a pokusí se je infikovat. Pokročilé formy monitorují možné oběti a infikují například pouze jedno zařízení ze sta – to s nejnižší úrovní obrany, nebo to, které je potenciálně cenné. Zkrátka, jdou najisto a brání se tak předčasnému odhalení. Nejefektivnější odpovědí na tyto techniky je pak umělá inteligence využívající strojového učení, která dokáže identifikovat a propojit jednotlivé útoky a spolehlivě odhadnout riziko spojené s každým z nich.

Pojem strojové učení přitom není vůbec nový. Už v roce 1959 jej Arthur Samuel definoval jako „Obor studia, které umožňuje počítačům učit se, aniž by k tomu byly explicitně naprogramovány.“ A jeho využití v současné době roste rychleji než dříve. Algoritmy, na rozdíl od armády IT expertů, dokážou v krátkém čase monitorovat průběh nákazy a vybudovat celý informační kontext o tom, co se během útoku děje.

3 kroky k preciznějšímu algoritmu

Rozhodnout, zda je jedno konkrétní síťové spojení legitimní, nebo zda je způsobeno infekcí malwarem, je v případě pokročilých útoků velmi obtížné. K odhalení malwaru je třeba více informací, a proto je nutné pracovat s dlouhým vzorcem chování a vycházet z dat mnoha počítačů.

Z našeho dlouhodobého výzkumu vyplývá, že preciznost algoritmů ovlivňují 3 zásadní body:

  • Obrovský objem dat – Globální porovnávání dat umožňuje přesnější klasifikaci malwaru a větší pravděpodobnost odhalení útoku i případného průniku. Jednoduše řečeno: větší množství rozmanitých dat z dlouhého časového období pomáhá odhalit větší množství útoků.
  • Algoritmy učící se všem technikám – Algoritmy nezkoumají pouze malware, ale učí se i z legálních domén. Například reklamní kampaně, které se snaží překonat blokátory reklam, dnes využívají podobné postupy jako malware. Učí-li se algoritmy i z těchto postupů, mohou nalézt vzájemné odlišnosti a minimalizovat počet falešných poplachů. Skutečně pokročilý malware lze odhalit jen díky perfektní znalosti legitimního chování chráněných systémů.
  • Vzájemně propojené algoritmy se učí navzájem – Výhodu mají bezpečnostní řešení, která pracují s velkým počtem vzájemně propojených algoritmů, které se dokážou učit nejen z provozu sítě, ale i od sebe navzájem. Tím se zvyšuje jejich přesnost a schopnost odhalovat pokročilé hrozby. 
Obr. 2
Obr. 2: Graf znázorňuje celý proces odhalení hrozeb: od analýzy všech spojení až po detekci hrozeb a upozornění všech infikovaných zařízení.


Od deseti miliard requestů ke dvaceti tisícům hrozeb

Pro lepší demonstraci využití strojového učení je třeba se podívat, jak funguje celé řešení. V našem výzkumu využíváme několikavrstvého přístupu a různých technik strojového učení.

V první vrstvě hledáme anomální chování. Nutno podotknout, že denně zpracováváme 10 miliard reqestů, proto pro hlubší analýzu musejí projít tímto „sítem“. První vrstva se skládá ze dvou fází.

  • Fáze 1 se zaměřuje na detekci anomálií (Anomaly Detection). Skládá se ze několika desítek statistických detektorů, které se zaměřují na popis normálních chováni. Každý z detektorů porovnává legitimní provoz sítě s aktuálně zkoumaným a chování přiděluje určité skóre – čím vyšší, tím více se chování vymyká vzorům z minulosti a je považováno za anomální. Následně se detektory spojují do skupin zvaných „ensembles“. Ty využívají předem definované nebo právě strojově naučené kombinace jednotlivých detektorů. Předem definované kombinace umožňují efektivní detekci známého škodlivého softwaru, zatímco strojově naučené kombinace zvyšují efektivitu systému.
  • Fáze 2 se nazývá Trust Modeling. Funguje jako dlouhodobá paměť a eliminuje chybné anomální verdikty detektorů. Jinými slovy, vyhodnotí-li detektor chování jako anomální, ve druhé fázi je zkontrolováno, zda se přesto nejedná o legitimní provoz. Tato fáze výrazně snižuje počet falešných hlášení.

V této vrstvě se zpracuje většina spojení a do té druhé postupuje pouze méně než 1 % vysoce anomálního provozu.

Druhá vrstva vysvětluje vysoce anomální provoz detekovaný v té první. Stejně jako před tím i tuto vrstvu rozdělujeme na dvě fáze:

  • Fáze 1 má název Event Classification a je tvořena několika stovkami klasifikátorů. K jejich neustálému zpřesňování opět využíváme různých technik strojového učení – lineární, nelineární i víceúrovňové modely. Každý klasifikátor se zaměřuje na specifickou část anomálního chování a škodlivého provozu: od aktualizací softwaru, přes exfiltrační chování až po command and control komunikaci. Klasifikátory dokážou upozornit na specifické indikátory kompromitované sítě s přesností 90 až 100 %.
  • Fáze 2 (The Entity & User Modelling) navazuje anomální provoz na konkrétní zařízení. Jakmile jsou v tomto zařízení zjištěny škodlivé incidenty, je vygenerováno automatické upozornění.

Třetí vrstva už má jen jednu fázi - Relationship Modeling. Ta porovnává škodlivé chování s provozem všech sítí po celém světě. Může tak ihned po odhalení nového typu malwaru odeslat varování do všem klientům, kteří byli napadeni stejnými útočníky. Zjištěné incidenty pak dělíme do dvou kategorií – Potvrzené hrozby a Detekované hrozby. Potvrzené hrozby, kterých je většina, identifikujeme s více než 99 % přesností. Mezi Potvrzené hrozby zahrnujeme již známé druhy malwaru, u kterých dokážeme identifikovat útočící organizaci, pravděpodobnou škodu a poskytnout i informaci o konkrétních souborech, které zákazník najde na infikovaném stroji. Detekované hrozby představují specifické incidenty zaměřené na konkrétní organizace a typicky sem patří Zero-Day útoky a další velmi pokročilé či nové hrozby.

Přínos strojového učení je i v možnosti „zapnout stroj času“, neboli aplikovat nové poznatky na provoz v minulosti. Zjištění nového typu malwaru tak neznamená jen to, že příště už na něj budeme připraveni. Můžeme díky tomu podniknout patřičné kroky i u uživatelů, kteří byli napadeni dříve a nevěděli o tom.

Martin Rehák, Petr Somol
Autoři článku pracují jako Principal Engineer a Research Manager ve společnosti Cisco.
Chcete získat časopis IT Systems s tímto a mnoha dalšími články z oblasti informačních systémů a řízení podnikové informatiky? Objednejte si předplatné nebo konkrétní vydání časopisu IT Systems z našeho archivu.