Aruanne Eesti e-hääletussüsteemi kohta

Laupäev, 3. september 2011
Barbara Simons

Ma külastasin Eestit selle aasta juuli keskel, riigi esimese peaministri ja Tallinna praeguse linnapea Edgar Savisaare kutsel. Keskerakonna liider härra Savisaar tuli hiljutistel üleriigilistel valimistel teisele kohale. Keskerakond ja härra Savisaar peavad e-häälte osa valmistulemuses küsitavaks. Nad kutsusid mu Eestisse, kuna pidasin europarlamendis ettekande e-hääletuse ohtude kohta.

Ma ütlesin oma võõrustajatele, et arutlen meeleldi netihääletuse ohtude üle, kuid ei kommenteeri Eesti sisepoliitikat. Küsimusele, kas minu arust olid valimised ebaausad või mitte, keeldusin ma vastamast, kui välja arvata mu märkus, et keegi ei saa tõestada, et need olid ebaausad, kuna e-häälte ülelugemist ei saa mitte kuidagi korrata.

2011. aasta valimiste e-hääletus toimus 24. veebruarist 2. märtsini ning sedelhääletus 6. märtsil. E‑hääli loendati 6. märtsi õhtul. Eesti seaduse järgi saab kaebusi esitada vaid kolme päeva jooksul pärast vaidlustatava protseduuri toimumist. Kuna e-hääletust arvestatakse sedelhääletusest eraldi, oli kaebuste esitamise viimane päev 5. märts. Magistrant Paavo Pihelgas oli ainus, kes esitas kaebuse õigel ajal. Keskerakord ja sõltumatud kandidaadid üritasid kaebusi esitada, kuid ei suutnud seda teha ettenähtud 72 tunni jooksul.

P. Pihelgas palus Vabariigi Valmiskomisjonil hääletustulemused tühistada, kuna valimisi manipuleerida võivate pahavaraprogrammide tõenäosus tähendas, et ei saa mingit moodi kindel olla, et hääletajate tulemused said õigesti registreeritud. Valmiskomisjon lükkas kaebuse juba järgmisel päeval tagasi, väites, et neil on olemas kõik vajalikud korraldused pahavaraprogrammide tabamiseks tehtud, täpsustamata, mis korraldused need on. Kui P. Pihelgas kaebuse uuesti esitas, saadeti see edasi Riigikohtusse. Riigikohus tühistas kaebuse 21. märtsil, öeldes, et hääletaja saab kaebuse esitada vaid juhul, kui tema õigusi on rikutud.

Olen suhelnud mitmete eestlastega nii enne reisi, selle kestel kui ka pärast. Lugesin ka 2011. aasta märtsis toimunud valimisi jälginud Euroopa Julgeoleku- ja Koostööorganisatsiooni demokraatlike institutsioonide ja inimõiguste büroo (OSCE ODIHRi) meeskonna kirjutatud raportit ja olen rääkinud ühe selle meeskonna liikmega. Saadud informatsiooni tõttu olen jõudnud järeldusele, et Eesti e‑hääletussüsteem on ebaturvaline.

  1. OSCE ODIHRi raportis kirjeldatu järgi on e-hääletussüsteemis mitmeid tõsiseid probleeme.

  2. Hääletajate privaatsus (salajane hääletus) ei ole kaitstud.

  3. Hääletajate arvutid on kaitsetud valimistulemusi moonutada võivate pahavaraprogrammide vastu.

  4. On olemas siseoht.

  5. Server on rünnakute suhtes haavatav igal pool ja igaühe poolt.

  6. E-hääletusüsteem pole avatud ega läbipaistev.

  7. E-hääletussüsteemi ohutust pole uurinud sõltumatud arvutiohutuseksperdid.

Edaspidised märkmed räägivad ülalmainitud probleemidest laiemalt. Et teha vahet OSCE ODIHRi aruande soovitustel ja mu enda kommentaaridel, olen aruande kommentaarid ja soovitused esitanud kaldkirjas.

1.       OSCE ODIHRi aruanne. Esitan mõned probleemid, mis aruandega on avalikustanud:

a)      Valimiskomisjonil pole IT-eksperte; nad toetusid Riigikogu IT-osakonnale. Aruandes on soovitatud luua valmiskomisjoni IT-ekspertiis ja säilitada iga internetihääletuse etapi kohta kirjalikud registrid. Kuigi vajadus IT-ekspertide järele on ilmselge, on vajadus arvutiohutusekspertide järele veel suurem.

