Mr. Robot Analýza útoku na E Corp z pilotní epizody

Analýza útoku na E Corp z pilotní epizody

Analýza útoku na E Corp z pilotní epizody

Filmy a seriály často dělají z hackingu soutěže v rychlosti psaní na klávesnici a vtipnosti vizuálních efektů na obrazovce. Mr. Robot se však od těchto seriálů odlišuje v jeho realistickém pojetí. Přesvědčí vás o tom rozbor útoku na E Corp z pilotní epizody.


16 0
22.7.2015

Útok na servery E Corpu začíná v sobotu okolo třetí hodiny ranní. Po sledování Michaela Hansena se Elliot vydává zpět domů, ale plány mu zcela změní telefonát Angely.

Elliot: Děje se něco, Angelo?
Angela: Musíš přijít do AllSafe.
Elliot: Co tam děláš ve tři ráno?
Angela: Zase napadli servery Evil Corpu, ale teď je to zlý, je to DDoS útok.
Elliot: Volala jsi Lloydovi? Má službu.
Angela: Jo, už je tady.
Elliot: Mluví s jejich technickým oddělením?
Angela: Ano, ale zatím na nic nepřišli. Podle mě to Lloyd nezvládne. Gideon mi ten účet svěřil teprv nedávno, nemůžu to podělat. Potřebuju tě. Prosím
Elliot: Hned tam budu.


DoS útok

Denial of Service (DoS) útok (česky odmítnutí služby) má donutit server, aby odmítal jakékoliv požadavky jeho uživatelů, kteří po něm vyžadují běžné služby. Představte si, že potřebujete někomu nutně poslat dopis. Pošlete ho, ale v té samé chvíli někdo pošle dalších 50 milionů stejně velkých dopisů. Když pošťák může doručit do schránky maximálně sto takových dopisů, je pravděpodobné, že ve schránce adresáta skončí pouze odpad a váš dopis zůstane nedoručen. Jako poštovní schránky fungují i servery. Pokud server dokáže zvládnout požadavky 10 milionů uživatelů a útočník ho zahltí objemem požadavků odpovídajícímu 100 milionů uživatelů, poté uživatelé serveru skončí s errorem na obrazovce, když se snaží na server připojit.

DDoS útok

Distributed Denial of Service (DDoS) útok je stejný jako DoS útok, ale je iniciovaný přes více zařízení. Útočníci mají obvykle přístup k tisícům počítačů, které v jednu chvíli přetěžují cílený server. Populární typ útoku je například reflection attack, který se vyznačuje tím, že útok probíhá přes několik dalších serverů, které mají mnohem větší potenciál pro útok. Vrátíme se zpátky k příkladům s dopisy. Schránka adresáta má kapacitu na 200 dopisů, ale vy jich máte pouze 100. Co s těmi 100 dopisy uděláte? Rozešlete je 100 adresátům a požádáte je, aby poslali co nejvíce informací na adresu oběti.

Velké společnosti jsou téměř vždy pod DDoS útoky a většina z nich se s nimi vypořádá využitím pomoci ze strany specializovaných firem na DDoS útoky, jako je třeba Prolexic. Její služby v seriálu využívá i AllSafe.

V AllSafe

Angela: No konečně.
Elliot: Klid, byla to jen hodina.
Angela: To je pro Evil Corp ztráta zhruba ve výši 13 milionů. Ne zhruba, ale skutečně, sama jsem to počítala.
Elliot: Neboj se, zvládnu to. Jak to vypadá, Lloyde? Lloyde!
Lloyd: Elliote. Je to fakt zlý.

(Obrazovka s administrativní konzolí. Zdroj: USA Network)

V této chvíli vidíme obrazovku s administrativní konzolí. Vidíme, že se nejprve začalo inicializovat vypnutí serverů („initialize shutdown“). Poté vidíme mnoho podobných zpráv, že se servery restartují. Nakonec se objeví chybová zpráva: „Start failed, access denied: error 43“.

Znamená to, že se Lloyd pokoušel rebootovat servery. Vypnuly se, ale když začalo bootování, něco se stalo špatně a kontakt se servery se ztratil. To je divné. Elliotovi trvalo hodinu, aby se dostal do AllSafe a Lloyd hodinu po začátku útoku inicializuje vypnutí? Tohle by mělo větší smysl hodinu předtím, ale takto to asi lépe zapadá do televizního seriálu.

DNS

Elliot: Překonfiguroval jsi DNS?
Lloyd: Ano.

