Objavljeno: 21.4.2015 | Avtor: Matej Huš | Monitor Maj 2015

Pod stopnicami

Minili so časi, ko je bila univerzalna rešitev za okužbo računalnika formatiranje diska in nova naložitev sistema. Najbolj dovršeni virusi in črvi se dandanes skrijejo v strojno-programsko opremo (firmware) računalniških komponent. Skriti pod stopnicami čakajo, da znova in znova okužijo razkuženi sistem, pri tem pa ne izbirajo metod.

Tiskano vezje v starejšem disku. Strojno-programska oprema je zapisana v spodnjem čipu z okroglo belo nalepko.

Tiskano vezje v starejšem disku. Strojno-programska oprema je zapisana v spodnjem čipu z okroglo belo nalepko.

V zadnjih dveh letih smo se zavedli, da je internet precej bolj nevaren od pričakovanj in da obveščevalne službe že več desetletij intenzivno vdirajo v računalniške sisteme. Oči nam je odprl Edward Snowden z razkritji o metodah ameriške nacionalne agencije NSA (Monitor 09/13) in odtlej ne mine mesec, da ne bi iz zbranih dokumentov v javnost pricurljale informacije o novih načinih prisluškovanja. Prestrezanje prometa na podmorskih kablih, vstavljanje šibkosti v šifrirne algoritme v komercialnih programih, fizično spreminjanje poštnih pošiljk strojne opreme in vdor v izdelovalca telefonskih kartic SIM Gemalto so le nekateri izmed načinov, ki bi jih bili pred leti označili za filmske.

Začelo se je s črvom Stuxnet (Monitor 09/12), ki sta ga napisali ameriška in izraelska obveščevalna služba, da bi sabotiral iranski jedrski program. Ob odkritju je bilo jasno, da gre za najbolj dovršen črv v zgodovini. Žezlo je kasneje od njega prevzel Flame in za njim še Regin. Vsem je skupen slog programiranja in zloraba podobnih ali istih varnostnih ranljivosti, zaradi česar upravičeno domnevamo, da so avtorji isti ali pa so vsaj sodelovali.

Februarja letos je podjetje Kaspersky Lab objavilo analizo virusa, ki ga je napisala in v internet spustila neznana organizacija. Poimenovali so jo Equation Group (Skupina Enačba), ker je črv v celoti šifriran in ker koda uporablja metode, ki otežujejo njeno branje (obfuscation). Presunljivo je, da Equation Group deluje od leta 1996 in da so njihova orodja najbolj dovršeni kosi programske opreme na svetu. Čeprav ni neizpodbitnih dokazov, da gre za delo ameriške obveščevalne agencije, analiza kode in uporabljenih ranljivost kaže, da so pisci tesno sodelovali s pisci Stuxneta, če niso kar isti.

Skrivalnice

Čim več računalnikov virus okuži, tem hitreje ga bo nekdo odkril, analiziral in izdelal cepivo. Medtem ko ima pri varovanju računalniške opreme prednost varnost zaradi zasnove (security by design) in se varovanju s skrivanjem (security through obscurity) izogibamo, velja pri virusih ravno nasprotno. Ribarjenje v kalnem in podtalno delovanje sta jamstvo za to, da bo virus uspešno deloval vrsto let. V Equation Group so zato ubrali modularni pristop. Modul DoubleFantasy prvi okuži sistem in se razgleda po njem. Če oceni, da je računalnik dovolj zanimiv, iz interneta prenese modula EquationDrug ali novejšega GrayFish, ki začneta zbirati podatke in jih pošiljati v internet. Prvi deluje na računalnikih z operacijskim sistemom Windows XP ali starejšim, drugi pa z novejšimi. Če pa računalnik ni zanimiv, se DoubleFantasy ali njegova modernejša izvedenka TripleFantasy potuhneta.

V Equation Group so si zelo prizadevali, da ljudje njihovih programov ne bi odkrili. Ne le, da nezanimivih računalnikov ne okužijo, EquationDrug ima tudi funkcijo, da se izbriše, če dlje časa ne vzpostavi stika z nadzorno-krmilnimi strežniki. GrayFish pa si v celoti podredi sistem Windows, saj okuži zagonski zapis (boot record) in zamenja program za zagon Windows (loader). V okuženih računalnikih se v resnici Windows ne zažene več sam, temveč to stori GrayFish, zato ga je med delovanjem okužene različice Windows praktično nemogoče odstraniti. GrayFish v registru ustvari lasten šifriran navidezni datotečni sistem (VFS) in vanj shranjuje svoje podatke. Na disku tako sploh ni okužene kode, zato ga protivirusni programi ne morejo odkriti. Vse potrebno se sproti, tik pred zagonom, dešifrira iz VFS. Za šifriranje AES s 1000 iteracijami SHA-256 pa kot seme uporabi številko ID particije NTFS. Tako izdelovalec protivirusnih programov sploh ne more analizirati vzorcev, če ne dobi celotne slike diska žrtve, saj drugače sploh ne more dešifrirati črva.

 Moderni operacijski sistemi uporabljajo tudi zaščito pred poganjanjem nepodpisanih aplikacij; GrayFish zlorablja gonilnik za CloneCD, v katerem so že leta 2009 odkrili ranljivost, a njegovega certifikata niso nikoli preklicali. Tako lahko sistem prepriča, da je podpisan.

