Conceptul de parole unice în sistemul de autentificare


Tehnologia One-Time Password este una dintre cele mai promițătoare soluții pentru sarcina autentificării utilizatorilor atunci când transmite informații prin intermediul canalelor de comunicare deschise.

Firește, pentru companiile ruse, cifrele pentru aceste pierderi vor fi complet diferite, dar acest lucru nu contrazice problema însăși: accesul neautorizat provoacă într-adevăr daune grave companiilor, indiferent dacă această conducere este conștientă de aceasta sau nu.

Deficiente de acces la distanță

Fiind într-un mediu de încredere (în afara biroului), utilizatorul se confruntă cu necesitatea de a introduce o parolă de la computerul altcuiva (de exemplu, dintr-un internet cafe). Parolele sunt stocate în memoria cache, la fel ca orice altă informație introdusă în computer și, dacă se dorește, pot fi folosite de oricine pentru scopurile lor egoiste.

Astăzi, acest tip de fraudă informatică, cum ar fi sniffing (de la sniff - sniffing), este interceptată de un atacator de pachete de rețea pentru a dezvălui informațiile care îl interesează. Folosind această tehnică, hacker-ul poate "smulge" parola utilizatorului și îl poate folosi pentru acces neautorizat. Testarea serioasă este supusă unei protecții simple prin parolă (în special cu acces la distanță), o nouă generație de spyware care cade în tăcere pe computerul utilizatorului în timpul "oblicării" obișnuite a paginilor web. Virusul poate fi programat să filtreze fluxurile de informații ale unui computer specific pentru a identifica combinații de simboluri care pot fi parole. Aceste combinații "spion" trimit creatorului său, iar apoi rămâne doar să dezvăluie parola necesară.

Doar pentru aplicațiile mobile, precum și pentru a asigura accesul la informațiile necesare din locurile în care nu este posibilă instalarea unui software special, a fost elaborat conceptul de parole unice OTP - One-Time Password.

Parola unică: introdusă și uitată

O parolă unică este un cuvânt cheie care este valabil numai pentru un singur proces de autentificare pentru o perioadă limitată de timp. O astfel de parolă rezolvă complet problema unei eventuale intercepții a informațiilor sau a unei bănuieli banale. Chiar dacă un atacator poate obține parola unei "victime", șansele de a-l folosi pentru a obține accesul sunt zero.

Prima implementare a conceptului de parole unice sa bazat pe un set static de cuvinte cheie, adică a generat mai întâi o listă de parole (chei, cuvinte de cod etc.), care ar putea fi folosite de utilizatori. Un astfel de mecanism a fost utilizat în primele sisteme bancare, cu posibilitatea gestionării la distanță a contului. Când acest serviciu a fost activat, clientul a primit un plic cu o listă cu parolele sale. Apoi, cu fiecare acces la sistem, a folosit următorul cuvânt cheie. După ce a ajuns la sfârșitul listei, clientul a mers din nou la bancă pentru unul nou. Această soluție a avut o serie de deficiențe, dintre care cea mai importantă este fiabilitatea redusă. Cu toate acestea, purtând în mod constant o listă de parole este periculoasă, se poate pierde cu ușurință sau poate fi furat de infractorii cibernetici. Și apoi, lista nu este infinită, dar dacă la momentul potrivit nu va mai fi o oportunitate de a ajunge la bancă?

Din fericire, astăzi situația sa schimbat în modul cel mai cardinal. În general, în țările occidentale, folosirea parolelor unice pentru autentificarea în sistemele informatice a devenit un fenomen familiar. Cu toate acestea, în țara noastră, până în prezent, tehnologia OTP a rămas inaccesibilă. Și doar recent, conducerea companiei a început să-și dea seama de riscul accesului neautorizat, de câteva ori în creștere cu accesul la distanță. Cererea, după cum știți, dă naștere unei propuneri. Acum, produsele care utilizează parole unice pentru autentificarea de la distanță au preluat treptat locul lor pe piața rusă.

În tehnologiile moderne de autentificare folosind OTP, generarea de cuvinte cheie dinamice este utilizată cu ajutorul unor algoritmi criptografici puternici. Aceasta înseamnă că datele de autentificare sunt rezultatul criptării oricărei valori inițiale cu cheia secretă a utilizatorului.

