Objavljeno: 28.3.2017 | Avtor: Matej Huš | Monitor April 2017

Izolirano ni nedostopno

Stari računalniški pregovor pravi, da je vsak računalnik, ki je kakorkoli povezan v internet ali druga omrežja, ranljiv in da je mogoče z zadostnimi sredstvi vdreti vanj. Od tod bi lahko sklepali, da velja tudi obrnjeno – če računalnik ni nikamor povezan, je varen. Raziskovalni koncepti in praktične izvedbe napadov dokazujejo, da to sploh ne drži. Edini stoodstotno neprebojen računalnik je ugasnjen.

Računalniki oddajajo toploto, ki je odvisna od obremenitve.

Računalniški sistemi, ki niso povezani nikamor ali zgolj v zaprta omrežja, so bistveno varnejši od računalnikov, priključenih v internet, to je jasno. Na tem načelu temeljijo številne zaščite proizvodnih procesov in drugih kritičnih aplikacij. Če naj računalnik krmili nek stroj, s prikapljanjem v internet ne bomo pridobili ničesar, razen neskončno možnosti, da nas kdo napade. Toda kot nas je naučil davnega leta 2010 odkriti virus Stuxnet, ki je napadel iranske jedrske centrifuge, to ni dovolj. Čeprav računalniki, ki so krmilili centrifuge, niso bili povezani v internet, jih je Stuxnet kljub temu okužil. Tja so ga prinesli na ključih USB, ki so jih zaposleni vstavili v računalnike. In to je bilo zadosti, da je Stuxnet sabotiral program za obogatitev urana.

Na prvi pogled se zgodba ne zdi spektakularna. Že v prazgodovini, ko so se z internetom igrali le na Institutu Jožefa Stefana, so se virusi širili v glavnem z okuženimi disketami. Nikamor ni bilo treba biti povezan, zadoščalo je vstaviti disketo. Tedaj so bili virusi precej manj premeteni kot danes in se niso ukvarjali z vohunjenjem. Nekateri so bili zgolj šaljivi, drugi pa so poizkusili narediti čim več škode, a nobeni nam niso kradli. Pa tudi če bi nam želeli, vse do danes ostaja z nami prepričanje, da niti z okuženega računalnika ne moremo dobiti ničesar, dokler ga kam ne povežemo ali vanj ne vključimo kakšnega podatkovnega nosilca. Za take izolirane računalnike često pravimo, da so zračno izolirani (air-gapped).

Podatki z izoliranega računalnika

Da je to lažna uteha, so nam pokazali raziskovalci z izraelske Univerze Ben-Gurion. Raziskovalna skupina pod vodstvom Yuvala Elovicija je v minulih letih razvila in v praksi preizkusila več konceptov, kako pridobiti podatke z okuženega računalnika. Nekatere opisane metode so celo dvosmerne, torej lahko okuženi računalnik pošilja in sprejema podatke. Pri modernih vohunskih virusih smo običajno zadovoljni že, če jih pošilja in jih lahko prestrezamo. Možnost prejemanja pa je dodaten bonus.

Prva možnost je toplota. Ker računalniki niso nič drugega kot zelo dragi grelci, lahko komuniciramo toplotno. Čim bolj obremenimo procesor in grafično kartico, tem več energije bosta porabila in posledično ustvarila toplote, ki se bo pokazala kot povišana temperatura. Raziskovalci so pokazali, kako lahko tako komuniciramo. Vsi računalniki imajo dandanes senzorje temperature, da uravnavajo hlajenje ali se po potrebi celo izklopijo. Okuženi računalnik komunicira binarno tako, da enico prenese kot zvišanje temperature. To doseže s povečanjem obremenitve, ničlo pa kot znižanje temperature, kadar ne dela nič. Če je v neposredni bližini nekaj decimetrov drug računalnik, lahko ta spremembe temperature s svojimi senzorji zazna. To ni tako neverjeten scenarij, saj so poleg izoliranih računalnikov pogosto običajne v internet priključene delovne postaje, da lahko zaposleni uporabljajo oboje na istem mestu. Metoda je zelo zelo počasna, saj je bila povprečna hitrost prenosa osem bitov na uro. A to je dovolj, da v nekaj dneh ukrademo kak šifrirni ključ ali da računalniku pošljemo kakšen ukaz oziroma aktiviramo spečo proceduro.

