Hlavní navigace

Alexis Dorais-Joncas (ESET): Útočníci cílí na firmware počítačů, který správci příliš neaktualizují

Jan Sedlák

Bezpečnostní firma ESET nedávno objevila škodlivý kód LoJax, který napadá UEFI. Slouží jako dlouhodobý vyčkávací backdoor v prostoru, který firmy obvykle moc nehlídají.

Doba čtení: 7 minut

Slovenský ESET nedávno přišel s popisem škodlivého kódu LoJax, který dokáže infikovat UEFI, tedy nástupce BIOSu. Firma také informovala, že tento objev lze zneužít k reálnému útoku. Za LoJaxem pravděpodobně stojí skupina Sednit, která je známá také pod názvy jako Fancy Bear či APT28 a jsou jí přisuzovány předvolební útoky v USA a další politicky motivované akce.

Alexis Dorais-Joncas je jedním z hlavních výzkumníků ESETu, kteří LoJax objevili a analyzovali. V rozhovoru pro Lupu popisuje, jak funguje, proč je třeba mít o rizicích kolem UEFI povědomí a jak zhruba Sednit operuje.

Podrobný technický popis, jak LoJax funguje, ukazujete v publikovaném dokumentu (PDF). Mohl byste jeho princip shrnout?

Kód testuje různé konfigurace v rámci firmwaru, aby zjistil, jestli jsou různé bezpečnostní prvky vypnuté, zapnuté, nebo špatně nastavené. Když je některý z těchto prvků vypnutý, využije ho jako vstupní bod pro „write“ přístup k paměti.

Když tyto kroky selžou, pokusí se najít „race condition“ zranitelnost v bezpečnostním mechanismu zvaném BIOS Lock Enable (BLE). Začne se snažit zapisovat jedničky a nuly a dostane se k tomu, že tento mechanismus deaktivuje. To mu dá plný přístup do paměti a umožní zapsat „image“ s UEFI rootkitem do paměti UEFI. U napadeného systému je pravděpodobné, že je špatně nastavený firmware. Nebo jde o starý systém, který je stále zranitelný v rámci popisovaného BLE.

Jediným řešením je přehrát firmware?

Přesně. Když chcete získat přístup, je nutné obejít několik bezpečnostních mechanismů. Není zde jednotný přístup, jak se zbavit veškeré „infekce“. Každý hardwarový výrobce svůj hardware implementuje jinak, takže v současné době prozatím neexistuje jiný způsob než kompletně přehrát UEFI firmware. V ESETu teď hodně řešíme, jak a zda jde tohle vyřešit.

Pro firmy by přehrávání většího množství počítačů muselo znamenat docela náročný proces.

Určitě. Je třeba mít určité technické znalosti. Velice jednoduše lze počítače poškodit. Třeba když se použije špatný image, když během zapisování vypadne elektřina a podobně. Stejně tak chybí jednoduché způsoby pro centrální přehrávání UEFI firmwaru na větším množství přístrojů. Což je ostatně důvodem toho, proč řada počítačů nemá aktualizované UEFI. Není to součástí tradičního aktualizačního procesu.

UEFI ve firmách a organizacích není součástí kyberbezpečnostních politik?

Doufám, že někde ano. My se nyní snažíme zavést „call to action“, aby organizace reakce na UEFI útoky zavedly do svých prevenčních plánů a tak dále. Velké organizace mohou být cílem skupin jako Sednit a musí se tomuto tématu věnovat. Musí vědět, jaké verze firmwaru mají jejich jednotlivé stroje, zavést plány, jak firmware aktualizovat, jak reagovat na infekci UEFI.

Představte si situaci v malé firmě, kdy člověk od IT nemá ponětí o možnosti infekce UEFI. Má problém s počítačem, ale antiviry mu nic nenachází. Zkusí přeinstalovat Windows. Stane se to zase. Odpojí počítač od sítě a stane se to zase. Pak vymění pevný disk a znovu. Pak se z toho zblázní. Je tedy důležité vědět, že možnosti takového útoku existují.