Aceste informații sunt disponibile atât pentru client, cât și pentru server. Nu este transmis prin rețea și nu este disponibil pentru interceptare. Ca valoare inițială, se utilizează informații comune pentru ambele părți ale procesului de autentificare, iar cheia de criptare este creată pentru fiecare utilizator când este inițializată în sistem. (Figura 1)


Fig. 1. Exemplu de generare de parole unice pe partea utilizatorului.

Trebuie remarcat faptul că în acest stadiu al dezvoltării tehnologiilor OTP există sisteme care utilizează criptografia simetrică și asimetrică. În primul caz, ambele părți trebuie să aibă o cheie secretă. În al doilea rând, cheia privată este necesară numai de către utilizator, iar serverul de autentificare este deschis.

Astăzi, mai multe metode de implementare a sistemelor de autentificare cu parolă unică sunt dezvoltate și utilizate în practică.

Principiul funcționării sale este după cum urmează: la începutul procedurii de autentificare, utilizatorul trimite datele de conectare la server. Ca răspuns, acesta din urmă generează un șir aleator și îl trimite înapoi. Utilizatorul utilizează cheia pentru a cripta aceste date și trimite-o înapoi. În același timp, serverul "găsește" în memoria sa cheia secretă a acestui utilizator și îl codifică cu linia originală. Apoi comparăm ambele rezultate ale criptării. Dacă acestea sunt complet identice, se consideră că autentificarea a avut succes. Această metodă de implementare a unei tehnologii de parolă unice, spre deosebire de toate celelalte, se numește asincronă, deoarece procesul de autentificare nu depinde de istoricul lucrului utilizatorului cu serverul și de alți factori.

Metoda "numai pentru răspuns"

Când îl folosiți, algoritmul de autentificare pare puțin mai simplu. La începutul procesului, software-ul sau hardware-ul utilizatorului generează datele originale, care vor fi criptate și trimise la server pentru comparație. Procedând astfel, valoarea interogării anterioare este utilizată în procesul de creare a rândului. Serverul are, de asemenea, astfel de "cunoștințe". Adică, folosind numele de utilizator, el găsește valoarea interogării sale anterioare și generează exact același șir prin același algoritm. Criptarea cu cheia secretă a utilizatorului (este de asemenea stocată pe server), serverul primește o valoare care trebuie să se potrivească exact cu datele trimise de utilizator.

Metoda "sincronizării timpului"

În el ca linia sursă sunt citirile curente ale temporizatorului unui dispozitiv sau computer special pe care o persoană lucrează. În acest caz, nu este de obicei specificația de timp exactă utilizată, ci intervalul curent cu limite predeterminate (de exemplu, 30 de secunde). Aceste date sunt criptate cu o cheie secretă și trimise pe server împreună cu numele de utilizator în text clar. Serverul, atunci când primește o cerere de autentificare, efectuează aceleași acțiuni: primește ora curentă din cronometrul său și o criptează. După aceasta, el poate compara numai două valori: calculate și primite de la un calculator la distanță.

Metoda "sincronizare eveniment"

În principiu, această metodă este aproape identică cu tehnologia anterioară luată în considerare. Aici numai ca linia sursă nu se folosește timpul, ci numărul de proceduri de autentificare reușite efectuate înainte de cel actual. Această valoare este calculată de ambele părți separate una de alta. În caz contrar, această metodă este complet identică cu cea anterioară.

În unele sisteme sunt implementate așa-numitele metode mixte, în care două sau chiar mai multe tipuri de informații sunt utilizate ca valoare inițială. De exemplu, există sisteme care iau în considerare atât contoarele de autentificare, cât și citirile cronometrelor încorporate. Această abordare evită numeroasele deficiențe ale metodelor individuale.

Vulnerabilitatea tehnologiilor OTP