b)     Üks programmeerija kontrollis tarkvara, kuid tulemused olid salajased. Aruandes on testitulemused soovitatud veebilehel avalikustada. Praeguseks oleme me teada saanud (seda OSCE ODIHRi meeskond ei teadnud), et lähtekoodi auditit tegi ainsana Martin Paljak, kes jäi haigeks. M. Paljak võis anda küll esialgse suulise tagasiside, kuid ei esitanud kirjalikku lõppraportit.

c)      Projektijuht võis tarkvara uuendada ilma mingisuguse ametliku protseduurita. E-hääletuse projektijuht ütles P. Pihelgasele, et hääletusrakenduse viimased muudatused tehti neli päeva enne esimest hääletuspäeva. See rikub hääletussüsteemi turvalisust väga suurel määral. Projektijuht võis tahtlikult või tahtmatult sisestada tarkvarasse valimistulemusi moonutada võiva koodi või isegi käivitada varem installitud pahavaraprogrammi. Koode, mis on sisestatud viimasel hetkel, pole võimalik kontrollida ega analüüsida.

OSCE ODIHRi aruandes soovitati välja töötada tarkvara kasutuselevõtu ametlik käik ja seada tarkvarauuenduste tähtajad. Samuti soovitati aruandes keelata e-hääletussüsteemi hooldus kogu e-hääletuse kestel.

d)     E-valimise tulemused hävitati 11. aprillil, sest Eesti seaduse kohaselt tuleb kõik hääletussedelid hävitada kuu aja jooksul pärast valimisi. Kuna hääletussedelid hävitatakse, ei ole neid pärast valimisi võimalik analüüsida, see aga on  ilmselgelt ebasoovitav.

e)      Kuigi valimisaktis on osutatud sellele, et valimiskomisjon võib e-hääletuse tulemused kehtetuks muuta, ei täpsustata, mille alusel ja mis oludes saab e-hääletuse tulemused kehtetuks kuulutada. Samuti ei täpsustata aktis, kuidas antakse valijaile teada, et valimispäeval peavad nad paberil uuesti hääletama. OSCE ODIRHi aruandes on nõutud, et koostataks turvaprobleemist  väljumise plaan.

Isegi kui OSCE ODIRHi aruandes esitatud soovitused ellu viia, jääksid püsima suured probleemid. Kui vahetult enne valimiste lõppu korraldataks edukas rünnak (võib-olla nn denial of service, nagu Venemaa korraldas Eestile 2007. aastal), ei pruugi inimestel, kes plaanisid hääletada interneti teel, jätkuda aega, et minna ja hääletada paberil. Veelgi tõsisem on võimalus, et rünnak avastatakse või kurjategijad annavad sellest teada alles siis, kui uus valitsus on juba ametisse nimetatud. Mis siis juhtuks? Kuidas riik reageeriks? Kas kaotajad aktsepteeriksid uut valitsust? Kas väljakuulutatud võitjad lubaksid korraldada uued valimised? Kas inimesed peaksid küsitavaks varasemaid valimisi, mille ajal oli võimalik e-hääletada? Kuidas tuleks Eesti uus ja veel arenev demokraatia toime võimaliku laiaulatusliku umbusaldusega?

Ja loomulikult on olemas ka suurem oht: nimelt see, et valimiste andmetega manipuleeritakse edukalt, ilma et keegi seda avastaks. Seda saab teha, kui rünnata süsteemi neid nõrku kohti, mida kasutatakse häälte kogumiseks ja tabelisse kandmiseks, ja/või sokutades hääletajate arvutitesse pahavaraprogramme, mis võivad valimistulemusi moonutada.

2.       Hääletajate privaatsus ei ole täiesti kaitstud. Tsiteerin Sven Heibergi artiklit „E‑hääletuse rakendamisest 2011. aasta Riigikogu valimistelˮ (artikkel esitatakse konverentsil „VoteID 2011ˮ, mis toimub Eestis 28.−30. septembrini. Artikli saatis mulle S. Heiberg, kes lubas seda tsiteerida):

„Näiteks, e-hääli saab anonümiseerida vaid vähemalt kahe valimisametniku, audiitori ja võimalike vaatlejate juuresolekul. Kõik protseduurid on eelnevalt kirjalikult määratletud, kõik tegevused ja tulemused on salvestatud lindile. Kui neid meetmeid täide ei viida, saavad IVS-i valdajad tugevalt manipuleerida valimistulemustega, lisades või kustutades hääli digitaalsest valimiskastist vahele jäämata.

„E-hääletajate anonümiseerimineˮ tähendab hääletajate nimede eraldamist nende häältest (Häälte anonümiseerimiseks on olemas selline krüptograafiline lähenemine nagu mix-serverite kasutamine, mis säilitab hääletaja anonüümsuse. Kuid see lähenemine on keeruline ja tuleb läbi viia hoolikalt. Ma olen kindlaks teinud, et mix-servereid Eestis ei kasutata).

