Sunteți pe pagina 1din 13

Magic Password: generarea si stocarea codurilor, parolelor si

informatiilor sensibile
Autor: MSc. Cezar RaŃă, Director Executiv, 3Q ELSONET srl – Membru A.R.S.S.

Abstract
Autentificarea cu parola implica construirea unor parole puternice (lungi, complexe, unice
si generate aleator), rezistente la atacuri, iar stocarea si utilizarea lor sa fie facuta in
siguranta. Managementul local al parolelor si informatiilor sensibile presupune indeplinirea
celor trei cerinte esentiale de securitate: confidentialitatea, integritatea si disponibilitatea
parolelor si informatiilor sensibile precum si a celor derivate din acestea asa cum sunt
descrise in literatura de specialitate. Aplicatia Magic Password rezolva problema
managementului local, indeplineste recomandarile SP-800-118 si in plus are optiuni de
securitate pentru parolele create si stocate, pentru mesajele stocate si optiuni de
autosecurizare ce nu se regasesc in alte aplicatii similare.

Keywords: managementul parolelor, generarea parolelor, autentificare, credentiale, criptare, atacuri.

1 Introducere
Tot mai multe conturi ale persoanelor fizice sau ale institutiilor sunt sparte, principalul
„vinovat” fiind parola prea slaba (vezi 3.1) sau stocata necorespunzator (vezi 3.3).
Acest articol este menit sa atraga atentia cititorului asupra pericolului la care este expus
cand se autentifica cu parola si propune masuri si mijloace de atenuare sau chiar eliminare a
riscurilor.
Exista multe articole in publicatiile de specialitate, dar si in cele de informare generala, care
trag un semnal de alarma cu privire la pericolele de care trebuie sa se tina cont la autentificare 1 , 2 , 3.
Folosind credentialele sustrase fraudulos atacatorii incearca sa goleasca conturile
victimelor, sa obtina secrete tehnice si comerciale sau informatii de securitate in vederea declansarii
unor atacuri viitoare. Importanta si necesitatea protejarii credetialelor si informatiilor sensibile este
direct proportionala cu dimensiunea pagubelor ce pot fi produse.
Furtul dispozitivelor mobile (smartphone, tableta) pe care sunt pastrate impropriu securizat
parole si informatii sensibile creste semnificativ riscul divulgarii acestor secrete. Dimensiunea
problemei este evidentiata si in raportul „2012 NORTON CYBERCRIME REPORT”, pag .9 4, in
care se precizeaza ca 35% din adulti si-au pierdut sau li s-a furat dispozitivul mobil.
Multitudinea de credentiale (username si parole) pe care un utilizator trebuie sa le
memoreze duce la pastrarea necorespunzatoare a acestora, utilizarea aceleeasi parole pentru
autentificarea pe mai multe sisteme sau utilizarea unor parole prea slabe. Mai multe statistici care
scot in evidenta dimensiunea problemei sunt prezentate in „2013 GLOBAL SECURITY REPORT”,
pag 54 5.
Toate aceste vulnerabilitati si atacuri arata necesitatea administrarii parolelor si
informatiilor sensibile prin dezvoltarea unor tehnologii de management adecvate. Administrarea se
poate face la nivel de organizatie sau la nivel de utilizator. Tehnologiile care se adreseaza
utilizatorului poarta numele de management local si implica crearea si schimbarea periodica a
parolelor, stocarea securizata a parolelor si informatiilor sensibile dar si facilitati de operare rapida
cu acestea.

1
Suita de articole despre parole furate, http://www.ziare.com/articole/parole+furate+hackeri
2
Utilizatorii de internet folosesc parole ce pot fi usor de aflat, http://www.wall-street.ro/articol/IT-C-
Tehnologie/78891/Utilizatorii-de-internet-folosesc-parole-ce-pot-fi-usor-de-aflat.html
3
90% din parole sunt vulnerabile in fata hackerilor, http://www.manager.ro/articole/itsic/90procente-din-parole-sunt-
vulnerabile-in-fata-hackerilor-28214.html
4
http://now-static.norton.com/now/en/pu/images/Promotions/2012/cybercrimeReport/2012_
Norton_Cybercrime_Report_Master_ FINAL_050912.pdf
5
http://www2.trustwave.com/rs/trustwave/images/2013-Global-Security-Report.pdf

1
Desi au fost create multe aplicatii pentru managementul local al parolelor doar o parte
indeplinesc cerintele de securitate (confidentialitate, integritate si disponibilitate) si de
administrare prezentate in NIST, SP 800-118 Guide to Enterprise Password Management [5.].
Prezentul articol incearca sa focalizeze atentia cititorului asupra implementarii si respectarii
cerintelor de securitate IT in sistemele de securitate fizica si a pericolelor la care expune sistemele pe
care le administreaza si pe beneficiarii acestora sau chiar propria persoana.
In acest articol este tratat managementul local al parolelor si informatiilor sensibile.
Managementul la nivel de organizatie ar putea fi abordat intr-un alt articol.
In continuare, dupa o scurta prezentare a autentificarii, sunt analizate cerintele de securitate
a parolelor (capitolul 3 Parole) impreuna cu pericolele la care sunt expuse (capitolul 4 Atacuri
impotriva parolelor). Concluziile trase evidentiaza necesitatea administrarii parolelor si informatiilor
sensibile (capitolul 5 Managementul Parolelor si Informatiilor Sensibile) de catre o aplicatie
specializata.
In ultima parte a articolului este propusa o aplicatie pentru managementul local al parolelor
si informatiilor sensibile (capitolul 6 Magic Password) ce indeplineste cerintele de securitate
prezentate in NIST, SP 800-118 Guide to Enterprise Password Management dar care are si functii de
securizare suplimentare.
Articolul n-ar putea fi incheiat fara a aduce multumiri celor care au ajutat la publicarea lui si
fara prezentarea listei cu referintele bibliografice utilizate.
Termeni specifici ce apar in articol:
confidentialitate - proprietatea de a pastra secretul informatiei, pentru ca aceasta sa fie folosita
numai de persoanele autorizate
credentiale – text utilizat pentru identificare si autentificare (username si parola)
disponibilitate - Asigurarea accesului rapid si fiabil la informatie
valoare hash – sau „message digest” sau „digest” este rezultatul unei functii „one-way” Hash 6
integritate - proprietatea de a evita orice modificare (inserare, stergere, substitutie) neautorizata a
informatiei
Phishing – utilizatorul este convins sa introduca credentialele intr-un formular pe un site fals care
arata exact ca cel original
Social Engineering – aflarea unor informatii confidentiale prin exploatarea slabiciunilor omenesti
(utilizatorul divulga aceste informatii fara voie si in necunostinta).

