[LUGOS-MOZILLA] Thunderbird - zaščita pošte z geslom

Ford Prefect ford.prefect at abakus.si
Mon Nov 1 19:00:21 CET 2004


Zelo pohvalno, ker si se potrudil in tako nadzorno predstavil zadevo. Še 
več takih sporočil bi bilo zaželenih :-)

LP Boris

Matej Kovacic wrote:

> Ziv!
>
>> Ce ti nekdo dekriptira maile, ti tudi kriptiranje ne pomaga. Za 
>> Windowse obstajajo programi, s katerimi lahko "skrivas" izbrane 
>> imenike, ampak mislim, da niso brezplacni. Najbolje, da gres kar z 
>> md5() cez vse maile, bo najbolj varno. ;)
>
>
> No, tole zahteva dodatno pojasnilo. Bo malce daljše, ampak če boste 
> prabrali ne bo nikomur škodilo. :-)
>
> Ko govorimo o varnosti elektronske pošte MED PRENOSOM, govorimo o 
> šifriranju, digitalnem podpisovanju sporočil in overjanju javnih 
> ključev. Sporočilu lahko dodamo tudi potrdilo potrdilo (certificate), 
> ki vsebuje še čas nastanka, podatke o lastniku, rok veljavnosti ipd.
>
> Digitalni podpis zagotavlja verodostojnost sporočila (da ga ni niče 
> spremenil). Naredimo ga takole: z zgostitvenim algoritmom izračunamo 
> "prstni odtis" sporočila, ta prstni odtis pa nato zašifriramo s svojim 
> zasebnim ključem. Prejemnik bo z našim javnim ključem dešifriral 
> podpis (ter pridobil "prstni odtis" v njem), hkrati pa bo iz sporočila 
> ponovno izračunal "prstni odtis” ter ga primerjal s tistim, ki ga je 
> dobil v
> podpisu. Če je sporočilo prišlo do njega nespremenjeno, se oba "prstna
> odtisa" ujemata.
>
> Najbolj znana zgostitvena algoritma sta MD5 in SHA. MD4 je leta 1990 
> razvil Ron Rivest, ga izboljšal in leta 1992 je nastal MD5 (MD = 
> Message Digest).
> SHA-0 pa je leta 1993 razvila ameriška tajna služba National Security 
> Agency. Leta 1995 je NSA v SHA-0 odkrila varnosto luknjo (katere 
> podrobnosti niso hoteli razkriti) in potem je NSA predstavil a SHA-1 
> (SHA = Secure Hash Algorithm). MD5 uporabljajo nekateri stareši 
> sistemi, SHA pa je trenutno najbolj "in".
>
> Torej, če sporočilo "zaščitiš" z MD5, s tem zagotoviš samo to, da boš 
> vedel, če je sporočilo nekdo spremenil. Vsebina bo še vedno vidna.
>
> Razlog, zakaj ljudje pogosto zamešajo MD5 (ali SHA) s šifrirnimi 
> algoritmi pa je v tem, da se zgostitveni algoritmi uporabljajo za 
> shranjevanje gesel v sistemih.
> Ko se prijavim v nek sistem moram vpisati geslo. Kako pa sistem ve, da 
> je geslo pravo? Tudi on mora imeti kopijo gesla.
> Vendar pa je precej nevarno kopijo gesla shraniti v sistem. ČE nekdo 
> vdre v sistem, bo lahko s krajo baze ukradel vsa gesla, ne?
> No, zato se v sistemu shrani samo "MD5 hash" našega gesla. Ko se 
> prijavimo, sistem sprejme naše geslo in izračuna njegov "hash". Potem 
> pogleda v bazo in vidi ali se "hasha" ujemata.
>
> No, zdaj pa pridemo do še ene pomembne zadeve. Zgostitveni algoritmi 
> so enosmerni. To pomeni, da lahko iz gesla izračunam hash, iz hasha pa 
> ne morem dobiti gesla. (Še en razlog zakaj ni dobro sporočila 
> "zaščititi" z MD5 - pote jih ne bi mogli dobiti nazaj!). Druga zadeva 
> pa je, da ne sme priti do kolizije - se pravi, da ne obstajata dve 
> različni gesli, ki bi imeli isti hash.
>
> Letos poleti je bilo precej govoric, da so SHA uspeli razbiti, že pred 
> tem pa so neodvisni raziskovalci demonstrirali uspešen "napad" na MD5 
> in SHA-0. Dejstvo je, da zaenkrat niso našli nič kritičnega, oziroma 
> nič takega, kar bi bilo kritično s stališča navadnega uporabnika.
>
> To je bilo glede MD5.
>
> Zdaj pa glede šifriranja.
>
> Verjetno marsikdo med vamipozna programček Windows Password Changer. 
> Zadeva dela takole. Program posnamemo na bootable CD, CD vstavimo v 
> računalnik in ga zaženemo. Naloži se neka okleščena verzija Linuxa in 
> zažene ta program. Ta program gre gledat v windows datoteko kjer so 
> shranjeni "hashi" gesel, nakar vas vpraša za novo geslo, iz njega 
> izračuna hashin le-tega zapiše v datoteko. Po ponovnem zagonu vpišete 
> novo geslo in ste v Windowsih.
> Seveda lahko spremenite tudi administratorsko geslo.
>
> Tukaj sta zdaj kritični dve zadevi.
> 1. kaj če je v BIOSU onemogočen zagon računalnika iz CDja?
> 2. lastnik računalnika bo opazil, da je bilo geslo spremenjeno (ker 
> njegovo ni več veljavno).
>
> Problem je v tem, da to nista kritični zadevi. 1. Obstajajo namreč 
> splošna ("servisna") BIOS gesla, relativno enostavno pa je tudi iz 
> računalnika vzeti disk ven in ga priklopiti na drug računalnik.
> 2. Nekateri "password changerji" omogočajo "backup" starega "hasha". 
> Stari hash lahko kasneje zapišete nazaj in nihče ne bo vedel, da je 
> bilo geslo vmes spremenjeno.
>
> Kaj pa sedaj?
>
> V tem primeru je najboljša možnost, da imate kritične datoteke 
> spravljene na šifriranem disku. V tem primeru lahko napadalec vzame 
> vaš disk domov, ve vaše administratosko geslo, pa mu še vedno nič ne 
> pomaga - ker ne ve gesla za šifrirani disk.
>
> Seveda obstaja možnost, da bo nekdo delal kriptoanalizo in dešifriral 
> te podatke. Ampak ta možnost je v praksi - če uporabljate varne 
> algoritme zelo majhna. Varni algoritmi so IDEA, AES, itd. Skratka, 
> algoritmi, ki jih vsebuje paket PGP. (OK, pri AES-u so našli neko 
> varnostno ranljivost, vendar je bolj teoretična, oziroma je bil 
> problem v implementaciji - kolikor vem, je zadeva že odpravljena).
>
> Vedno je pa možen "brute force" napad. To pomeni, da napadalec 
> preiskusi vsa možna gesla. Seveda ima lahko srečo in v prvo ugane 
> pravo. Lahko pa ima smolo in bo pravega uganil šele nazadnje. V 
> povprečju, ga ugane na polovici.
>
> Torej izračunajmo koliko časa potrebuje, da preveri vse kombinacije 
> pri 10 mestnem geslu. Uporabimo lahko 25 črk in 10 številk (za 
> enostavnost izračuna bom izpustil ločila). Torej imamo 10^35 
> kombinacij, oziroma 100000000000000000000000000000000000 kombinacij. 
> Recimo, da računalnik lahko preveri 1 milijon kombinacij na sekundo.
> Če se nisem zmotil v izračunu, bi vse možne kombinacije preverili v 
> 3251144402829800000000 letih. V povprečju lahko pričakujemo, da bo 
> napadalec dešifriral naše geslo na polovici tega časa.
>
> OK, druga možnost je pa "klasična" frekvenčna analiza. To so delali 
> med 2. svetovno vojno (in kasneje). Proti temu se borimo z 
> randomizacijo. Če imamo neko dovolj veliko besedilo, in ga 
> zašifriramo, je mogoče ugotoviti frekvenco pojavljanja določenih 
> znakov in zaporedij znakov. Ker je znano kakšne so frekvenčne 
> distribucije za različne jezike, je mogoče ugotoviti katere prave 
> znake predstavlja zaporedje šifriranih znakov. (no, zadeva je malce 
> bolj zapletena, ampak približno tako to gre).
> Kaj pa, če šifriramo ZIP datoteko? No, pri ZIP datoteki je stvar taka, 
> da izgleda naključno. Zato, ker če je porazdelitev znakov dovolj 
> naključna, je psoledica, da je datoteka dobro stisnjena. Če torej 
> šifriramo ZIP datoteko, je frekvenčna analiza bistveno težja (če ne 
> nemogoča). Velja tudiobratno: če imamo dober algoritem, je šifrirano 
> datoteko nemogoče stisniti oziroma je stopnja stiskanja zelo majhna.
>
> Pri šifriranem disku pa imamo naslednji problem. Recimo, da imam disk 
> velik 600 Mb, podatkov pa le za 100 Mb. Torej je mogoče ugotoviti, da 
> je  500 Mb praznega prostora. Ker tudi vemo kakšne so nekatere 
> datoteke (recimo ThunderBird.exe, itd.) imamo že velikovhodnih 
> podatkov. Praktično nam manjkajo samo še maili, ki pa so šifrirani po 
> enakem ključu kot exe in ostale datoteke iz profila, za katere pa 
> imamo in vhodne in izhodne podatke.
> Zato priporočam, da šifrirani disk napolnite z naključnimi znaki - le 
> ti se še dodatno zašifrirajo. Torej bo napadalec imel kot vhodni 
> podatek znano število znanih datotek (exe,...), neznano število mailov 
> in neznano število naključnih podatkov. Ker je vse premešano, si ne 
> more pomagati s frekvenčno analizo, ker ne more ločiti kaj je kaj.
>
> Skratka - krriptoanaliza je možna, vendar v praksi zelo težko 
> izvedljiva. Za razliko od dostopa do diska, ki je v praksi zelo 
> eostavno izvedljiv.
>
> Če se komu vse skupaj zdi zapleteno, naj si zapomni le tole:
> 1. šifriranje diska je smiselno, ker je mogoče do podatkov na disku 
> priti relativno enostavno;
> 2. predvsem so kritični podatki na prenosnikih, ki nam ga lahko kdo 
> ukrade, pa tudi: računalnik lahko odnesemo na servis, domov nam lahko 
> pride policija ali SOVA, v službi ima dostop do računalnika sodelavec 
> ali šef,... ja, ADSL ali kabel uporabniki so lahko tarča hekerjev, ki 
> imajo kompleten dostop do vašega diska preko interneta;
> 3. obstaja brezplačni odprtokodni program PGPdisk;
> 4. priporoča se, da se PGPdisk napolni z naključnimi znaki (s 
> programom CleanDisk Security).
>
> In ja, grožna je realna, saj sem za 1. in 2. videl kar nekaj primerov, 
> kako enostavno je priti do "zaščitenega" računalnika.
>
> lp, Matej
>



More information about the lugos-mozilla mailing list