Tehnologia parolelor unice este considerată destul de fiabilă. Cu toate acestea, din motive de obiectivitate, remarcăm că aceasta are de asemenea propriile neajunsuri, cărora li se supun toate sistemele care implementează principiul OTP în formă pură. Astfel de vulnerabilități pot fi împărțite în două grupuri. Primele includ găuri potențial periculoase inerente tuturor metodelor de implementare. Cea mai gravă dintre acestea este abilitatea de a înlocui un server de autentificare. În acest caz, utilizatorul își va trimite datele direct la atacator. Ei bine, el le poate folosi imediat pentru a accesa serverul real. În cazul utilizării metodei "Solicitare-răspuns", algoritmul de atac devine puțin mai complicat (calculatorul hackerilor ar trebui să joace rolul de "intermediar", trecând prin procesul de schimb de informații între server și client). Cu toate acestea, este demn de remarcat faptul că, în practică, un astfel de atac nu este ușor.

O altă vulnerabilitate este inerentă numai în metodele sincrone pentru implementarea parolelor unice, deoarece există riscul ca informațiile să nu fie sincronizate pe server și în software-ul sau hardware-ul utilizatorului. Să presupunem că, într-un sistem, datele inițiale sunt cronometrul intern. Și din anumite motive încep să nu coincidă unul cu celălalt. În acest caz, toate încercările utilizatorului de autentificare vor eșua (eroare de primul tip). Din fericire, în astfel de cazuri, eroarea celui de-al doilea tip (admiterea falsă a "altcuiva") nu poate apărea. Cu toate acestea, este de remarcat faptul că probabilitatea situației descrise este, de asemenea, extrem de redusă.

Este clar că pentru un astfel de atac, un atacator ar trebui să aibă capacitatea de a "asculta" traficul, precum și de a bloca rapid computerul clientului, dar realizând că aceasta nu este o sarcină ușoară. Cea mai simplă modalitate de a îndeplini aceste condiții este atunci când atacul este planificat în avans și pentru a se conecta la un sistem la distanță, victima va folosi un computer din rețeaua locală a altui utilizator. În acest caz, hacker-ul poate "lucra" pe unul dintre PC-uri în avans, având posibilitatea să-l controleze de la o altă mașină. Protejați-vă împotriva unui astfel de atac este posibil numai prin utilizarea unor mașini de lucru "de încredere" (de exemplu, propriul laptop sau PDA) și protejate "independent", de exemplu prin intermediul canalelor de conectare la Internet prin SSL.

Fiabilitatea oricărui sistem de securitate depinde într-o mare măsură de calitatea implementării acestuia. Adică soluțiile practice au deficiențe proprii, care pot fi folosite de intruși pentru propriile lor scopuri. Iar aceste "găuri" adesea nu se referă direct la tehnologia implementată. În întregime, această regulă se aplică sistemelor de autentificare bazate pe parole unice. După cum sa menționat deja mai sus, acestea se bazează pe utilizarea algoritmilor criptografici. Acest lucru impune anumitor obligații dezvoltatorilor unor astfel de produse. La urma urmei, performanța slabă a oricărui algoritm sau, de exemplu, un generator de numere aleatoare, poate pune în pericol securitatea informațiilor.

Incredibil mai fiabilă este o gamă largă de dispozitive pentru implementarea hardware a tehnologiilor OTP. De exemplu, există un dispozitiv care arată care amintește de un calculator (pe dreapta): atunci când le introduceți într-un set de numere, trimise de server, ele generează o parolă o singură dată (o implementare a „provocare-răspuns“), pe baza unei chei secrete cusute. Principala vulnerabilitate a acestor dispozitive constă în posibilitatea pierderii sau furtului acestora. Dacă "calculatorul" dvs. intră în mâinile unui atacator, acesta din urmă poate obține accesul dorit la sistemul de la distanță. Securitatea sistemului de la astfel de acțiuni este posibilă numai dacă utilizați o protecție fiabilă a memoriei dispozitivului cu o cheie secretă.

Exemplu de implementare OTP

Este demn de remarcat faptul că societatea Aladdin are un rol activ în promovarea inițiativei OATH menționate mai sus, și a considerat cheia aici a fost ales ca principală componentă a soluției de autentificare Unified VeriSign. Adevărat, se numește în acest sistem puțin diferit: eToken VeriSign. Scopul principal al acestei soluții este de a spori încrederea în tranzacțiile încheiate prin Internet și se bazează pe autentificarea strictă cu doi factori, bazată pe cheia hardware. Astfel de livrări OEM ale produsului eToken NG-OTP confirmă calitatea și conformitatea cu toate specificațiile OATH.