Ultrazvočno sledenje omogoča razkrivanje identitete uporabnikov Tora, ki imajo ob sebi pametne telefone. Slika: Vasilios Mavroudis in Federico Maggi.

Iz tega izpeljana možnost so ventilatorji, ki ustvarjajo precejšen hrup. V modernih računalnikih lahko programsko reguliramo hitrost njihovega vrtenja, kar vpliva na zvočni odtis. Izraelci so pokazali, da lahko s spreminjanjem hitrosti vrtenja ventilatorja s 1000 na 1600 obratov na minuto in nazaj učinkovito pošiljamo podatke z okuženega računalnika. Taka komunikacija je nekoliko hitrejša, saj jim je uspelo prenesti 3 bite na sekundo. Z zvišanjem hitrosti vrtenja so hitrost komunikacije še povečali do 15 bitov na sekundo, a so bile v tem primeru razlike v glasnosti manjše, zato je bila komunikacija manj zanesljiva in bolj občutljiva za hrup iz okolice. Tak način je izrazito enosmeren, glavna pomanjkljivost pa je nujno potreben mikrofon, ki ga mora imeti računalnik, ki sprejema podatke. Še vedno mora biti dovolj blizu okuženega računalnika, a je, odvisno od ravni hrupa v sobi, kljub vsemu lahko dlje kakor nekaj decimetrov, kar velja za toplotno komunikacijo.

Druga komponenta, ki v računalniku ropoče, so diski. V modernih računalnikih za osebno rabo sicer čedalje pogosteje srečujemo tihe SSDje, ki nimajo vrtljivih delov, a v industrijskih sistemih to ni pravilo. Tam raba SSDjev ni smiselna, zato še vedno koristno ropotajo. Nekateri računalniki namreč nimajo aktivnega krmiljenja ventilatorjev. V tem primeru krmilimo aktuator, ki je nameščen na diskovni glavi in je med drugim odgovoren za značilno klikanje diska. Tako je mogoče komunicirati še hitreje – šlo je do 180 bitov na sekundo. Mikrofonu, ki so ga uporabili za preizkus, je uspelo podatke razbrati z razdalje dveh metrov. Glavna pomanjkljivost takega napada je še vedno potreben mikrofon, hkrati pa je napad precej občutljiv za siceršnje dogajanje v računalniku (če na primer intenzivno bere z diska) in ni tako zelo neopazen kot prejšnja. Idealno ga je izvajati ponoči, kar tako ali tako velja za vse napade. Tudi ta napad je enosmeren, razen če nam uspe na oba računalnika priključiti mikrofon.

Kaj pa, če nimamo mikrofona? V tem primeru nam lahko pomagajo slušalke. Kakor ve vsak elektrotehnik, med mikrofonom in slušalkami konceptualno ni velike razlike. V obeh imamo zvočno tuljavo. Mikrofon je bolj občutljiv in pretvarja vibracije opne, ki jih povzročijo valovi v zraku (torej zvok), v električne signale, zvočniki pa počnejo nasprotno. Čeprav slušalke in mikrofone na računalnik priklapljamo v druga vrata (tu mislimo na 3,5-mm priključek, in ne USB), to ni ovira. Priključek za zvočnike omogoča dvosmerno komunikacijo, RealTekov avdio kodek pa lahko preprogramiramo tako, da zajema podatke z vrat za slušalke. S poizkusom so pokazali, da je tudi s cenenimi slušalkami kakovost zajetega zvoka zadostna, da lahko razločimo govorjeno besedo. Resnici na ljubo moramo priznati, da ta napad ne krade podatkov iz računalnika, temveč iz okolice. Toda včasih je to še pomembneje, poleg tega lahko napad skombiniramo s kakšnim iz poprej navedenih.

Razlike med zvokom, ki ga posnamemo z mikrofonom (zgoraj levo) na razdalji 1 m ali s slušalkami na različnih razdaljah (zgoraj 1 m, spodaj 5 m in 9 m), niso velike, zato je glasove mogoče prepoznati. Vir: Guri, M. et al. SPEAKE(a)R: Turn Speakers to Microphones for Fun and Profit.

Okužba brez stika?