2 Autentificarea
2.1 Despre identificare si autentificare
Pentru a i se permite accesul (autorizarea) intr-un sistem (hardware sau software) un
utilizator trebuie sa se identifice (spune ca este „username”) si sa se autentifice (dovedeste ca este
acel „username”) folosind parole, token sau caracteristici biometrice. Perechea {username, parola}
adica {identificator, autentificator} trebuie sa fie unica intr-un sistem ce necesita autentificare.
Autentificarea este procesul de stabilire a increderii in identitatea electronica a
utilizatorului la un sistem sau echipament. [4.].
Identificarea si autentificarea se pot face simultan prin introducerea unui cod PIN (Personal
Identification Number) ce consta dintr-un sir (relativ scurt) de cifre si care este utilizat pentru
autentificarea rapida.
Parolele care contin mai multe cuvinte ce formeaza o propozitie se numesc passphrase si
au avantajul ca sunt usor de memorat.
Atat codul PIN cat si passphrase sunt variante ale parolei utilizate pentru autentificare. In
continuare prin termenul parola se va intelege referirea la toate cele trei variante (parola, cod,
passphrase).

6
http://csrc.nist.gov/publications/fips/fips180-4/fips-180-4.pdf

2
2.2 Moduri de autentificare
Pentru autentificare utilizatorul poate folosi ceva „ce stie” (parola), ceva ce utilizatorul
„este” (ex: amprenta sau altceva biometric) sau ceva ce utilizatorul „detine” (ex: smart card). Astfel
se deosebesc trei moduri de autentificare:
• Single-factor authentication – utilizarea unuia din cele trei moduri de autentificare
• Two-factor authentication – utilizarea simultana a doua din cele trei moduri de
autentificare
• Three-factor authentication – utilizarea simultana a celor trei moduri
Multi-factor authentication – utilizarea a mai mult de un mod de autentificare simultan, in
fapt este un termen general pentru two-factor si three-factor authentication.
Se pot spune multe despre autentificare dar prezentarea intregii problematici depaseste
scopul acestui articol care trateaza managementul local al parolelor si informatiilor sensibile.

3 Parole
Autentificarea cu parola este metoda cea mai des utilizata dintre toate mijloacele de
autentificare dar si cea mai vulnerabila, mai ales atunci cand este impropriu administrata. Parolele
sunt utilizate pentru autentificarea utilizatorilor in aplicatii software, in diferite sisteme hardware sau
software, pentru protectia informatiilor prin derivarea cheii de criptare din parola.
Crearea cheilor de criptare sau a parolelor prin derivarea unei parole master trebuie sa se
faca conform PKCS #5 v2.1: Password-Based Cryptography Standard [15.] si in baza recomandarii
NIST, SP 800-132 Recommendation for Password-Based Key Derivation [6.] ce specifica foarte clar
cerintele.
3.1 Taria parolelor
Taria unei parole este determinata de lungimea, complexitatea si impredictibilitatea aparitiei
caracterelor in componenta sa si se exprima prin doi parametri:
• „keyspaces” (spatiul cheilor) - numarul de variante posibile ale cheii, in cazul nostru a
parolei.
• „entropy” (entropia) – incertitudinea valorii parolei

3.1.1 Spatiul parolelor


Spatiul parolelor, in cazul de fata, este acelasi lucru cu keyspaces si reprezinta numarul
maxim de valori pe care le poate lua parola. Cu cat keyspacess are o valoare mai mare cu atat parola
este mai greu de ghicit prin metoda „brute-force”, conform tabelului urmator [5.].
Tabel 1 - "Keyspaces" in functie de setul de caractere si lungimea parolei

3
Exemplu: prin atacul "brute force", o parola de 32 caractere poate fi gasita in 3,3  10
ani (miliarde de miliarde de … miliarde de ani). [8.]

3.1.2 Entropia parolelor


Masoara incertitudinea valorii unei parole, se noteaza cu H, se exprima in biti si are
formula [4.]NIST, SP 800-63-1 Electronic Authentication Guideline:

  
unde:
b = este setul de caractere utilizat
l = lungimea parolei
Cu cat valoarea este mai mare cu atat parola este mai puternica.

3.1.3 Parole puternice si parole slabe:


