Bezpečnost internetových hlasovacích systémů (CNIL)

Český neoficiální překlad praktického listu CNIL.

Se začátkem aplikace GDPR a po konzultacích s odborníky za účelem zlepšení bezpečnosti řešení elektronického hlasování, zejména prostřednictvím internetu, CNIL aktualizovala své doporučení ohledně těchto zařízení.

Dne 25. dubna 2019 přijala CNIL doporučení týkající se bezpečnosti elektronických poštovních hlasovacích systémů, zejména prostřednictvím internetu. Představuje správcům údajů, kteří si přejí používat takový hlasovací systém, s přístupem podle úrovně rizika a bezpečnostních cílů, kterých má být dosaženo.

Doporučení je doplněno praktickým listem, který představuje dvoustupňovou metodologii:

  • analytická mřížka pro stanovení úrovně zabezpečení, kterou musí elektronický poštovní volební systém, zejména prostřednictvím internetu, respektovat;
  • úrovně bezpečnostních cílů s příklady neomezujících prostředků, které mají být implementovány k dosažení těchto cílů.

Krok 1: Vyplňte mřížku analýzy

Následující tabulka založená na uzavřených otázkách má správcům dat pomoci určit úroveň zabezpečení, které musí jejich systém dosáhnout.

 Pravda (0)nepravda (1)
Otázka 1:
Hlasování lze odložit, například v případě incidentu.
  
Otázka 2: Hlasování se týká méně než 50 lidí.  
Otázka 3: Hlasování se týká méně než 1000 lidí.  
Otázka 4: Jsou možné i jiné způsoby hlasování (u volební urny, na dálku atd.).  
Otázka 5:
Volené osoby nemají žádnou rozhodovací pravomoc.
  
Otázka 6: Všichni voliči jsou na území státu.  
Otázka 7: Všichni voliči jsou na evropském území.  
Otázka 8: Nebyl zjištěn žádný prvek naznačující, že by mohl být ovlivněn hladký průběh voleb (konkrétní hrozby apod.).  
Otázka 9: Potvrzení hlasování nevyžaduje formální důkaz řádného chování.  
Otázka 10: Uspořádání ankety není zákonnou povinností.  
Celkem  

Správce údajů počítá „1“ za každou odpověď, kde zadá „nepravda“. Součet jedniček mu umožňuje získat skóre a určit tak očekávanou úroveň řešení:

  • mezi 0 a 2 body, řešení musí splňovat cíle úrovně 1;
  • mezi 3 a 6 body, řešení musí splňovat cíle úrovně 2;
  • mezi 7 a 10 body, řešení musí splňovat cíle 3. úrovně.

Po dokončení tohoto kroku může správce údajů určit bezpečnostní cíle, kterých musí řešení hlasování dosáhnout.

Krok 2: Stanovte bezpečnostní cíle

Výrobci, dodavatelé řešení hlasovacího systému, tak mohou poskytnout jakékoli adekvátní prostředky ke splnění cíle. Nezávislá odbornost řešení musí zdůraznit, zda je navrhované řešení relevantní, aby na něj bylo možné reagovat.

Výrobci, kteří si to přejí, mohou zaslat CNIL popis prostředků, které považují za přijatelné a které navrhují ve svém řešení za účelem splnění cílů uvedených v doporučení. CNIL je může prostudovat a v případě potřeby tento list aktualizovat.

Komise by ráda zdůraznila, že prostředek k dosažení cíle je platný pouze tehdy, je-li jeho operativní provádění prováděno relevantním a správným způsobem. Komise opakuje, že pouze studie provedená nezávislými odborníky umožní správci údajů ujistit se, že stanoveného bezpečnostního cíle bylo plně a správně dosaženo.

Cíle zabezpečení 1. úrovně

  • Bezpečnostní cíl č.  1-01: implementovat kvalitní technické a organizační řešení, které nevykazuje žádné zásadní nedostatky (chyby zveřejněné vydavatelem a/nebo zveřejněné třetími stranami).

Řešení: Použijte nejnovější stabilní a aktualizované verze operačních systémů, webových serverů, šifrovacích řešení a databází mobilizovaných v řešení. Měly by být také použity veřejné šifrovací protokoly a algoritmy, o kterých je známo, že jsou „silné“.

  • Bezpečnostní cíl č.  1-02: definovat hlasování voliče jako atomovou operaci zahrnující volbu, potvrzení, registraci hlasovacího lístku do volební urny, podpis a doručení potvrzení.

Řešení: Jakmile volič definitivně potvrdí svůj hlas, všechny výše uvedené operace musí následovat po sobě bez přerušení až do dokončení poslední akce, tedy do vystavení účtenky. Selhání akce znamená selhání celého řetězce a naopak úspěch řetězce je možný pouze díky hladkému průběhu každé z jednotných akcí.

  • Bezpečnostní cíl č.  1-03: Ověřit voliče tím, že zajistíte výrazné snížení hlavních rizik souvisejících s krádeží identity.