Domain Name System (DNS) je zodpovědný za překlad adresy jako www.google.com do IP adresy jako je 175.45.176.67­. Pokud jste schopni identifikovat, odkud jsou útočníci připojeni nebo jakým způsobem s DNS komunikují, můžete rekonfigurovat DNS. Útočníci obdrží jednu adresu a všichni ostatní získají odlišné adresy.

Tímto způsobem dostanou běžní uživatelé adresy, které nejsou pod útokem. Například pokud by jakýkoliv uživatel žádal o službu adresu více než jednou za pár sekund, poté by nezískal ze strany serveru žádnou reakci, jelikož se pravděpodobně snaží přetížit server. Pokud je DDoS útok tak velký, že DNS servery útok nemůžou zvládnout, poté toto nebude fungovat.

Elliotův terminál

Vidíme Elliota, jak něco píše na počítači. Nejprve provádí portscan na portech od 80 do 7655. Většina důležitých portů pro běžnou komunikaci je od 1 do 80. Výsledkem scanu je, že porty mezi 3457 a 6555 jsou otevřené a ostatní zavřené. Porty 3457 až 6555 vykazují podivnou činnost, jelikož tyto porty asi nebývají normálně otevřené.

Potom Elliot do terminálu napíše: „Status -services -s WBUSl12345678WB1­“. Požaduje aktuální status služeb běžících na zařízení WBUSl12345678WB1. Výpis je takový: 

PID
USER
PR
NI VIRT
RES
SHR S %CPU %MEM
TIME+ COMMAND
root 20 0 109m 67m 12m S 1.0 13.5 0:05.21 Xorg
1744 root 20 0 89320 14m 11m S 0.0 3.0 0:00.55 terminal
1820 root 20 0 2836 1152 880 R 0.0 0.2 0:00.07 websrv1FF1
1 root 20 0 3648 2016 1312 S 0.0 0.4 0:00.72 init
2452 root 20 0 0 0 0 S 0.0 100 0:00.0 evilcorpwbthread

První čtyři služby vypadají v pořádku. Všechny běží jako root. Root je uživatel, který může dělat naprosto vše na zařízení. Je docela špatné nechat všechny tyto služby běžet jako root, jelikož některé z nich to nevyžadují. Webserver by neměl běžet jako root a může to být taky celkem jednoduše důvod, proč byli takto fatálně napadeni. Xorg je program odpovědný za zacházení s uživatelským prostředím. Proto je divné, že běží delší dobu než init. Pátá služba je na první pohled velmi podivná. Využívá 100 % paměti, i když ostatní služby také používají paměť a evilcorpwbthread vykazuje 0 použití jiných systémových zdrojů. Mimo jiné běží dobu 0:00.0, což vypadá dost nereálně.

Tato abnormalita pravděpodobně indikuje:

  1. evilcorpwbthread není normální program, ale malware
  2. v zařízení je rootkit

Rootkit

Rootkit je program vytvořený ke skrytí určitého softwaru, obvykle pak malwaru. V tomto případě to vypadá tak, že rootkit mění čtení statusu služeb a vrací zpět vymyšlené výsledky pro evilcorpwbthread. Je to divné, jelikož vše by šlo udělat tak, že by evilcorpwbthread byl skrytý a vůbec by nebyl přečten.

(Gideon, Lloyd, Angela a Elliot. Zdroj: USA Network)

Gideon: Jak to vypadá? Myslel jsem, že ty bezpečnostní protokoly nás měly bránit.
Gideon: Odkud jde ten útok?
Elliot: Očividně odevšad. Ze Států, Finska, Thajska, Kuvajtu.
Gideon: Restartuj služby, spusť sdílení, převeď provoz. Ať nám pomůže Prolexic.
Elliot: Není to prostý DDoS útok. Vypadá to, že v serverech mají rootkit.

Spustit sdílení a převést provoz je v této situaci podivné. Jakýkoliv systém, který zabezpečuje tak velkou společnost, by už měl dávno spuštěné sdílení. Převést provoz dává smysl jedině tehdy, pokud lze identifikovat bod nebezpečného provozu. Prolexic jako velká společnost, která se zabývá DDoS útoky, by jim měl zavolat sám od sebe už před hodinou. Nebo oni sami jim měli už před hodinou zavolat. Elliot informuje ostatní o rootkitu.

Angela: Co je rootkit?
Lloyd: Takový šílený sériový znásilňovač s velkým pérem.
Angela: Bože, Lloyde.
Lloyd: Promiň, je to škodlivý kód, který přebírá celý systém. Maže systémové soubory, instaluje programy, viry…

To není úplně pravdivé. Rootkit je pouze software, který skrývá procesy nebo služby před systémem. Rootkit tedy zakrývá nějaký malware a má roli neviditelného pláště.