Mai jos sunt prezentate caracteristicile parolelor puternice si cand putem caracteriza o
parola ca fiind slaba. Evolutia puterii de calcul si a tehnicilor de atac pot schimba valorile prezentate.
• Parola puternica:
o Trebuie sa contina minim 15 caractere
o Trebuie sa contina litere mici, MARI, cifre si simboluri
o Sa poata fi tastata rapid (reduce observarea „peste umar”)
• Parola slaba
o contin mai putin de 15 caractere
o sunt sau contin un cuvant din dictionar
o este un cuvant comun: nume de persoana, animal de companie, oras, numele
companiei, etc.
o este sau contine data nasterii, adresa, numar de telefon
o este un sablon de numere sau litere cum ar fi: 123321, abccba, etc.
3.2 Crearea parolelor
Exista doua moduri de creare a parolelor: prin generare aleatoare (sau pseudoaleatoare) si
prin construirea ei de catre utilizator. Cele doua moduri sunt antagonice, astfel parolele generate
aleator sunt puternice dar greu de memorat iar cele construite de utilizator sunt usor de retinut dar
slabe.

3.2.1 Generarea aleatoare a parolelor


Este o metoda recomandata dar care are inconvenientul ca parola este greu de memorat.
Daca aplicatia permite setarea lungimii si a setului de caractere si are un generator de numere
aleatoare bun atunci rezulta parole puternice.

3.2.2 Crearea parolelor


Utilizatorul alege o parola folosindu-se de propria imaginatie dar in cele mai multe cazuri
acesta utilizeaza cuvinte intregi din dictionar sau parti din acestea, serii de caractere de pe tastatura,
adrese, numere de telefon, ani de nastere etc. Desi sunt usor de memorat parolele rezultate sunt si
usor de ghicit 7, alegerea unor astfel de parole fiind o greseala mare si frecventa a utilizatorilor.

3.2.3 Crearea parolelor puternice si usor de memorat.


Pentru crearea parolelor puternice si usor de memorat s-au dezvoltat mai multe
metodologii [5.]:
• Metoda mnemonicii – se selecteaza o fraza si se extrage cate un caracter din fiecare
cuvant, apoi se adauga numere si simboluri
• Passphrases alterate – se ia o fraza si i se altereaza forma
• Combinarea si alterarea cuvintelor - se combina doua sau trei cuvinte fara legatura intre
ele si se schimba unele litere cu numere sau caractere speciale.
In capitolul 7.2, Construirea unei parole puternice si usor de memorat, sunt date legaturi la
resurse de unde cititorul poate obtine informatii suplimentare.

7
http://www2.trustwave.com/rs/trustwave/images/2013-Global-Security-Report.pdf

4
3.3 Stocarea parolelor

3.3.1 Stocarea parolelor in fisiere criptate


Este o metoda larg raspandita si cu un grad de securitate, in general, ridicat dar care depinde
de algoritmul de criptare folosit (ex: DES este depasit), lungimea cheii de criptare, generarea
pseudoaleatoare si pastrarea securizata a cheii de criptare. Cantitatea mare de text criptat cu aceeasi
cheie creste probabilitatea descoperii ei.
La momentul scrierii articolului, unul dintre cei mai puternici algoritmi recomandati de
NIST (National Institute of Standards and Technology) este AES 256 8.

3.3.2 Stocarea parolelor in cloud


Este o tehnologie in curs de maturizare chiar daca este prezentata ca o varianta foarte sigura
de stocare a datelor sensibile si parolelor (si nu numai).
In primul rand se pune intrebarea: cum se respecta cerinta de securitate „disponibilitatea
datelor” in cazul in care nu exista conexiune la internet (nu exista acoperire, sunt probleme tehnice
sau a expirat creditul de pe cartela)?
Cateva aspecte de securitate in cloud sunt prezentate de unul din „greii” planetei in materie
de securitate, Bruce Schneider, in Yet Another Risk of Storing Everything in the Cloud 9 si in Cloud
Computing 10.

3.3.3 Memorarea parolelor de catre utilizator


Cate parole are un utilizator obisnuit? Parola la:
• Calculator, minim una (posibil minim trei, calculator acasa, calculator birou, laptop)
• Reteua WiFi de acasa
• e-mail, minim un cont de e-mail (posibil cont e-mail personal, cont e-mail job)
• Reteaua de socializare (minim una)
• Sistemul de securitate de acasa (eventual un cod de utilizare, un cod master, parola DVR)
• Smartphone, tableta
• Cod PIN la card
In concluzie minim 5 parole si 2 coduri. Daca utilizatorul administreaza si alte sisteme
numarul de parole se ridica la zeci sau sute, iar daca punem la socoteala si faptul ca parolele trebuie
inlocuite periodic rezulta un numar impresionant.
Test: Cate parole cu 16 caractere precum aceasta KJ}e9)X=zf3CGHJ6 reusiti sa memorati?
In concluzie memorarea parolelor complexe, puternice si unice nu este o solutie viabila si
trebuie folosite alte metode.

3.3.4 Stocarea parolelor cu aplicatii dedicate


Cele prezentate mai sus arata necesitatea utilizarii unei aplicatii dedicate pentru
managementul parolelor, subiect caruia i-am dedicat intreg capitolul 5 Managementul parolelor si
informatiilor sensibile.
Managementul parolelor cu aplicatii dedicate este modul recomandat de persoane sau
organizatii implicate in securitate si combina stocarea fisierelor criptate cu memorarea uneia sau
doua parole puternice (Master) avand in plus functii de securizare specifice fiecarei aplicatii.

4 Atacuri impotriva parolelor


Amenintarile si atacurile se pot manifesta asupra confidentialitatii, integritatii sau
disponibilitatii parolelor si sunt grupate in patru categorii dupa cum urmeaza: Capturarea directa a
parolei, Ghicirea si spargerea parolelor, Inlocuirea parolei si Reutilizarea parolelor compromise.