Secure Boot tedy nakonec není řešením?

Když jsme publikovali náš původní výzkum, tvrdili jsme, že ano. Ale nakonec to tak není. Secure Boot používá jako zdroj důvěryhodnosti („root of trust“) obsah SPI flash paměti. Je navržen tak, aby chránil před zranitelnostmi přicházejícími mimo tuto paměť, typicky z ROM a podobně. Pro ochranu proti manipulaci s SPI flash pamětí je nutné „root of trust“ přesunout na hardware. Doporučujeme UEFI firmware neustále aktualizovat.

Vidíte nějaké reálné možné dopady objevené UEFI zranitelnosti?

Vidíme, že v současné době je tato metoda používaná jako dlouhodobý vyčkávací backdoor. Prozatím jsme neviděli, že by se kód snažil komunikovat s řídícími servery a vykonávat nějaké další akce. Myslíme si, že to prozatím nikdy nebylo potřeba, protože útočníci mají k dispozici tradiční sadu útočících nástrojů. Když se daří síť a počítače infikovat tradičními cestami, proč využívat velice „stealthy“ backdoor? Myslíme si, že kdyby tradiční nástroje byly detekovány a odstraněny, LoJax by mohl být využitý k jejich opětovné instalaci. LoJax nemá možnosti sledování nebo krádeže dat, prostě stahuje a vykonává.

Alexis Dorais-Joncas, ESET
Autor: ESET

Alexis Dorais-Joncas, ESET

Zmínili jste, že LoJax napadá země ve střední a východní Evropě, ovšem bez detailů. Je možné říci více?

To bohužel nekomentujeme. Mohu říci, že v těchto zemích prozatím napadl organizace v nižších dvouciferných číslech. Zjistili jsme, že řada z napadených strojů měla pouze „malého“ LoJax agenta, a ne další nástroje od skupiny Sednit. Ne každý stroj měl v sobě stejnou sadu nástrojů a útočníci se nejspíše pokoušeli věci dělat různě.

Může objev LoJaxu otevřít Pandořinu skříňku?

Obávám se, že ano. Možná ne dnes či zítra, ale do budoucna ano. Současný útok byl stále v rané fázi. Bariéra pro útočníky, jak vytvořit a nasadit UEFI rootkit, je poměrně vysoká. Ekosystém UEFI je dost odlišný od toho, který je vytvořen například kolem Windows. Musíte mít specifické znalosti. Není to pouze o tom vzít .exe soubor a někam ho umístit. Je nutné kód umístit někam v rámci firmwaru během určité operace a v určitém čase. Je třeba znalost UEFI specifikace. Také je třeba znát, jak UEFI nasazuje dodavatel hardwaru, na jehož technologie se snažíte útočit. Neexistuje jedna jediná cesta, jak infikovat všechny dostupné UEFI systémy. Dodavatelé si je integrují různě. Nemyslím si, že by běžný kybernetický kriminálník něco jako UEFI rootkit zvládl využít. Stále fungují běžné techniky jako poslat phishingový e-mail se škodlivým souborem.

Ale mým osobním názorem je to, že skupina Sednit bude na UEFI útocích nadále pracovat, postupně je vylepšovat a snažit se o automatizaci. Sednit není známý tím, že by své výtvory sdílel s ostatními skupinami. Ale pokud například jejich zdrojový kód někam „leakne“, už je možné, že začne být upravován a šířen dále v dalších variantách.

Patří Sednit mezi ty nejvíce technicky zdatné skupiny současnosti?

Ano, ale nejsou bezchybní, občas jsou „hlasití“ a zanechávají stopy. Jsme schopní poměrně jednoduše sledovat jejich aktivity a změny. Pracují na nadstavbách jedné a té samé sady nástrojů. Nikdy jsme neviděli, že by některý kód kompletně opustili a začali ho psát od začátku, čím by nás mohli odstřihnout od sledování. Ostatní skupiny to dělají – když jsou objeveny, všechno zahodí a začnou znovu.