Řešení

Angela: Jak to zastavíme?
Lloyd: O to právě jde. Je to v podstatě neviditelné, nedá se to zastavit. Jejich serverům vyprchává limit, žádný se nechce nahodit.
Elliot: To protože s každým pokusem o reset se virus zase replikuje a vypne hosta.
Lloyd: Jak je ale máme nahodit, když je nemůže restartovat?
Elliot: Nejde to. Přesně tohle chtěli. Když se budeme bránit, virus se rozšíří všude. Jediným východiskem je vypnutí všech serverů, vymazání infikovaných serverů a pak teprve jejich nahození.

Servery tedy mají nějaký aktualizační mechanismus, který updatuje software, a právě je ovládaný virem. Když se server restartuje, zaznamená nový update a vrátí ho do bodu, kde byl infikován. Často jsou tyto update úkony kryptograficky zabezpečeny, ale pokud jsou útočníci velmi dobří, můžeme předpokládat, že se s tímto nějak vypořádali.

V normálních podmínkách by se rebootovalo pouze několik serverů v jednu chvíli, tak, aby se virus mohl rozšířit do dalších zařízení. Vše by bylo zaznamenáno a zařízení by byla vymazána. Důvod DDoS útoku byl donutit AllSafe předejít běžné protokoly a rebootovat všechny servery najednou. Všechny ve stejnou chvíli ztratily kontrolu.

Normálně by měla velká společnost s takovou možnou ztrátou nějaké offline zálohy. Pokud by se něco takového stalo, všechna zařízení by byla odpojena a nahrála by se záloha.

Gideon: Pojedeš se mnou.
Gideon: Lloyde. Pověz všem, aby začali vypínat servery.
Lloyd: Dobře.
Gideon (do telefonu): Serverová farma v Dullesu. Potřebujeme tryskáč.

V reálném datovém centru byste měli mít možnost kontaktovat technika, který pro vás sám vykoná vymazání a nahraje vše z úložiště. Pokud byste chtěli mít nad vším více kontroly, mohli byste požádat o vzdálený přístup. Když nemáte čas, rozhodně se nevyplatí plýtvat časem k cestování letadlem do datového centra.

V datovém centru

Gideon: Zase nahazují síť. Stahuješ logy, protože…
Elliot: Dost. Ať toho nechají.
Gideon: Cože?
Elliot: Ještě je nesmí nahodit, jeden vynechali. Jeden nakažený server ještě stále běží. Za jak dlouho se virus dostane k serveru?

Měli automaticky vymazat vše, takže toto je trochu podivné. Z důvodu většího oživení a vytvoření napínavé atmosféry můžeme říct, že zapomenout na jeden server je ještě odůvodnitelné. Pokud potřebujete znovu nastartovat všechny servery, nestartují se všechny najednou, ale postupně. Servery potřebují velké množství energie při bootování a servery, které byly nahozené o chvíli dříve, můžou říct nově bootovaným serverům, jaké úkony vykonat. Pokud se bootují všechny servery v jednu chvíli, mohla by se stát chyba v komunikaci mezi servery. Infikovaný server je naštěstí na posledních místech serverů, které se mají bootavat. Elliot má díky tomu čas nastavit server tak, aby infikovaný server byl v bootování přeskočen.

Elliot: Záložní server funguje?
technik: Ano, ale nemá nakonfigurovaný auto-switch.

Záložní server tedy nemá nakonfigurovaný auto-switch, aby mohl přeskočit server. Elliot toto musí udělat manuálně a zajistit, aby se server CS30 nebootoval.

Elliot: Musíme přesměrovat provoz a přepnout DNS server.

(Elliot v datovém centru. Zdroj: USA Network)

Nyní se Elliot připojí k tomuto serveru, lokalizuje ho a updatuje síťové informace, aby byl infikovaný server přeskočen. Další boot se provede na serveru CS51.

Je tedy útok reálný?

I přesto, že jde tomuto řešení útoku vytknout pár věcí, nemůžeme říct, že by seriál nebyl v řešení problému nereálný. Otázkou je vždy, kolik lidí si některé chyby uvědomí a jak velké tyto chyby jsou. Pokud si pár drobných nedostatků všimne člověk v oboru, který se s ostatními podělí o jeho pohled na věc komentářem na Redditu, můžeme všem, kteří se na seriálu podílí, pogratulovat. Televize a filmy asi nikdy přesně nebudou kopírovat reálnou praxi tohoto oboru, a to zvláště tehdy, pokud na jeden díl mají pouze zhruba 45 minut.