Anonümiseerimisprotsessi jälgimine tähendab seda, et jälgitakse tehnikut trükkimas käsklust, mis käivitab programmi. Aga kes teab, mida see programm teeb? Kuidas sa saad tõendada, et pole olemas koopiat häältest, mis on seotud hääletajate nimedega? Tõesti, varukoopia peaks olema, muidu on risk, et hääletusandmed kaovad. Sellepärast peaks anonümiseerimine olema järgmine mitmesammuline protsess:

1. Käivita e-häälte koopias skript, mis eraldab e-hääled hääletajate nimedest, luues kaks faili, millest ühes on ainult e-hääled ja teises ainult nimed.

2. Sorteeri üks või mõlemad failid suvalisse järjekorda, et vastavates failides hävitada igasugune järjekorraseos nimede ja häälte vahel.

3. Kontrolli, et andmeid poleks kaotsi läinud ega rikutud protsessi käigus.

4. Tee eraldatud failidest mitu tagavarakoopiat.

5. Hävita KÕIK koopiad ja tagavarakoopiad e-häältest, mis on seotud nimedega. See viimane samm on oluline, kuid olemuselt kontrollimatu. Pole võimalik tõendada, et kõik koopiad on hävitatud (tõenäoliselt on väga raske leida üles KÕIK koopiad, mida süsteem loob tavaliselt rutiinselt), praktikas pole tõenäoliselt võimalik saavutada olukorda, kus kõik koopiad on täielikult hävitatud.

Olemuselt on võimatu vaadelda või tõendada, et kuskile pole alles jäänud andmeid, mis võiksid uuesti luua seose hääletajate nimede ja nende häälte vahel. Hääle privaatsus  ei ole vaadeldav ega auditeeritav vara.

3.       Hääletajate arvutid on kaitsetud valimisi manipuleerida võivate kahjurprogrammide suhtes. On palju näiteid tarkade viiruste ja nn uss-viiruste kohta, nagu näiteks Zeus, mis on varastanud internetipanga kasutajate kontodelt suuri rahasummasid. Spetsiaalselt muudetud Zeusi versioonid on lausa mustal turul saadaval. Uss-viiruse Zeusi kohandamine nii, et see varastaks valimistulemused, oleks üsna lihtne. Nagu Eesti krüptograaf Helger Lipmaa ütleb oma blogis:

„Hääletajate arvutid on ilmselge probleem: enamik inimesi ei tunne arvuteid ja ei oska kontrollida, kas nende arvutid on nakatunud. Isegi kui neil on uusim viirusetõrjeprogramm (milles me ei saa kindlad olla), ei pruugi see programm tuvastada uut kahjurit, mis on kirjutatud spetsiaalselt *selle* valimise jaoks ja valla päästetud just vahetult enne (Märkus: Eesti e-hääletus kestab 3 päeva). See kahjurprogramm võib põhjustada palju kahju, näiteks kaaperdades sinu ja ID-kaardi vahelise ühenduse (põhimõtteliselt lastes ID-kaardil kirjutada vale hääle), graafilise kasutajaliidese ja selle vahel, mis tegelikult arvuti sees toimub, jne. Ma *ei* oleks üllatunud, kui selle tarkvara oleks kirjutanud keskkooliõpilane.ˮ

4.       On olemas siseoht. Lisaks ohule, mida näitab projektijuhi suutlikkus ilma ametliku protseduurita tarkvarauuendusi teha, avaldab OSCE ODIHRi aruanne:

„Igapäevane hääletajate registri värskendus hääletusperioodi jooksul, mida nõuab valimisakt, tehti samaaegselt igapäevase andmetagavara loomisega. Projektijuht pääses serverite ligi igapäevase andmehoolduse ja -tagavara tegemiseks läbi turvakihi, kasutades andmesäilitusvara, mida kasutatakse ka muuks otstarbeks. See tegevus võis tõenäoliselt võimaldada sissepääsu tuvastamatutele viirustele ja pahavaraprogrammidele.ˮ

Lisaks pahavaraprogrammide riskile võib tarkvara igapäevane uuendamine kaasa aidata rünnakule, mis tõstab esile hääletajad, kes hääletavad ühe teatud kandidaadi poolt. Näiteks võivad need hääled „kaotsiˮ minna ja seda pole võimalik järele kontrollida.