Prestrezanje klasične pošte

Udeleženci znanstvene konference, ki je leta 2009 potekala v Houstonu, so po vrnitvi domov po pošti prejeli zgoščenke z vsebinami s konference. Kaspersky sicer ni povedal imena konference, a prejeti CDji so vsebovali virus Equation Groupa. Vse kaže, da virusa niso zapisali prireditelji, temveč da so CDji med potovanjem po pošti naredili dodaten ovinek.

Leta 2002 so program EquationLaser, ki ga je napisala Equation Group, vsebovali CDji z Oracle 8i-8.1.7. Nihče ne ve, kako je virus končal na njih, kdo ga je tja podtaknil in koga vse je okužil. A ob tem ne pozabimo, da je že od leta 2013 znano, da ima NSA obsežne sezname ranljivosti v strojni opremi in da ji nista tuja prestrezanje pošiljk računalniške opreme ter vgradnja prisluškovalne opreme vanjo.

Imunost

Pri običajnih virusih smo lahko v najslabšem primeru vedno posegli po brutalni rešitvi, ki je odpravila vsak virus. Formatiran in sveže naložen sistem je najvarnejši. Priznati moramo, da so nekateri virusi ponečedili tudi strojno opremo, denimo zloglasni CIH, ki je leta 1998 prepisal BIOS in fizično onesposobil računalnike. A tu sta bila cilj kaos in uničenje. EquationDrug in GrayFish počneta nekaj podobnega, saj se zapišeta v strojno-programsko opremo, a z drugimi nameni.

Strojna-programska oprema je del vsakega večjega kosa strojne opreme in predstavlja most med strojno in programsko opremo. V zelo starih časih pred iznajdbo tiskanih vezij je šlo za matrico polprevodniških diod, kasneje pa je bila strojno-programska oprema shranjena v nespremenljivem pomnilniku (ROM). Zadnja desetletja je shranjena v EEPROMu (electrically erasable programmable read-only memory) ali polprevodniškem pomnilniku (flash). Prvega najbolje poznamo z matičnih plošč, kjer je bilo svoj čas »flešanje BIOSa« na novejše različice nekaj običajnega. Omrežni usmerjevalniki imajo strojno-programsko opremo v flashu in je nadgrajevanje ali celo zamenjava izdelovalčeve strojno-programske opreme z odprtokodim (npr. slavni Tomato)  rutinski postopek. Strojno-programsko opremo pa imajo tudi diski, le da se je redkeje lotimo nadgrajevati, če z diskom nimamo težav.

EquationDrug in GrayFish imata modul, ki je sposoben pisati v strojno-programsko opremo vseh najbolj priljubljenih diskov (znamk Maxtor, Western Digital, Samsung, Seagate, Hitachi, Toshiba) z uporabo nedokumentiranih ukazov ATA, ki jih standardu doda vsak izdelovalec diskov za namene diagnostike in vzdrževanja. Strojno-programska oprema resda vsebuje nujno potrebno logiko, da strojna oprema sploh deluje, a ni nikoli izkoriščena do zadnjega bita. Čipi so pač standardnih velikosti (potence števila 2), programska oprema pa je dolga, kolikor pač je. V neizrabljeni del strojno-programske opreme se zapišeta EquationDrug in GrayFish in s tem je disk zapečaten.

Tak disk je trajno okužen. Običajna programska oprema, h kateri sodijo tudi protivirusni programi, sploh nima dostopa do strojno-programske opreme. Tudi izdelovalčeva oprema, ki je namenjena posodabljanju, navadno ne omogoča branja vsebine v strojno-programski opremi, le prepis. Mimogrede, zato je ob vsakem »flešanju«  nadvse pomembno, da smo prepričani o modelu. To priča tudi o sposobnosti Equation Groupa, saj so preučili na desetine različnih modelov diskov več izdelovalcev, dobili podatke o nedokumentiranih ukazih in pripravili delujočo okuženo strojno-programsko opremo za vsakega posebej! Ne glede na število formatiranj, ki prepisujejo zgolj prostor za uporabniške podatke, se bo okužba kot zombi vedno znova vrnila iz strojne-programske opreme.

Virulenca

Videli smo, da se DoubleFantasy sploh ne trudi z nameščanjem preostalih kosov črva v nezanimive računalnike. A včasih je problem nasproten – Equation Group bi si želel podtaknit virus v kak računalnik, pa ni priključen v internet. Podoben problem je imel, recimo, Stuxnet, ki je moral priti v računalnike za nadzor jedrskih centrifug. Včasih so bile diskete, danes imamo ključe USB. Modul Fanny je namenjen prav temu. Na ključu USB ustvari skrito particijo in se zapiše vanjo, potem pa se ob vstavitvi ključa v računalnik brez internetne povezave prekopira nanj.

