Kako varen je TEPHIA SECURE?
Kako se šifrirajo vaše datoteke, kaj je shranjeno na naših strežnikih – in kaj bi dobil napadalec, ki bi jih v celoti prevzel. Brez marketinških fraz, zato pa pregledno.
Šifrirano v brskalniku
Vaše datoteke se šifrirajo, preden zapustijo vaš računalnik, in dešifrirajo šele pri prejemniku.
Ključ nikoli ne pride do strežnika
Vsaka pošiljka ima lastno naključno geslo z 32 znaki. Naš strežnik ga nikoli ne vidi.
Metapodatki za dokazilo
Beremo lahko samo metapodatke, ki jih potrebuje dokazilo o dostavi, na primer ime datoteke, naslove in časovne podatke.
Kako deluje šifriranje
- GesloVaš brskalnik ustvari naključno geslo: 32 znakov, približno 190 bitov.
- KljučArgon2id iz njega izpelje ključ, zaradi česar je vsako ugibanje drago.
- ŠifriranjeAES-256-GCM šifrira datoteko in zazna vsako poznejšo spremembo.
- NalaganjeŠele nato datoteka odide, prek TLS 1.2 ali 1.3. Geslo ostane pri vas.
Geslo ni del povezave. Posredujete ga po drugi poti, na primer v ločenem e-poštnem sporočilu ali po telefonu. Kdor prestreže samo povezavo, datoteke ne more odpreti.
Nabiralnik
Kdor vam oddaja dokumente, jih na enak način šifrira v svojem brskalniku. Strežnik pozna samo kontrolno vrednost gesla, s katero ni mogoče ničesar dešifrirati.
Izjema: da lahko geslo znova najdete, vam ga ob ustvarjanju nabiralnika pošljemo po e-pošti. Enkrat gre prek strežnika in se ne shrani.
Dodatek za Outlook
Dodatek šifrira neposredno v Outlooku. Geslo gre prek vašega lastnega e-poštnega sistema, ne prek našega strežnika; same datoteke pa ne gredo prek vašega e-poštnega sistema.
Dva načina: TEPHIA SECURE vsakemu prejemniku pošlje njegovo povezavo, geslo pa je v vašem sporočilu; ali pa je povezava v vašem sporočilu, geslo pa sledi v drugem. Kdor ima povezavo in geslo, lahko prevzame – kot pri vsaki dostavi po e-pošti. Pri drugem načinu lahko prevzem omejite na naslove prejemnikov; takrat je potrebna še koda iz njihovega poštnega predala.
Tehnične podrobnosti
- Izpeljava ključa: Argon2id s 64 MB pomnilnika, 4 prehodi in 2 nitmi, nato HKDF-SHA256
- Šifriranje: AES-256-GCM, z lastno naključno soljo (32 bajtov) in IV (12 bajtov) za vsako pošiljko
- Šifriranje po blokih: datoteka se šifrira in naloži v blokih po 8 MiB, vsak blok z lastnim nonceom (IV XOR številka bloka); številka bloka in oznaka zadnjega bloka kot dodatni overjeni podatki (AAD) preprečujejo, da bi bloke zamenjali, izpustili ali odrezali. Tako so mogoče datoteke do 2 GB
- Brez WebAssembly (če ga na primer blokira pravilnik podjetja): PBKDF2-SHA512 z enim milijonom ponovitev
- Več datotek ali map se pred šifriranjem v brskalniku zapakira v ZIP
- Prenos: TLS 1.2 ali 1.3 s popolno tajnostjo naprej (forward secrecy), HSTS za dve leti, stroga politika Content Security Policy
- Gesla za prijavo: scrypt s posamično soljo; drugi faktor je obvezen
Kaj je na našem strežniku
Samo šifrirano ali sploh ne
- Vsebina vaših datotek: samo šifrirano
- Geslo in ključ pošiljke: nikoli
- Geslo nabiralnika: samo kontrolna vrednost
- Gesla za prijavo: samo kot zgoščena vrednost
- Prijava z Microsoftom: nič, to ostane pri Microsoftu
- Plačilni podatki: nič, hrani jih Stripe
Berljivo, za dokazilo
- Imena in velikosti datotek, pri ZIP tudi imena v njem
- Oznaka in sporočilo
- Pošiljatelj z imenom, naslovom in organizacijo
- Naslovi prejemnikov, če povezavo pošljemo mi ali je prevzem omejen
- Časovni podatki, naslov IP in približna lokacija ob prevzemu
- Kontrolne vsote (SHA-256) datotek, izračunane v vašem brskalniku
Sporočila s povezavo za vaše prejemnike in obvestila, kot je »Vaša datoteka je bila prevzeta«, pošiljamo prek Microsoft 365 in Hornetsecurity (posredovanje, pregled virusov in neželene pošte). Ne vsebujejo imen datotek, temveč samo oznako, ki jo izberete sami, ali število datotek; gesla pošiljke ni v nobenem našem sporočilu. PDF z dokazilom o dostavi, ki imena datotek vsebuje, je priložen samo, če to vklopite v svojem računu.
Kaj če kdo prevzame strežnik?
Izhajamo iz najslabšega primera: napadalec ima popoln nadzor nad strežnikom, podatkovno zbirko in shrambo datotek.
Kaj bi dobil
- Šifrirane datoteke, ki so trenutno na strežniku – brez gesla neberljive
- Metapodatke: kdo je komu kaj poslal in kdaj, imena datotek in naslove. Ime, kot je »Razveza_Novak.pdf«, že nekaj razkrije.
Česa ne bi dobil
- Vsebine preteklih pošiljk in nabiralnikov: gesla nikoli niso bila na strežniku, 190 bitov pa ni mogoče razbiti s preizkušanjem
- Izbrisanih datotek: niso niti v nobeni varnostni kopiji
- Microsoftovih gesel in plačilnih podatkov
Kako se pred tem varujemo
- Kratka hramba: datoteke se po prevzemu izbrišejo. Česar ni več, tega ni mogoče ukrasti.
- Koda iz enega vira: spletna aplikacija nalaga svojo kodo samo z našega lastnega strežnika, stroga politika Content Security Policy pa preprečuje vrinjeno kodo.
- Zaklenjen dostop: vzdrževanje samo s ključem in samo iz določenih omrežij; organizacije so poleg tega ločene v podatkovni zbirki.
- Obveščanje v sili: če odkrijemo vdor, prizadete organizacije obvestimo brez nepotrebnega odlašanja (33. člen GDPR).
Kako dolgo bi trajalo razbijanje prestrežene datoteke?
Tudi z milijardo grafičnih kartic bi napadalec v povprečju potreboval približno 4 × 1037 let.
Recimo, da nekdo prestreže šifrirano datoteko – med prenosom ali s strežnika. Brez gesla mu ostane le preizkušanje gesel. Toliko časa bi za to v povprečju potreboval:
Za primerjavo: vesolje je staro približno 1,4 × 1010 let. Celo milijarda grafičnih kartic bi potrebovala približno 1027-krat dlje.
Zakaj traja tako dolgo
- Dolga naključna gesla: vsaka pošiljka dobi lastno geslo z 32 znaki, ustvarjeno v vašem brskalniku. To je približno 2,3 × 1057 možnosti (190 bitov).
- Vsak poskus je drag: preden je geslo mogoče preveriti, mora iti skozi Argon2id s 64 MB pomnilnika in štirimi prehodi. To namerno upočasni grafične kartice in specializirano strojno opremo.
- Sam ključ (AES-256) bi bilo z 2256 možnostmi še težje uganiti kot geslo.
Kaj pa kvantni računalniki?
Po današnjem vedenju kvantni računalnik pri preizkušanju možnosti število bitov kvečjemu prepolovi. Od 190 bitov bi jih računsko ostalo 95, vsak poskus pa bi moral še vedno iti skozi Argon2id. Tudi to je daleč zunaj vsake predvidljive računske moči.
Številke so ocenjene velikodušno v korist napadalca in zaokrožene na eno veljavno števko. Izračunano je povprečje, torej polovica vseh možnosti.
Realni napadi zato ne ciljajo na šifriranje, temveč na geslo: kdor dobi povezavo in geslo skupaj, mu ni treba ničesar razbijati. Zato gresta vedno po ločenih poteh – glejte Kaj lahko storite sami.
Kje in kako dolgo se hranijo podatki
Kaj lahko storite sami
- Geslo in povezavo pošljite ločeno, nikoli v istem sporočilu.
- Prijavljajte se z Microsoftom in izklopite prijavo z geslom ali pa uporabite varnostni ključ ali ključ za dostop.
- Izberite nevtralna imena datotek, če je že samo ime zaupno.
- Prevzem omejite na naslove prejemnikov: potem povezava in geslo sama ne zadostujeta.
Omejitve, ki jih odkrito navajamo
- Metapodatki, kot so imena datotek, naslovi in časovni podatki, so za nas berljivi, ker jih potrebuje dokazilo.
- Geslo nabiralnika gre ob ustvarjanju nabiralnika enkrat prek našega strežnika, Microsoft 365 in Hornetsecurity.
- Microsoft in Hornetsecurity vidita, kaj vsebujejo naša sporočila: pošiljatelja, oznako, vaše sporočilo, povezavo, časovne podatke – brez imen datotek in nikoli gesla pošiljke.
- Preverjanje pri pošiljanju v dodatku za Outlook dostavlja Cloudflare, da pošiljanje e-pošte ni odvisno od dosegljivosti našega strežnika. Cloudflare pri tem vidi naslov IP in identifikator brskalnika, ne vsebine.
- Kontrolna vsota vsake datoteke je za nas berljiva. Ne razkrije vsebine, pokaže pa, ali je bila prenesena že znana datoteka.
- Kot pri vsakem šifriranju v brskalniku je zaščita novih pošiljk odvisna od tega, da je koda spletne aplikacije dostavljena nespremenjena – zato sam strežnik varujemo posebej skrbno.
Ste odkrili ranljivost? Zaupno jo prijavite na naslov v naši datoteki security.txt.