Pri vseh opisanih metodah smo predpostavili, da smo tarčni računalnik poprej tako ali drugače okužili. Bodisi smo vanj vstavili okužen ključ USB bodisi smo ga napadli prek interneta. Še precej bolj znanstvenofantastično pa zveni možnost okužiti sterilen izoliran računalnik.

Leta 2013 so se razširile vesti o virusu BadBIOS, ki naj bi se domnevno prenašal ultrazvočno in tako okuževal čiste računalnike. Bival naj bi v BIOSu in bil sposoben okužiti različne sisteme. Zgodbo je lansiral Dragos Ruiu in čeprav je zvenela neverjetno, smo ji zaradi Ruiujevega renomeja kljub temu množično prisluhnili. Ker se v naslednjih mesecih in letih ni razkrilo nič pretresljivega, je zgodba o BadBIOSu bržkone mit. Teoretično je tak napad mogoče izvesti, a ustrezna sredstva imajo zgolj velike države. BadBIOS bi bil še bistveno bolj sofisticiran kot Stuxnet, ki je tisti čas veljal za najbolj dovršenega. Ruiu verjetno ni namenoma lagal, temveč je prehitro sklepal na podlagi nepopolnih informacij.

Je pa NSA po pisanju The New York Times v praksi počela nekaj podobnega, a manj eksotičnega. V izolirane računalnike vstavljajo majhne radijske sprejemnike in oddajnike, ki poslušajo radijske valove na določenih frekvencah. Ustrezni čipi so tako majhni, da jih lahko skrijejo na matično ploščo ali v kable USB. Tako strojno okuženi računalniki lahko komunicirajo tudi prek nekaj kilometrov. To ni znanstvena fantastika; NSA ima v katalogu ANT, ki je pobegnil v splet, napravo Cottonmouth-I, ki je videti kot običajen kabel USB, a ima ustrezen sprejemnik in oddajnik.

Izdelovalci računalnikov so se sicer že nekoliko unesli, a ima še vedno vsako ohišje vsaj dve svetleči diodi (LEDici). Povsem nebrzdan je njihov razmah pri usmerjevalnikih in podobni opremi, a za konkreten primer je pomembna dioda, ki prikazuje delovanje diska. Tudi to je odličen medij za prenos podatkov. S pametnim krmiljenjem te diode lahko podatke pošiljamo s hitrostjo 4 kb/s. To pa je že dovolj, da lahko v doglednem času prekopiramo velike količine podatkov. Dodatna prednost napada je prikritost, saj diode pogosto utripajo brez pametnega razloga (ko na primer potekajo razne indeksacije po disku). Gremo lahko še korak dlje in jo krmilimo tako hitro, da utripanja s prostim očesom sploh ne vidimo. Metoda je tudi zelo daljnosežna, saj potrebujemo zgolj vidno linijo do diode in primerno kamero. Zamislimo si lahko tudi letalnik, ki ponoči neslišno lebdi pred stavbo in skozi okno bere podatke, ki mu jih signalizira okuženi računalnik.

Enota TAO, ki je del NSA, ima v katalogu poseben dodatek za USB, ki računalnik spremeni v oddajnik in sprejemnik radijskih valov za komunikacijo na daljavo brez drugih povezav. Slika: nsa.gov1.info.

Tudi grafična kartica je potencialen vir nevarnosti. Z ustrezno modulacijo signala je namreč v okolico mogoče oddajati elektromagnetno valovanje, ki nosi podatke. To ni zelo močno, je pa zadosti, da ga na razdalji sedem metrov zazna sprejemnik za radijske valove, ki ga imajo praktično vsi pametni telefoni. Tako je mogoče prenašati podatke s hitrostjo okrog 500 bitov na sekundo, kar je dovolj za vrstico besedila. Za prenos podatkov je torej dovolj, če v bližino okuženega računalnika prinesemo mobilni telefon ali pa če okužimo še mobilni telefon kakega zaposlenega. Enako lahko izkoriščamo tudi pomnilniško vodilo v računalniku, za zajem podatkov pa zadostuje že navedeni (ne pameten) mobilni telefon. NSA uporablja ta način, resda z namensko vgrajenim oddajnikom, tudi v praksi (glej okvir).

Sledenje med napravami