Strojno-programska oprema je prvovrstno skrivališče, a je branje iz nje zelo oteženo, pa še majhna je; praviloma ne meri več kot nekaj megabajtov. K sreči pa imajo moderni diski obsežno servisno področje, ki je namenjeno nadomeščanju okvarjenih sektorjev. Raziskovalec iz izraelskega podjetja Recover Ariel Berkman je že pred dvema letoma v praksi pokazal, kako lahko na 141 MB veliko servisno področje Western Digitalovih diskov, kjer je zasedenih le 12 MB, zapiše 94 MB podatkov, pa je disk še vedno deloval. Pred dvema letoma smo verjeli, da gre za teoretično nevarnost, sedaj pa je znano, da Equation Group izkorišča to ukano v svojih programih.

Okužba nepovezanih računalnikov (air-gapped systems) torej sploh ni težka. Fanny okuži ključ USB, ki ga vtaknemo v računalnik. Virus potem med svojim delovanjem zbira želene informacije in jih shranjuje na servisno področje na disku, kamor niti uporabniki niti protivirusna zaščita nimajo dostopa. Ko v računalnik spet vstavimo ključ USB, Fanny nanj prekopira zbrane podatke. Ko ta ključ USB sreča v internet povezan računalnik, tja uidejo tudi podatki.

Zakaj so najboljši

Da imajo v Equation Group najboljše pisce kode na svetu, dokazujejo sposobnosti njihovih programov:

•    okužba strojno-programske opreme diskov vseh večjih izdelovalcev,

•    zapisovanje podatkov na servisno področje na diskih,

•    uporaba navideznega datotečnega sistema,

•    posebni moduli za okužbo in komunikacijo z računalniki brez internetne povezave,

•    zloraba podpisanega gonilnika CloneCD za poganjanje nepodpisanih aplikacij,

•    šifriranje celotnih programov,

•    uporaba več kot 300 domen in 100 strežnikov za komunikacijo z virusom.

Razširjenost

To ni teorija, to je resničnost. V Equation Group so okužili računalniške sisteme v Iranu, Rusiji, Pakistanu, Afganistanu, Indiji, na Kitajskem, v Siriji in Maliju, če omenimo le najbolj prizadete države. Žrtve so sila pisane, saj zajemajo državni sektor, izobraževalne institucije, industrijo, finančne institucije, medije itd. Da je virus razširjen po vsem svetu, pričajo tudi nekatere okužbe v Veliki Britaniji, Nemčiji in Braziliji, prizadetih držav pa je še več. Znanih žrtev je več kot 500 v več kot 40 državah, zelo verjetno pa je še bistveno več neodkritih. V glavnem so okuženi računalniki s sistemom Windows, zelo verjetno pa so tudi inačice za Mac OS X, kaže analiza prometa v internetu.

Zaščita

Pred desetletji ni nihče niti pomislil, da bi lahko strojno-programsko opremo kdaj izkoristili za napade. Zato varnost sploh ni bila dejavnik pri izdelavi in to se nam danes pošteno maščuje. Kratkoročnih rešitev ni. Dolgoročno pa bi izdelovalci strojne opreme morali začeti kriptografsko podpisovati strojno-programsko opremo in dovoliti namestitev zgolj podpisane kode. Zelo preprost, a učinkovit mehanizem bi bil fizični mostiček, ki bi preprečeval pisanje v strojno-programsko opremo, in bi ga preklopili le ob namerni nadgradnji. Prav tako bi morali izdelovalci omogočiti branje strojno-programske opreme. Izračunane zgoščene vrednosti (hash) prebrane strojno-programske opreme bi primerjali z objavljenimi izdelovalčevimi vrednostmi in to bi takoj razkrilo manipulacije.

Da bi se te spremembe udejanjile, bi morali najprej imeti konsenz izdelovalcev. Če bi se vsi sporazumeli že danes, bi trajalo vsaj 5–10 let, da bi bila večina računalnikov zaščitena.

Nekaj kljub temu lahko storimo. Ni znano, da bi GrayFish okuževal strojne krmilnike RAID. Če diske vežemo v polje RAID (najraje RAID 0 – deljenje), operacijski sistem nima več neposrednega dostopa do diskov. Krmilniki RAID odgovarjajo le na standarde ukaze po standardu ATA, zato GrayFish ne more izkoristiti nedokumentiranih izdelovalčevih ukazov ATA za ugnezdenje na disk. In dokler Equation Group ne bo nadgradila programa za napad prek krmilnikov RAID, smo varni. Žal ne bomo nikdar pravi čas izvedeli, kdaj se bo ta varnost končala.

NSA je po razkritju Equation Group v izjavi za javnost sporočila, da so seznanjeni s poročanjem v medijih in da ga ne bodo javno komentirali. Dodali so le še, da delujejo zakonito.

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