5.       Server on rünnakute suhtes haavatav. Üks tõsine Hiinas toimuv internetirünnak Google’ile ja kümnetele teistele firmadele illustreerib seda, kuidas haavatavad on isegi suurkorporatsioonid. Rünnak oli suunatud Google’i tarkvarale, kaasa arvatud süsteemidele, mida tarkvaraarendajad koodi ja Hiina inimõigusaktivistide Gmaili-kontode loomiseks kasutavad. Tervelt 34 firmat oli rünnaku all, sealhulgas Yahoo, Adobe, Juniper Networks, kaitseprogrammide tootja Northrop‑Grumman ja Symantec, mis on suur viirusetõrje- ja antispiooniprogrammide pakkuja. Firmades, mida rünnati, on tööl suur hulk arvutiohutuseksperte ning neil on arvestatav hulk vahendeid ja asjatundlikkust.

Valitsuste kodulehed USAs ja mujal on samuti haavatavad. Ühes 2010. aasta märtsis peetud kõnes ütles USA FBI direktor Robert Mueller, et FBI arvutivõrku on sisse tungitud ja ründajad olid „rikkunud andmeidˮ. Kindral Michael Hayden, endine CIA ja Riikliku Julgeolekuagentuuri

direktor, mainis: „Tänapäeva pangaröövel ei kiirusta äärelinna panka relvadega ja kirjadega, mille ta annab telleri kätte. Ta on veebis, võttes väärtuslikke asju sinult ja minult.ˮ

Arvestades, kui ebakindel on internet, on ebatõenäoline, et server, mis võtab vastu e-hääled, suudaks vastu panna rünnakutele, mis tulevad teiselt riigilt, poliitiliselt parteilt, üksikutelt häkkeritelt jts.

6.       Süsteemil jääb vajaka läbipaistvusest ja avatusest. OSCE ODIHRi raport väidab [rasvases kirjas on minu rõhutus]:

Esiteks, e-hääletuse projektijuht testis tavaliselt müüjalt ostetud tarkvara. Selle kohta ei esitatud ühtegi ametlikku aruannet. Pärast testimist korraldas Küberkaitseliit (KKL) 2011. aasta jaanuaris tarkvara testimise teatud ohuolukordades ja tegi valimiskomiteele aruande, mis oli saadaval küll vaatlejatele, aga mitte avalikkusele. Veebruaris testis KKL internetitaristu funktsionaalsust äärmuslikes oludes ja otsustas luua nn valge nimekirja internetiaadressidest, millelt tulevad e‑hääled vastavad seadusele. Internetiaadresside valgesse nimekirja olid arvatud ka välis­saatkondade netiaadressid..

Samalaadses toimingus tegi valmiskomisjoni palgatud programmeerija kindlaks tarkvara koodi. Programmeerija isik ja tema valimiskomisjonile esitatud aruanne olid salastatud. Seda ei tehtud kättesaadavaks ei OSCE ODIHRi meeskonnale, teistele vaatlejatele ega poliitilistele parteidele.

...Testimine on igasuguste süsteemi puudujääkide leidmisel ülioluline toiming. Valimiskomisjon tegi märkimisväärseid pingutusi, et testida e-hääletuse eri detaile, kusjuures kaasati ka avalikkus. Siiski ei olnud testiaruanded tihtilugu ametlikud või jäeti need salastatuks.

P. Pihelgas palus näha kõiki aruandeid. Hiljuti sai ta teada, et projektijuhi tehtud testide kohta polnud olemas ühtegi kirjalikku aruannet. Samuti sai ta teada, et KKL ei auditeerinud tarkvara. Kuna KKLi raportit varjatakse, esitas P. Pihelgas Andmekaitse Inspektsioonile edasikaebuse. Ta loodab saada testi aruande koopia.

7.       Väliseksperdid pole teinud ohutusuuringut. Igaüks, kes soovib koodi üle vaadata või süsteemi uurida, peab alla kirjutama saladuse hoidmise lepingule. Mitmed silmapaistvad arvuti­ohutus­eksperdid on üles näidanud huvi uurida Eesti e-valimiste süsteemi , kuid keegi ei soovi seda teha saladuses hoidmise lepingu alusel. Üks võimalikke erandeid on tähtajaline saladuses hoidmise kohustus, mis annaks süsteemioperaatoritele aega teha parandusi enne kui aruanne avalikustatakse.

Ma sooviksin tänada oma Eesti võõrustajaid, kes andsid mulle võimalusi tutvuda paremini Eesti e‑hääletuse süsteemiga. Tänu ka eestlastele, kes jagasid minuga süsteemi tehnilist informatsiooni, eriti Paavo Pihelgasele, Priit Kutserile, Helger Lipmaale ja Sven Heibergile. Lõpetuseks, tänu David Jeffersonile väga kasulike kommentaaride eest.

Viimati muudetud: 22.09.2011