V prejšnji številki Monitorja smo si na kratko ogledali, kako je mogoče uporabniku slediti, četudi na istem računalniku uporablja različne brskalnike, čisti piškotke in menja fizično lokacijo (Goli brez piškotkov, Monitor 03/17). Veliki cilj tako oglaševalcev kakor tajnih služb pa je slediti uporabniku prek različnih naprav. Resda jim s prijavljanjem v Googlov račun in podobno to delo precej olajšamo, a oglaševalci bi si, recimo, želeli vedeti tudi, kaj gledamo po televiziji. In to ne pametni, ki prek interneta komunicira z izdelovalcem, temveč stari, neumni televiziji. Metoda se imenuje uXDT (ultrasound cross-device tracking), o njej pa se je prvič začelo govoriti že leta 2012.

Osnovna zamisel je zelo preprosta. V reklami na televiziji, radiu ali spletni strani bo vključen človeku neslišen ultrazvok, ki pa ga sprejemnik v pametnem telefonu zazna. Tako lahko oglaševalec ve, ali lastnik telefona gleda neki program po televiziji ali pa brska po neki spletni strani. Sledenje lahko razvijamo še dlje – na spletni strani je lahko osebno prilagojen ultrazvok, tako da bo telefon izdal točno lokacijo računalnika, s katerim brskamo po internetu. Tako lahko logično povežemo napravi, ki ju uporablja isti uporabnik, četudi ta ne deli nobenih podatkov med njima.

Uporabo uXDT je potrdilo podjetje SilverPush, ki se ukvarja prav z razvojem metod za sledenje med napravami. SilverPush tehnologijo imenuje UAB (Unique Audio Beacon) in jo vgrajuje v televizijske reklame (torej nepersonaliziran ultrazvok), na mobilnih telefonih pa teče knjižnica (SDK), ki to zazna. Tako SilverPush dobi podatke o televizijskih navadah svojih uporabnikov. Ameriški FTC (Zvezna komisija za trgovino) je lani opozoril izdelovalce 12 aplikacij, ki so uporabljali tudi SilverPushevo kodo, da verjetno kršijo zakonodajo, saj na sledenje uporabnikov niso opozorili.

Razkrinkamo lahko celo uporabnike šifrirnega omrežja Tor. Če imajo zraven računalnika pametni telefon, bo ta slišal zvok, ki ga odda prek Tora obiskana spletna stran, in uporabnik nenadoma ne bo več anonimen. To izvedbo napada so predstavili novembra lani na Black Hat Europe in letos na Chaos Communication Congressu.

Za tako sledenje je ključno prisluškovalno aplikacijo namestiti na pametni telefon. To je laže, kot bi si mislili, ker danes nanje nalagamo raznovrstne aplikacije. Veliko brezplačnih ima vgrajeno tako ali drugačno vrsto reklam, poleg tega zahtevajo pravice za dostop do cele vrste komponent v telefonu, tudi mikrofona, kar vsi nekritično dovoljujemo.

Diode na računalniški opremi je mogoče sprogramirati tako, da izdajajo informacije.

Namesto konca

Tele vrstice berete na listu papirja, soseda slišite vrtati, potres čutite in radio lahko poslušate, pa čeprav z ničimer in nikomer niste povezani prek električne podatkovne povezave. Načinov komunikacije je veliko in naivno bi bilo pričakovati, da se bodo napadalci omejevali zgolj na klasične električne podatkovne povezave samo zato, ker pri normalnem delu uporabljamo le te. Vsak računalnik je varen točno toliko, kolikor imamo nadzora nad programsko opremo, ki jo vnašamo vanj. Če je temeljito okužen, tudi fizični odklop iz interneta ne bo popolnoma preprečil kraje podatkov.

Za konec pa ne pozabimo, da smo nekaj sorodnega počeli že 80. letih prejšnjega stoletja. V časih Spectruma ZX in Commodorja 64 sta Radio Študent in Radio Koper po radijskih valovih predvajala digitalne posnetke, ki smo jih posneli na kaseto in vtaknili v računalnik, pa smo lahko igrali igre. Princip je isti, vse drugo so nianse, bi rekel Balašević.

Naroči se na redna tedenska ali mesečna obvestila o novih prispevkih na naši spletni strani!

Komentirajo lahko le prijavljeni uporabniki

 
  • Polja označena z * je potrebno obvezno izpolniti
  • Pošlji