Conceptul de parole unice în sistemul de autentificare

Dispozitivele din seria eToken sunt destul de răspândite în Rusia. Acești producători de top cum ar fi Microsoft, Cisco, Oracle, Novell și altele. Oferiți-le sprijin în produsele lor (în „palmares“, a eToken peste 200 de implementări cu aplicații pentru securitatea informațiilor).

În cheia NG-OTP eToken, pe lângă modulele care implementează capabilitățile descrise mai sus, există un generator hardware de parole unice (a se vedea Figura 4). Lucrează prin metoda "sincronizării după eveniment". Aceasta este cea mai fiabilă versiune sincronă a implementării tehnologiei OTP (cu risc minim de sincronizare). Algoritm pentru a genera parole unice, puse în aplicare în cheie eToken NG-OTP, dezvoltate în cadrul inițiativei OATH (aceasta se bazează pe tehnologia HMAC). Acesta constă în calcularea valorii HMAC-SHA-1, și apoi efectuarea operației de trunchiere (separare) din valoarea de 160 de biți care rezultă din 6 cifre. Acestea sunt parola o singură dată.

Modul mixt de funcționare a cheii în cauză este cel mai fiabil. Pentru ao folosi, dispozitivul trebuie să fie conectat la un PC. În acest caz, vorbim de autentificare cu două factori, care poate fi implementată în mai multe moduri. Într-un caz, pentru a accesa rețeaua, trebuie să utilizați propria parolă de utilizator pentru ao introduce, precum și valoarea OTP. O altă opțiune este utilizarea unei parole unice și a unei valori OTP PIN (afișate pe ecranul-cheie).

Firește, cheia eToken NG-OTP poate funcționa ca un standard USB-jeton - pentru autentificarea utilizatorului prin intermediul certificatelor digitale și tehnologia PKI pentru stocarea cheilor personale, etc. Astfel, produsul în cauză ar trebui să fie utilizat pentru a implementa o gamă largă de proiecte legate de necesitatea accesului securizat la distanță și autentificarea cu două factori. Utilizarea unor astfel de hibrizi cheie la scara întreprinderii vă va permite să utilizați cheile atât în ​​birou, cât și în afara acestuia. Această abordare reduce costurile de creare a unui sistem de securitate a informațiilor fără a reduce fiabilitatea acestuia.

Deci, conceptul de parole unice, combinat cu metodele criptografice moderne, poate fi folosit pentru a implementa sisteme fiabile de autentificare la distanță. În același timp, această tehnologie are o serie de avantaje serioase. În primul rând, este fiabilitatea. Astăzi, nu există atât de multe modalități de autentificare cu adevărat "puternică" a utilizatorilor prin transferul de informații prin intermediul canalelor de comunicare deschise. Între timp, această sarcină apare din ce în ce mai des. Iar parolele unice sunt una dintre cele mai promițătoare soluții.

Al doilea avantaj al parolelor unice este folosirea algoritmilor criptografici "standard". Astfel, pentru implementarea sistemului de autentificare cu aplicația lor, desenele existente sunt perfect potrivite. În mod strict vorbind, acest lucru este demonstrat în mod clar de același eToken NG-OTP, compatibil cu furnizorii de cripte domestice. Aceasta implică posibilitatea utilizării unor astfel de jetoane în sistemele de securitate corporative existente fără reorganizarea lor. Astfel, introducerea tehnologiei de parolă unică poate fi efectuată la un cost relativ scăzut.

Un alt plus de parole unice este dependența scăzută a protecției împotriva factorului uman. Este adevărat că acest lucru nu se aplică tuturor implementărilor sale. Așa cum am spus deja, fiabilitatea multor programe pentru crearea parolelor unice depinde de calitatea codului PIN al utilizatorului. În generatoarele hardware bazate pe jetoane USB, este utilizată o autentificare completă cu doi factori. Și în sfârșit, al patrulea avantaj al conceptului OTP este prietenia sa cu utilizatorul. Accesul la informațiile necesare folosind parole unice nu este mai dificil decât utilizarea cuvintelor cheie statice în acest scop. Este deosebit de plăcut faptul că unele implementări hardware ale tehnologiei considerate pot fi utilizate pe orice dispozitiv, indiferent de porturile existente și de software-ul instalat.