Řešení: Volič se autentizuje pomocí páru identifikátoru a osobního hesla, které mu bylo předáno bezpečným způsobem (prostřednictvím dvou samostatných komunikačních kanálů). Soubor voličů obsahující autentizační prvky je uchováván zabezpečeným způsobem. V případě ztráty nebo odcizení jejich ověřovacích prostředků postup umožňuje voliči hlasovat a činí ztracené nebo odcizené ověřovací prostředky nepoužitelnými.

  • Bezpečnostní cíl č.  1-04: zajistit přísnou důvěrnost hlasovacího lístku od jeho vytvoření na počítači voliče.

Řešení: Zašifrujte hlasovací lístek na voličské pracovní stanici, na straně klienta a před jeho vydáním pomocí veřejného algoritmu, o kterém je známo, že je „silný“.

  • Bezpečnostní cíl č.  1-05: zajistit přísnou důvěrnost a integritu hlasovacího lístku při jeho přepravě.

Řešení: Použijte zabezpečený kanál pro směrování hlasovacího lístku, který je již sám zašifrován (viz bezpečnostní cíl č. 1-02), z volební místnosti do elektronické volební urny. V případě použití certifikátů si je vyberte a používejte na úrovni 2, pokud možno v souladu s doporučeními RGS a na úrovni 3 v souladu s doporučeními RGS.

  • Bezpečnostní cíl č.  1-07: zajistit úplné utěsnění mezi identitou voliče a vyjádřením jeho hlasu po celou dobu zpracování.

Řešení: Nemít žádné spojení mezi voličem a jeho zašifrovaným hlasovacím lístkem po odevzdání hlasu. Bulletin není na rozdíl od prezenční listiny opatřen časovým razítkem a bulletin a seznam jsou uloženy v samostatných úložných prostorech.

  • Bezpečnostní cíl č.  1-08: posílit důvěrnost a integritu dat distribucí utajení umožňující sčítání výhradně v rámci volebního úřadu a zaručením možnosti sčítání od stanoveného prahu utajení.

Řešení: Vygenerujte alespoň tři klíče a požadujte, aby alespoň dva z těchto klíčů byly nezbytné pro umožnění počítání. Generování klíčů musí být provedeno veřejným způsobem a klíč musí být uložen na bezpečném médiu, které má v držení pouze předseda úřadu a jeho posuzovatelé.

  • Bezpečnostní cíl č.  1-09: definovat počítání jako atomovou funkci použitelnou až po uzavření hlasování.

Řešení: Možnost sčítání by měla být aktivována až po uzavření hlasování a zapečetění volební urny a prezenční listiny. Jakmile je operace skinování aktivována, nelze ji přerušit, dokud nebude plně provedena a dokončena. Částečné sčítání tedy nelze provést.

  • Bezpečnostní cíl č.  1-10: zajistit integritu systému, volební urny a prezenční listiny.

Řešení: Zajistěte, aby byl nasazený systém identický se systémem auditovaným nezávislým odborníkem, který provedl expertizu pověřenou správcem údajů. Otisky prstů prvků musí vypočítat odborník a lze je přepočítat v systému za účelem jejich porovnání a ověření. Volební urna a prezenční listina musí být zapečetěny a při zapečetění vypočítán otisk.

  • Bezpečnostní cíl č.  1-11: zajistit, aby sčítání hlasovacích uren bylo možné ověřit a posteriori.

Řešení 1: Možnost přepočítání počtu: za tímto účelem ponechte všechny prvky potřebné k tomu, aby bylo možné prokázat, že stažená volební urna je skutečně ta, která obsahuje hlasy voličů, kteří své hlasy odevzdali (voličů), a pouze těch; zachovat prvky nezbytné k opětovnému provedení postupu pro sčítání hlasů.

Řešení 2: Možnost prokázat, že sčítání proběhlo bez chyby: za tímto účelem uschovejte všechny prvky potřebné pro ověření kryptografického důkazu, který ukazuje, že odizolovaná volební urna obsahuje hlasy voličů, kteří odevzdali svůj hlas (voličů) a pouze posledně jmenovaný a že byl správně započítán.


Bezpečnostní cíle 2. úrovně

  • Bezpečnostní cíl č.  2-01: zajistit vysokou dostupnost řešení.

Řešení: Mít infrastrukturu dimenzovanou na podporu voleb a očekávané zátěže. Redundantní systém je zajištěn záložním zařízením schopným převzít řízení v případě poruchy hlavního systému a nabízí stejné záruky a vlastnosti.

  • Bezpečnostní cíl č.  2-02: zajistit automatickou kontrolu integrity systému, volební urny a prezenční listiny.

