Bezpečnosť eIDklient-a

Problematika

Na prácu so štátnymi elektronickými službami je potrebné mať nainštalovaný program eIDklient. Tento program je closed source a nikde nieje zdokumentované čo presne robí. Program v predvolenom nastavení beží neustále na pozadí od spustenia počítača.
Klient musí mať nainštalovaný a spustený každý občan pracujúci s el. službami.

Riziko

V prípade kompromitácie serverov odkiaľ sa program sťahuje, alebo v prípade zneužitia aktualizačného procesu može útočník vytvoriť celonárodný botnet, zneužiť prístup k el. bankovníctvu, atd.

Ideálne riešenie

Zmena eIDklient na open source.
Zverejnenie checksums pre každú vydanú verziu. Prípadne iná implementácia validity sťahovania programu.
Zverejnenie dokumentácie (čo to vlastne robí).
Udržovanie zoznamu všetkých vydaných verzií spolu s informáciami o zmenách.
Zverejnenie roadmapy vývoja.

Dodatočné riešenie

Vytvoriť nezávislú status stránku obsahujúcu hore uvedené informácie, na základe pravidelných nezávyslých kontrol.
Na pravideľnej báze sťahovať eIDklient. Extrahovať verziu. Vytvoriť checksum.
Spúštať eIDklient vo VM a monitorovať správanie (konektivitu, zápis/čítanie súborov, spôsob auktualizácie…).
Dekompilovať samotný program a zanalyzovať čo to vlastne robí.

PR

Ideálnu projekt napr. pre antivírusovú spoločnosť, ktorá može eIDklient pravideľne analyzovať a zverejnovať potencionálne nájdené riziká. Zvýši sa tým tlak na štát, a spoločnosť si može budovať PR: "Chránime digitálne Slovensko"™

4 Likes

Ocenujem strukturovany pristup k problematike, bodaj by si ho osvojili aj niektori dalsi diskutujuci :slight_smile: ak by sa z toho stal open source, urcite by sa naslo zopar white hats ktori by a v tom posturalo :slight_smile: dolezity je samzrejme cely release a version management eid klienta , aj ked to nie je opso tak checsums, release notes atd by tu mali byt

  • eID klient ako open source: áno, malo by to tak byť, nielen kvôli bezpečnosti, dokumentácia samozrejme s tým
  • changelog, roadmapa: to by malo byť samozrejmé
    (tieto veci samozrejme nezachránia kompromitáciu serverov alebo ak je deravý update)
    .
  • checksums: v pohode môžu zverejniť, ale napr. win msi balík je digitálne podpisovaný, cert. autorita I.CA, subjekt “Ministerstvo vnutra Slovenskej republiky”,
    .
  • nezávislá status stránka: super, založíš ju?
1 Like

Riesenia uz existuju, napr.:

@Lubor “status stranka”: problem nieje vytvorenie stranky a zobrazovanie aktualnych info, problem je tie info zistovat.

Podla mna by sa to malo tykat aj podpisovaca (d.signer), ktory je potrebne mat nainstalovany na plnohodnotne pouzivanie UPVS.
Navyse binarky eID klienta/podpisovaca by mal byt dobre digitalne podpisane dakou statnou instituciou a nie len dodavatelom. Teraz su tak podpisane len instacky.

1 Like

Mam zopar veci k eid po dnesnom rozhovore s clovekom z fachu (je aj na platforme, tak ma mozno opravi/doplni):

  • podpisuje sa hash dokumentu, cize ak je kompromitovany pocitac moze teoreticky podhodit karte iny hash po autentifikacii pinom a ziskat tak podpis
  • kedze nie je jasne ako autentifikacny server overi, ze clovek overil svoju identitu BOKom, tak su mozne rozne dohady. Napr. ak sa server prihlasuje do karty vlastnym certifikatom (BOK sluzi na autentifikaciu obcana, iny kanal moze byt autentifikovany inaksie a s inymi opravneniami) a priamo z nej precita, ci je platna session usera, tak ake ma opravnenia ku karte? Vie napr. pouzit privatny kluc obcana na podpis?
  • implementuje driver na komunikaciu s kartou standardny interface pre api alebo su tam vendor lockove pridavky?
  • ak by releasli specifikaciu na driver s kartou, tak by sa napr. dala spravit apka v mobile, ktora by komunikovala s kartou skrz bluetooth citacku

Vychadza mi z toho, ze je velmi dolezite tlacit na to, aby specifikacie pre driver aj nastavenie os karty boli public. Mam pocit, ze pri problematike eid autentifikacie/podpisovania s.d. zatial neslo (verejne?) moc do hlbky a IMHO je to jedna z najdolezitejsich veci.

Kopa vecí sa tu rieši dokola, viď. napr. eID - objednávka na dorobenie
Je tam aj požiadavka na open source.
Neviem do akej presne hĺbky by si si predstavoval že pôjdeme. Na MV sme už vo februári vysvetľovali čo by mali spraviť, naposledy som o tomto hovoril s p.Sakovou na Itape toť pred týždňom.

2 Likes

Ok, good. Na ten sumar som zabudol. Este by som tam pridal zverejnenie nastavenia kariet, napr. kto vsetko a akym sposobom ma do nich pristup.

“Do kariet” v zmysle komunikácie s autentifikačnou časťou má prístup iba MV SR. Aj ak sa to napr. využíva na prihlásenie ku slovensko.sk komunikácia ide postupne: slovensko.sk -> IAM ÚPVS -> https://eidas.minv.sk/ -> eID klient + karta <-> eID auth server. Cez IAM ÚPVS je spravené SSO použiteľné pre všetky ISVS. Kto sa dohodne s MV môže to celé použiť tiež.

Certifikáty na podpisovanie/šifrovanie môže použiť každý sw na klientskom PC, štandardne cez PKCS#11 a vo Win aj cez Crypto API.