8
http://csrc.nist.gov/publications/nistpubs/800-131A/sp800-131A.pdf
9
http://www.schneier.com/blog/archives/2012/08/yet_another_ris.html
10
http://www.schneier.com/blog/archives/2009/06/cloud_computing.html

5
4.1 Capturarea parolei
O parola poate fi capturata cand este stocata ori transmisa sau cand atacatorul se foloseste
de comportamentul si cunostintele utilizatorului si il determina, prin metode non-tehnice, sa divulge
parola.

4.1.1 Capturarea parolelor stocate


Daca stocarea parolelor nu este facuta in mod securizat atunci un atacator care are acces
fizic si logic la sistem le poate obtine prin utilizarea unor unelte de furat („trojans horses”), prin
copierea parolelor pastrate in text clar sau prin spargerea fisierelor slab criptate si extragerea textului.
O alta vulnerabilitate este creata de stocarea nesecurizata a parolelor in format electronic
(fisier in laptop, tableta, telefon) sau pe hartie iar aceasta este furata sau pierduta. Solutia este
utilizarea unei aplicatii specializate pentru formatul electronic si pastrarea hartiilor cu parolele in clar
cel putin incuiate si cu acces strict limitat.
Securizarea parolelor pe partea de „server” excede subiectul acestui articol dar sunt facute
totusi cateva precizari. Astfel, un atacator care obtine accesul fizic si logic la sistemul „server”, unde
se face autentificarea, poate citi si copia parolele stocate nesecurizat. Prevenirea acestui fapt se face
prin criptarea fisierelor care contin parolele, utilizarea functiilor de control acces pentru limitarea
accesului la fisierele cu parole, pastrarea valorii hash criptata in loc de parolele in clar.

4.1.2 Capturarea parolelor transmise


Autentificarea la un sistem necesita si transmisia credentialelor pe retea sau prin internet.
Criptarea parolelor la transmisie si securizarea canalului de comunicatie nu pot fi controlate de
utilizator asa ca nu vor fi tratate in acest articol.
Utilizatorul nu are nici un motiv sa transmita parola pe vreun canal de comunicatie (e-mail
sau orice alta modalitate de schimb de mesaje). Daca totusi o face, parola trebuie criptata in mod
adecvat, iar comunicatia sa se faca pe un canal securizat.
Atacatorul poate utiliza tehnica „sniffing” adica interceptarea traficului de retea si
extragerea datelor confidentiale din acesta. Exista mai multe atacuri derivate din aceasta tehnica 11.
Solutia: utilizarea criptarii si semnarii mesajelor si transmiterea lor pe un canal securizat.

4.1.3 Cunoasterea utilizatorului si a comportamentului sau


Atacatorul urmareste obtinerea parolelor prin metode non-tehnice cum ar fi phishing, social
engineering, observarea miscarilor la tastare, observarea parolei in timp ce este tastata prin
observarea directa de aproape (privirea „peste umar”) sau de la distanta cu un binoclu sau metode
tehnice cum ar fi „keylogger”.
Spionare – utilizatorul si activitatea sa este observata continu, astfel atacatorul
monitorizeaza dispozitivul (calculator, tableta, smartphone) si reteaua in care este conectat si
inregistreaza toate credentialele.
Phishing presupune pacalirea utilizatorului sa-si introduca parola si username pe un site
clonat si astfel acestea sa fie copiate. Social engineering este un atac extrem de complex si
presupune exploatarea slabiciunilor omenesti si a increderii. Solutie: educarea utilizatorilor asupra
riscurilor la care se expun.
Utilizatorul se poate apara impotriva acestor atacuri in special printr-o atentie sporita in
utilizarea parolelor si prin utilizarea de programe dedicate de securizare.
4.2 Ghicirea si spargerea parolelor
Sunt tehnici de atac prin care se incearca sa se obtina parolele slabe (ghicirea parolelor) prin
incercari repetate sau prin refacerea parolele din valoarea hash a acestora (spargerea parolelor).
Ghicirea este metoda utilizata cand atacatorul are acces la interfata iar spargerea cand atacatorul a
obtinut deja valoarea hash a parolei.

11
http://technet.microsoft.com/en-us/library/cc959354.aspx

6
4.2.1 Ghicirea parolelor
Atacatorul incearca sa gaseasca parola prin diferite tehnici iar sansele de reusita sunt cu atat
mai mari cu cat parola este mai slaba.
Atacul de tip dictionar: atacatorul incearca sa ghiceasca parola testand cuvintele dintr-un
dictionar. Este un atac relativ rapid si are de multe ori ca rezultat obtinerea parolei. Solutie: parolele
NU trebuie sa contina cuvinte clare sau parti din cuvinte
Forta bruta („brute-force”): atacatorul testeaza toate combinatiile posibile ale parolei.
Atacul necesita timp si putere de calcul. Solutie: lungimea parolei cat mai mare.
Atac hibrid: atacatorul imbina atacul tip dictionar folosind cuvinte din dictionar +
combinatii de caractere si numere speciale cu atacul „brute-force”. Solutie: parole generate aleator si
cat mai lungi si mai complexe.
Solutie generala: cresterea complexitatii, lungimii si schimbarea periodica a parolei.
Schimbarea periodica reduce si riscul „spargerii” mecanismului de pastrare a parolei (in principiu
baza de date).

4.2.2 Spargerea parolelor