Řešení: Vypočítejte v nepravidelných a nepředvídatelných intervalech otisk výše uvedených prvků a porovnejte je s referenční hodnotou vypočtenou proti proudu (viz bezpečnostní cíl č. 1-08).

  • Bezpečnostní cíl č.  2-03: umožnit, aby volební úřad automaticky kontroloval integritu volební platformy během hlasování.

Řešení: Poskytnout volebnímu úřadu zařízení umožňující přímou kontrolu plnění bezpečnostního cíle č. 2-02 z kontrolní obrazovky.

  • Bezpečnostní cíl č.  2-04: Ověřit voliče tím, že zajistíte, aby se významně snížila velká a menší rizika spojená s krádeží identity.

Řešení 1: Volič se autentizuje pomocí elektronického certifikátu, zvoleného a používaného v souladu s doporučeními RGS.

Řešení 2: Volič se autentizuje pomocí páru osobních identifikátorů a hesel, které mu byly předány bezpečným způsobem (dva samostatné kanály) a odpoví na netriviální otázku výzva-odpověď (vyloučí se tedy datum narození a jakákoliv jiný snadno zjistitelný prvek), na který jako jediný zná odpověď (se správcem údajů).

V případě ztráty nebo odcizení jejich ověřovacích prostředků postup umožňuje voliči hlasovat a činí ztracené nebo odcizené ověřovací prostředky nepoužitelnými.

  • Bezpečnostní cíl č.  2-06: využívat informační systém implementující fyzická a logická bezpečnostní opatření doporučená vydavateli a ANSSI.

Řešení: Aplikujte osvědčené postupy uváděné v dokumentaci editory, zejména editory hlasovacích řešení, ale také editory webových serverů, aplikačních serverů a databázových editorů. Aplikujte v závislosti na konkrétním případě osvědčené postupy ANSSI uvedené v příručkách „  Doporučení pro zabezpečení webových stránek  “, „  Doporučení zabezpečení týkající se TLS  “, „  Doporučení zabezpečení týkající se IPsec  “, „  Konfigurace doporučení systému GNU/Linux  “ , “  Bezpečnostní doporučení týkající se systému GNU/Linux  „, “ Bezpečnostní doporučení týkající se běhových prostředí Java na pracovních stanicích Microsoft Windows  “ a inspirujte se dokumentem „  Hloubková ochrana informačních systémů  “ a  hygienickou příručkou .

  • Bezpečnostní cíl č.  2-07: zajistit transparentnost volebních uren pro všechny voliče.

Řešení: Ujistit co nejvíce voliče, kteří nemají přístup k odborným znalostem řešení hlasování, zaručující řádné fungování systému a upřímnost a integritu hlasování jako celku. To má umožnit voličům, aby se ujistili, že jejich hlasovací lístek byl započten ve volební urně a že hlasovací lístky jsou správně sestaveny.

Udělejte toto:

Každá potvrzení o hlasování obsahuje jedinečné informace, zcela nesouvisející s identitou voliče (digitální otisk prstu, náhodné číslo, „důkaz nulových znalostí“ atd.), které se vypočítávají, když volič potvrdí svůj výběr hlasu. Elektronická hlasovací platforma přijímá informace a zveřejňuje je, aby je zpřístupnila všem voličům. Každý volič tak může mít záruku, že jeho hlasovací lístek je skutečně ve volební urně.

Hlasovací řešení navíc umožňuje voličům přístup do testovacího prostoru, kde je možné provádět různá zkušební hlasování a sledovat, co vzejde z otevření hlasovacího lístku na serveru, přičemž cílem je zajistit, aby byly zpravodaje správně sestaveny.


Cíle zabezpečení 3. úrovně

  • Bezpečnostní cíl č.  3-02: Umožnit všem voličům průhlednost volebních uren pomocí nástrojů třetích stran.

Řešení: Postupujte stejně jako u bezpečnostního cíle č. 2-07, navíc proveďte kontroly na cizím stroji, realizovaném externím hlasovacím partnerem.

  • Bezpečnostní cíl č.  3-03: zajistit velmi vysokou dostupnost hlasovacího řešení zohledněním rizik velkých škod.

Řešení: Mít infrastrukturu dimenzovanou na podporu očekávané zátěže vyvolané volebním procesem. Redundantní systém je zajištěn záložním zařízením schopným převzít řízení v případě poruchy hlavního systému a nabízí stejné záruky a vlastnosti. Poskytněte redundantní napájení pro každý stroj a také přístup k internetu pro infrastrukturu. Místa hostující hlavní a záložní infrastrukturu musí být dostatečně vzdálená a správně umístěná, aby pokryla přírodní rizika.

  • Bezpečnostní cíl č.  3-04: umožnit volebnímu úřadu automatickou a manuální kontrolu integrity platformy během hlasování.

Řešení: Poskytněte úřadu možnost ručně spustit kontrolu integrity platformy kromě automatické kontroly stanovené v cíli č. 2-03.