Tímto způsobem jste tedy zjistili i to, že Sednit jsou vlastně skupina Fancy Bear, APT28 a další jména?

To jsou čistě synonyma. To, co sledujeme, je jejich malware. Vidíme, když něco mírně předělají, změní konfigurace a tak dále. Jednou za čas přidají nějakou větší funkci, ale to je čistě přídavek. U nás v kanceláři máme kolegu, který skupinu neustále sleduje a během chvilky je schopný zjistit, jaké změny udělala či co za detaily přidala. To je způsob, jakým vývoj jejich nástrojů sledujeme. Když analyzujeme malware od Sednit, jsme pak schopní sledovat jejich útoky. Když třeba spatříme e-maily s přiloženým malwarem, známe už kontext typu, kdo je cílem, jak byl malware vytvořen.

Je skupina Sednit z Ruska?

To jsme nikdy neřekli. Objevilo se několik veřejných prohlášení, že jde o skupinu z Ruska. Nizozemsko mělo takové jedno silné prohlášení, Spojené státy a Kanada také. My jsme s těmito prohlášeními opatrní. Pro nás není úplně jednoduché ověřit, že je něco takového pravda. Víme všechno o jejich nástrojích, útocích, jak operují a fungují, ale neexistuje pro nás žádná možnost, jak jít dále. Můžeme říci, že jsme našli malware, ve kterém byl použitý takový a takový jazyk. Můžeme také sledovat časové značky u kompilace jednotlivých nástrojů, což nám ukáže, v jakých časových zónách se takový nástroj kompiloval. To ovšem může být zfalšováno a kontrolováno útočníky.

Pokud nějaká kyberbezpečnostní firma dělá prohlášení, že ví, odkud daní útočníci pochází, jsem ohledně takových prohlášení velice podezíravý. Je možné, že dělají něco, co by jako firmy dělat neměly. My tyto věci necháváme policii a dalším právním složkám, které mají legální možnosti, jak postupovat dále – pořizovat obrázky, sledovat sítě, telefonní hovory a tak dále.

Jaká je motivace Sednitu?

Je to krádež informací, nejde jim o finanční zisk. Jejich cíle jsou téměř stoprocentně zaměřené na geopolitiku – jde o vlády, ambasády, diplomaty a tak dále.

Takže je zde velká pravděpodobnost, že jde o státem placený útok?

Je to vysoce pravděpodobné. Naznačuje tomu i to, že Sednit operuje stabilně, konzistentně a nedělá žádné výrazné změny. Ovšem stoprocentně to potvrdit nemohu.

Kolik peněz potřebujete, aby se vám podařilo něco jako LoJax vytvořit?

Dám vám k tomu jedno vodítko. Máme člověka, který je velice zkušený výzkumník malwaru. Ten začal pořádně studovat prostředí UEFI a trvalo mu několik měsíců, než zvládl UEFI aplikace analyzovat. A to není vytváření takové aplikace, ale její analýza. Takže při vývoji, testování a tak dále už to zabere pěknou dobu práce na plný úvazek. Rozhodně to není nic triviálního.

Myslíte, že je možné, aby útočníci napadli UEFI někde v rámci dodavatelského řetězce? 

Je to možné. Je to pravděpodobné? To už tak jasné není. Je to podobné, jako kdyby se někdo dostal třeba do Microsoftu a zajistil, aby se malware šířil přes jeho oficiální Windows Update. Stát se to asi může, ale není to zase tak pravděpodobné. Věřím, že procesy, které zajišťují distribuci hardwaru a softwaru, jsou vysoce zabezpečené. Samozřejmě se takové případy objevují. Například ukrajinská společnost M.E.Doc, která vyvíjí populární účetní software na domácím trhu, přes vlastní servery takto malware nevědomky šířila.

Našli jste v článku chybu?