Atacatorul incearca sa refaca parolele din datele care sunt stocate pe dispozitiv sau
transmise pe un canal de comunicatie.
Parolele stocate pe dispozitiv sunt protejate, de obicei, prin criptare cu o parola master
pastrata ca valoare hash si nu in clar. Atacul consta in incercarea de a gasi un sir text care genereaza
acelasi valoare hash ca cea al parolei master. Viteza de cautare poate fi crescuta prin utilizarea
„Rainbow Tables” care este o tabela cu valori hash precalculate din care se incearca pe rand fiecare
valoare. Protectia impotriva unui asemenea atac se face prin schimbarea periodica a parolelor
utilizate si a celei master; o alta varianta poate fi studiata in capitolul 6 Magic Password – solutia
pentru managementul parolelor si mesajelor.
4.3 Atac prin inlocuirea parolei
Atacatorul poate desfasura cu succes un atac inlocuind parola existenta cu una cunoscuta de
el. Aceasta se poate realiza prin tehnici de Social Engineering, prin patrunderea in sistemul pe care
se face autentificarea sau printr-o simpla cerere de resetare a parolei. Tratarea subiectului depaseste
scopul acestui articol.
4.4 Atac prin reutilizarea parolelor compromise
Atacatorul utilizeaza o parola compromisa (obtinuta prin una din metodele prezentate mai
sus sau oricare alta) pana la schimbarea ei de catre utilizator. De aceea este recomandat ca toate
parolele sa fie schimbate dupa o perioada de timp stabilita in functie de importanta (de fapt
importanta sistemului unde se autentifica), lucru usor de realizat daca se utilizeaza o aplicatie de
management a parolelor si foarte greu, daca nu chiar imposibil, cand acestea trebuie memorate.
Atentie: trebuie evitata inlocuirea parolelor de genul „ValoareParola1” cu
„ValoareParola2”.
4.5 Alte amenintari
Utilizarea frecventa a aceleasi parole pentru autentificarea pe un site creste riscul
deconspirarii, solutia fiind schimbarea periodica a parolei.
Utilizarea parolelor „default” sau a variantelor acestora (1234, admin, master, etc.).
Utilizarea in parole a:
• Numelui de utilizator sau alt text ce apare in inregistrarea contului.
• Unui cuvant care apare in orice dictionar sau jargon.
• Titlurilor de filme, carti, melodii etc.
• Secventelor de caractere care apar pe tastatura (ex: qwerty).
• Cuvintelor scrise in ordine inversa sau repetate (ex: home – emoh, homehome).
• Cifrelor adaugate inainte sau dupa cuvinte (ex: 1home sau home1).
• Informatiilor personale, nume sot, sotie, copii, adresa, etc.

7
Evolutia in timp a puterii de calcul si a tehnicilor de atac creste riscul aflarii parolei, solutia
fiind cresterea tariei parolei prin cresterea lungimii si a setului de caractere utilizat precum si prin
schimbarea acesteia la intervale de timp mai mici.

5 Managementul parolelor si informatiilor sensibile

Solutiile de management a parolelor includ crearea, compozitia si stocarea parolei si sunt


destinate sa reduca riscul de compromitere a parolelor si sistemelor unde se face autentificarea, sa
reduca numarul de parole ce trebuie memorate de la zeci (sute) la una sau doua, sa asigure
confidentialitatea si integritatea parolelor si informatiilor sensibile, precum si disponibilitatea
acestora doar pentru utilizatorul autorizat.
Exista solutii de management a parolelor pentru sistemele unde se face autentificarea si
solutii care se adreseaza direct utilizatorului (Local Password Management). Cele pentru utilizator
stocheaza username, parole si informatii sensibile intr-un mod securizat si usor de utilizat.
Recomandarile NIST, SP 800-118 Guide to Enterprise Password Management [5.]
detaliaza cerintele necesare solutiilor de management a parolelor la nivel local si „enterprise”.
5.1 Caracteristici ale aplicatiilor de gestionare a parolelor si mesajelor sensibile
Caracteristici pentru aplicatiile de management local al parolelor recomandate de NIST, SP
800-118 Guide to Enterprise Password Management [5.]:
• Functionare: utilizatorul selecteaza un cont din lista, parola se afiseaza, utilizatorul o
copiaza si o pune in campul parola.
• Aplicatia trebuie sa se inchida automat dupa o anumita perioada de inactivitate.
• Sa stearga automat bufferul de memorie folosit la copierea parolei.
• Sa existe posibilitatea de backup a bazei de date si a informatiilor.
• Sa utilizeze o parola Master puternica, greu de ghicit sau spart.
• Sa utilizeze algoritmi (si implementarile acestora) aprobati de Federal Information
Processing Standard (FIPS).
• Utilizatorul trebuie sa faca update manual la baza de date dupa fiecare modificare a unei
parole.
• Aplicatia trebuie sa permita setarea setului de caractere (cifre, litere mici, mari, simboluri)
si a lungimii pentru fiecare parola in parte, la alegerea utilizatorului, pentru adaptarea
usoara la diferite sisteme.
• Sa poata administra separat parolele cu impact major (importante) de cele normale.
• Sa nu permita salvarea de parole si informatii sensibile in mod nesecurizat.
• Crearea si inlocuirea parolelor sa se faca usor pentru facilitarea schimbarii periodice.
• La evenimente imprevizibile (crash, etc...) nu trebuie sa ramana parole si informatii
nesecurizate, pe HDD, SD, Flash sau alta memorie nevolatila.
5.2 Cerinte pentru sistemele de securitate fizica
In functie de dimensiune si complexitate administratorul unui sistem de securitate fizica
trebuie sa genereze si sa pastreze cod instalator sau parola de administrator pentru fiecare subsistem
(antiefractie, CCTV, control acces) sau pentru componente ale subsistemelor cum ar fi DVR-urile.
Codul instalator si parola de administrator ar fi bine sa fie unice pentru fiecare sistem in
parte, astfel incat divulgarea sau predarea lui de catre alte persoane sa nu puna in pericol restul
sistemelor.
Tendinta actuala este de a unifica securitatea fizica si logica a unui sistem si astfel sa nu mai
existe doua departamente distincte de securitate [3.].