V první epizodě se vyskytuje chyba na listu papíru. Víte, o jakou chybu se jedná? Do seriálu však musela být vložena, aby se předešlo určitým problémům.

Zdroj: Reddit.com (autor původního článku: phulbarg)

Diskuze /16

Zerisska

Super článek! Za tohle jsem velmi vděčná :)

22.7.2015 | 10:25:49
barahir

Mně hlavně přišlo divný, že v první epizodě Elliot vypaloval na CD ty kompromitující materiály v nezašifrované podobě. Alespoň mi to z těch záběrů tak přišlo.

redaktor
22.7.2015 | 10:37:13
Zantaraz

Parádní článek :) A co se chyby týče…IP adresa je nereálná :) (pravděpodobně z „bezpečnostních“ důvodů)

22.7.2015 | 11:36:49
MolesX

Chybou myslíte IP:218.108.149.373? Je to fake adresa..pocho­pitelně nedají reálnou do seriálu o hackerech :o) Stejně jako všechny telefony ve filmech a seriálech začínají 555… Slavný Ghostbusters mají 555–2368 a prostě se jim nedovoláte :o( a já bych je tak potřeboval…

#5 barahir #11 honza0118
22.7.2015 | 12:37:47
barahir

#4 MolesX: Tak proto jsem se nedovolal na 0118 999 881 9­99 119 7253? :D

#6 lukascoolarik
redaktor
22.7.2015 | 13:11:53
lukascoolarik

#5 barahir: A nepopletl jsi náhodou nějaké číslo? Po dvojnásobném pádu ze schodů může být člověk mírně rozrušen. :-D

#7 barahir
webmaster
22.7.2015 | 13:13:29
barahir

#6 lukascoolarik: Nesmysl, vždyť se to tak krásně rýmuje! :D

#8 lukascoolarik
redaktor
22.7.2015 | 13:24:05
lukascoolarik

#7 barahir: Pravda. Moss by mohl vyprávět. :-D

webmaster
22.7.2015 | 13:25:47
MolesX

Trik je vtom vystihnout tu trojku na konci…jinak to spadne do schránky :o)

22.7.2015 | 13:50:57
dagsoftware

Podozrivý mi príde ten Xorg bežiaci na servri.

#11 honza0118 #13 Dramon
22.7.2015 | 15:39:17
honza0118

#4 MolesX: Vzpomínám si, že jsem 2. díl několikrát zastavoval a pingal na IP adresy, které se v seriálu objevily (a rozhodně byly validní).

#10 dagsoftware: podezřelý mi přijde Xorg běžící pod rootem

#13 Dramon
23.7.2015 | 19:38:35
Dramon

>Většina důležitých portů pro běžnou komunikaci je od 1 do 80
Troufám si tvrdit, že ne do 80, ale do 1024. Tzv.pri­vilegované por­ty

24.7.2015 | 8:40:22
Dramon

#11 honza0118: Xorg normálně běží pod rootem, to je v pořádku.
#10 dagsoftware: Podezřelé možná, ale v reálu se to vyskytuje. Buď server slouží zároveň jako terminál server, nebo nějaký instalovaný SW vyžadoval XWindows a admin to řešil takto.
A nebo je admin „umělec“, co je bez grafických klikátek naprosto ztracenej.

24.7.2015 | 8:51:03
Kopr

Eh ..Našel jsem jednu reálnou IP :) https://whatismyipaddress.com/ip/24.23.97.62

25.7.2015 | 21:44:47
25.7.2015 | 21:50:24
Kopr

Na té adrese : Cisco DPC3825 DOCSIS 3.0 Gateway – http://24.54.36.14:8080/…s_system.asp

25.7.2015 | 21:58:17
Chceš taky něco napsat? Registruj se nebo se !

Reklama

Podpořte nás

Pokud chcete podpořit překladatele seriálu Mr. Robot a poděkovat jim za jejich práci, můžete tak učinit zde. Moc vám děkujeme!

Berte v potaz, že PayPal si účtuje transakční poplatek 3,4 % plus 10 Kč.

Momentky

Momentky

Opakování je matka...

Rekapitulace: eps2.9_pyth0n-pt2.p7z

Rekapitulace: eps2.9_pyth0n-pt2.p7z

Ne, nezapomněli jsme na vás. Po několika měsících si konečně můžete přečíst rekapitulaci finále druhé řady seriálu Mr. Robot, které zmátlo nejednoho diváka. Kolik otázek bylo zodpovězeno, kolik nových se objevilo a kolik starých zůstává?

Nejlepší postavy

Edna na sociálních sítích