6 Magic Password – solutia pentru managementul parolelor si mesajelor

Aplicatia Magic Password (http://www.3q.ro/ro/magic_password.html ) implementeaza


recomandarile din SP 800-118-Guide to Enterprise Password Management [5.] elaborate de NIST
referitoare la managementul local al username, parolelor si mesajelor cu date sensibile.

8
Important: Magic Password asigura utilizatorului controlul total asupra procesului de
creare si stocare a parolelor si mesajelor cu informatii sensibile fara implicarea niciunei aplicatii
exterioare, stocarea pe vreun server sau in cloud [14.].
6.1 Caracteristici Magic Password

6.1.1 Caracteristici din recomandarile NIST SP 800-118


• Reduce numarul de parole ce trebuie memorate de la sute (teoretic un miliard) la una sau
maxim doua.
• Asigura confidentialitatea si integritatea datelor prin criptarea bazei de date cu AES 256.
• Datele parolelor (si nu parolele) sunt stocate intr-o baza de date criptata pe propriul
dispozitiv (nu in cloud sau pe un server undeva), astfel nefiind necesara conexiunea la
internet pentru obtinerea ei (caracteristica de disponibilitate a informatiilor).
• Aplicatia poate face backup oricand se doreste pentru pastrarea datelor pe un mediu
exterior.
• Disponibilitatea parolelor si informatiilor sensibile: In cazul pierderii/furtului
dispozitivului cu aplicatia Magic Password parolele pot fi generate din Baza de Date si
alfabetul salvat si pastrat pe un CD folosind orice dispozitiv pe care este instalat Android
2.2 sau mai mare.
• Utilizare usoara: se selecteaza un username si se genereaza parola corespunzatoare.
• Aplicatia se inchide automat dupa o perioada de timp (intre 2 si 9 minute) setabila de
utilizator si averizeaza periodic asupra acestui lucru.
• Sterge automat parola din clipboard dupa o perioda de 30-120 secunde (setabila de
utilizator)
• Face backup si restaureaza baza de date si informatiile sensibile. Baza de Date si mesajele
cu informatii sensibile din backup sunt pastrate criptat, astfel, fiind securizate pot fi pastrate
pe un CD sau alt suport extern fara a mai fi necesara o alta criptare.
• Parola Master si parola de Confirmare poate avea pana la 50 caractere. Acestea pot fi si o
passphrase.
• Respecta standardele aprobate de FIPS si recomandarile NIST astfel:
o Pentru criptarea Bazei de Date si mesajelor - Advanced Encryption Standard (AES)
(FIPS PUB 197) cu lungimea cheii de 256 biti.
o Pentru generarea parolelor si cheilor de criptare dintr-o parola master - NIST, SP
800-132 Recommendation for Password-Based Key Derivation
o Pentru operatii de digest a parolelor - Secure Hash Standard (SHA 256) (FIPS
PUB 180-4).
o Standarde de autentificare - NIST, SP 800-63-1 Electronic Authentication
Guideline
o Pentru managementul local a parolelor - NIST, SP 800-118 Guide to Enterprise
Password Management
• Dupa setarea/modificarea datelor unei parole, Baza de Date se updateaza automat.
• Se genereaza pseudoaleator parole cu lungimea intre 4 si 32 caractere (lungimea este
setabila de catre utilizator). Astfel se pot genera si coduri de 4 caractere, gen cod PIN.
• Se poate seta setul de caractere (cifre, litere mici, litere mari, simboluri) pentru fiecare
parola in parte, de catre utilizator.
• Complexitatea parolelor creste pana la maxim posibil. Astfel pentru parolele cu lungimea
de 32 caractere si compuse din cifre, litere mici, litere mari, si simboluri (94 caractere)
rezulta:
o spatiul parolelor este 94 1,38  10 (numarul de valori posibile ale parolei)
o entropia 
94   209 (este o masura a dificultatii in determinarea
parolei) [4.]
• Parola se poate seta ca normala sau foarte importanta caz in care se cere o parola de
Confirmare.
• Criptarea Bazei de Date si a informatiilor se face automat, fara interventia utilizatorului
astfel fiind eliminat riscul de greseala.
• Faciliteaza schimbarea parolelor dupa un anumit timp prin atentionarea utilizatorului la
expirarea perioadei si prin „stocarea” parolei vechi. Numarul de zile dupa care aplicatia
face atentionarea este setabil de catre utilizator intre 1 si 999, pentru fiecare parola in parte.
Aceasta functie asigura prevenirea reutilizarii parolelor compromise.

9
• Mesajele sunt decriptate in memoria volatila si astfel in cazul unor evenimente inprevizibile
informatiile sensibile nu raman stocate decriptat.
6.1.2 Caracteristici suplimentare
• Important – aplicatia Magic Password stocheaza in Baza de Date doar o parte din
elementele constituente (de constructie) si nu parolele in clar, criptate sau valoarea hash a
lor.
• Important – parolele Master si Confirmare NU sunt pastrate pe dispozitiv (in software sau
Baza de Date) sau pe un server sau Cloud.
• Se poate crea cate o parola pentru fiecare resursa ce necesita autentificare (sistem sau
echipament).
• Poate crea si stoca cate o parola de criptare pentru fiecare mesaj criptat sau pentru grupuri
de mesaje.
• Toate datele aplicatiei (doar ale aplicatiei) se autodistrug in cazul in care se incearca
ghicirea parolei Master, (numarul de incercari este setabil de catre utilizator).
• Aplicatia permite reset general si astfel se poate incarca o noua Baza de Date cu alta Parola
Master
• Taria parolelor: pentru parolele cu lungimea de 32 caractere si compuse din cifre, litere
mici, litere mari, si simboluri (94 caractere) spatiul parolelor este 94 1,38  10 .
Prin atacul „brute-force” o parola poate fi gasita in 3,3  10  (miliarde de miliarde de
... miliarde de ani) [8.] http://en.wikipedia.org/wiki/Brute-force_attack.
• Se pot crea parole in limba dorita prin setarea unui alfabet propriu, introdus de utilizator.
• Aplicatia poate stoca peste un miliard de parole (depinde de capacitatea dispozitivului).
• Informatiile pot fi usor si rapid gasite in Baza de Date prin organizarea lor dupa dorinta si
criteriile utilizatorului.
• Aceeasi Baza de Date si acelasi alfabet pot fi folosite pe mai multe dispozitive si astfel se
pot genera aceleasi parole folosind dispozitive diferite.
• Aplicatia este foarte personalizabila; utilizatorul poate face multe setari dupa propria
dorinta.

6.1.3 Caracteristici de autosecurizare


• Parola este generata printr-un proces complicat utilizand algoritmi puternici precum: SHA
256, AES 256, PBKD ce utilizeaza ca date de intrare: datele de constructie a parolei, parola
Master, parola de Confirmare si „Codul de Securitate” rezultand o parola aleatoare, unica,
complexa si puternica.
• Aplicatia a fost conceputa sa-si conserve caracteristicile de securitate chiar daca un
atacator:
o Fura dispozitivul (smartphone, tableta) cu tot cu aplicatie: trebuie parola Master
pentru pornirea aplicatiei si generarea parolelor.
o Fura fisierele backup si:
• Le citeste cu o alta aplicatie – Baza de Date este criptata si in plus aici sunt
stocate datele parolelor si nu parolele in sine deci furtul este inutil. Baza de
Date mai contine un „Cod de Securitate”, criptat la randul sau si care practic
personalizeaza Baza de Date. Chiar si obtinerea tuturor elementelor nu duce la
generarea parolelor corecte deoarece trebuie si parola Master iar pentru
parolele setate ca importante trebuie si parola de Confirmare. Mesajele pot fi
criptate fiecare in parte cu propria cheie de criptare (este optiunea
utilizatorului) deci incercarea de spargere a lor este practic inutila.
• Le citeste cu o aplicatie identica – trebuie parola Master si parola de
Confirmare pentru mesajele importante.
o Fura Baza de Date decriptata de pe dispozitiv: baza de date sta decriptata pe
dispozitiv doar cat timp aplicatia este pornita.
o Obtine cumva printr-o metoda inedita baza de date decriptata: in Baza de Date
se stocheaza datele parolelor si nu parolele in sine si in plus exista si „Codul de
Securitate” care personalizeaza datele. Deci generarea parolei este imposibila doar
cu aceste elemente.
o Obtine un mesaj decriptat cu informatii sensibile: numai mesajul care este
vizualizat curent este decriptat si in plus este tinut doar in memoria volativa (se

10
sterge automat la pierderea alimentarii, la inchiderea aplicatiei, etc...), deci situatia
practic nu poate exista.
o Obtine parola Master: este insuficient, trebuie baza de date, alfabetul si in cazul
parolelor importante trebuie si parola de Confirmare.
6.2 Spargerea si ghicirea parolelor generate cu Magic Password
Intrucat nici o parola nu este pastrata in Baza de Date spargerea acesteia devine inutila si nu
duce la obtinerea vreunei parole.
Ghicirea parolelor este de asemenea improbabila deoarece sunt generate aleator din
elemente constituiente ce nu sunt toate stocate in Baza de Date sau in alta parte.
Complexitatea parolei poate fi aleasa de utilizator prin setarea numarului si setului de
caractere folosit. In plus, in Magic Password utilizatorul poate seta parola ca fiind foarte importanta
si astfel se cere o parola de confirmare.
Datorita modului de constructie a parolelor de catre Magic Password aflarea unei parole de
catre un atacator nu pune in nici un fel in pericol celelalte parole. Pur si simplu se genereaza o
versiune noua a parolei (va fi automat total diferita de cea veche) si situatia este rezolvata.
Incercarea repetata a atacatorului de ghicire a parolei Master duce la stergerea tuturor
datelor aplicatiei Magic Password, numarul de incercari poate fi setat de utilizator si se recomanda sa
fie scazut pe masura ce utilizatorul se obisnuieste cu aplicatia.
Deoarece parolele finale nu sunt stocate in Baza de Date atacatorul nu are element de
comparatie in incercarea de spargere a parolelor prin incercari succesive de generare a unor parole
care sa dea acelasi rezultat chiar daca foloseste „Rainbow table”. Setarea unui alfabet particular cu
caractere din alta limba creste dificultatea utilizarii „Rainbow table”. In constructia aplicatiei pentru
crearea parolelor se utilizeaza si o valoare de salt, generata aleator, astfel incat utilizarea „Rainbow
table” este si mai dificila.
6.3 Probleme din domeniul securitatii fizice pe care le rezolva aplicatia
• Memorarea codurilor instalator si personalizarea lor pentru fiecare beneficiar in parte
• Faciliteaza schimbarea periodica a codurilor si parolelor.
• Memorarea codurilor si parolelor multiple pentru un client (de catre instalator)
o Cod instalator alarma
o Cod instalator (parola administrator) DVR
o Cod instalator (parola administrator) echipament de control acces
o Cod instalator (parola administrator) soft de control acces
o Cod router (parola administrator)
o Datele de conectare la reteaua locala si internet cu parolele aferente
6.4 Testarea aplicatiei
Daca doriti sa testati aplicatia o puteti face la http://www.3q.ro/magic_password.html, aici
gasiti link-uri la pentru descarcare de la Samsung, Amazon, si Google Play.

7 Recomandari
7.1 Recomandari pentru utilizarea parolelor din standardul ISO-IEC 27002
• Parola trebuie pastrata confidentiala (departe de ochii curiosi) in timpul introducerii,
pastrarii si manipularii.
• Trebuie evitata pastrarea parolelor pe hartie, in fisiere sau pe dispozitive mobile intr-un
mod nesecurizat.
• Parolele trebuie schimbate oricand exista un indiciu ca sunt compromise.
• Parolele trebuie sa fie suficient de lungi si complexe si sa nu contina cuvinte din dictionar,
nume zile de nastere sau numere de telefon.
• Parolele trebuie schimbate periodic si trebuie evitata reutilizarea lor
• Trebuie evitata autentificarea cu aceeasi parola la mai multe sisteme
7.2 Construirea unei parole puternice si usor de memorat
O parola puternica se construieste nu se alege.

11
Cerintele pentru o parola puternica (generata aleator, sa contina cifre, litere mici, litere mari
si simboluri si cu o lungime cat mai mare) sunt in totala contradictie cu cele pentru o parola usor de
memorat, atunci ce se poate face?
Exemplele urmatoare sunt din NIST, SP 800-118 Guide to Enterprise Password
Management [5.], dar exista numeroase carti si articole care trateaza acest subiect. Informatii utile si
de incredere despre cum se construieste o parola puternica se mai gasesc si in:
• Perfect Passwords [2.]
• Human Selection of Mnemonic Phrase-based Passwords [1.]
• https://accounts.google.com/PasswordHelp
• http://www.google.com/goodtoknow/online-safety/passwords
• http://www.lockdown.co.uk/?pg=password_guide
• http://its.virginia.edu/accounts/passwords.html
Metodele urmatoare pot fi folosite pentru constructia parolelor Master si Confirmare.

7.2.1 Metoda mnemonicii


Utilizatorul selecteaza o fraza si extrage un caracter din fiecare cuvant (ex: prima sau a
doua litera din fiecare cuvant), apoi adauga numere si caractere speciale. Trebuie evitata utilizarea
unei fraze comune luata de pe internet.
Exemplu: This is the worst car I have ever driven in my LIFE! => TitwcIhedimLIFE!

7.2.2 Passfraze modificate


Utilizatorul selecteaza o fraza si apoi o modifica.
Exemplu: to be or not to be => 2.be.0r.nOt@to0.bEE
Trebuie evitata utilizarea unei fraze comune luata de pe internet.

7.2.3 Combinarea si alterarea cuvintelor


Utilizatorul combina cateva cuvinte fara legatura intre ele si schimba literele cu cifre si
simboluri.
Exemplu: “mail” and “phone” => m4!lf0N3

7.2.4 Solutii alternative


Se alege o parola usor de memorat care apoi este modificata adaugand litere, cifre si
simboluri.
Exemplu: GoodTimes => 42*G00d#23Times

8 Multumiri
Tin sa aduc multumiri ARSS (Asociatiei Romane a Specialistilor in Securitate) pentru
spatiul acordat publicarii articolului, domnului Ion Iordache, presedintele ARSS, pentru
disponibilitatea si receptivitatea aratata si colegilor din ARSS pentru problemele si ideile expuse si
discutate pe grupul de discutii al asociatiei.

9 Bibliografie
[1.] Cynthia Kuo, Sasha Romanosky, and Lorrie Faith Cranor, “Human Selection of Mnemonic
Phrase-based Passwords”, Symposium on Usable Privacy and Security (SOUPS), 2006,
Pittsburgh, PA, July 2006.
[2.] Burnett M, Perfect Passwords, Selection, protection, authentication, Syngress Publiching,
Canada, 2006.
[3.] Contos B., Crowell W., Physical and Logical Security Convergence Powered By Enterprise
Security Management, Syngress Publishing, USA, 2007.
[4.] NIST, SP 800-63-1 Electronic Authentication Guideline
[5.] NIST, SP 800-118 Guide to Enterprise Password Management
[6.] NIST, SP 800-132 Recommendation for Password-Based Key Derivation

12
[7.] http://www.sans.org/security-resources/policies/Password_Policy.pdf
[8.] http://en.wikipedia.org/wiki/Brute-force_attack
[9.] http://www.eetimes.com/design/embedded-internet-design/4372428/How-secure-is-AES-
against-brute-force-attacks
[10.] https://accounts.google.com/PasswordHelp
[11.] http://www.google.com/goodtoknow/online-safety/passwords
[12.] http://www.lockdown.co.uk/?pg=password_guide
[13.] http://its.virginia.edu/accounts/passwords.html
[14.] http://www.3q.ro/ro/magic_password.html
[15.] http://www.rsa.com/rsalabs/pkcs/files/h11302-wp-pkcs5v2-1-password-based-
cryptography-standard.pdf

13

S-ar putea să vă placă și