Sunteți pe pagina 1din 7

Atac prin reflexie

Acest tip de autentificare prin 2 pasi poate fi atacat de catre Tedy printr-un atac prin
reflexie. Ca sa poata sa faca acest lucru el are nevoie sa poata deschida mai multe sesiuni
catre Bogdan, Bogdan presupunand ca este o banca. Tedy se substituie Anei, se aseaza la
un terminal si transmite identitatea Anei si o provocare Rt. Lucrurile acestea ajung la Bogdan
care considera ca vorbeste cu Ana si ii va raspunde la provocare codificand Kab(Rt) si ii
trimite o provocare din partea lui Rb. In acest moment, Tedy se muta pe un alt terminal si
deschide o noua sesiune in care in mesajul 3 ii spune din nou ca e Ana dar utilizeaza ca
provocare pe cea primita de la Bogdan. Acesta receptioneaza acest mesaj si raspunde prin
codificarea Kab(Rb) si trimite o noua provocare Rb1. In acest moment, Tedy poate inchide
sesiunea a doua si revine la primul terminal si trimite raspunsul la provocare Kab(Rb)
facandu-l pe Bogdan sa creada ca vb cu Ana deoarece numai ea detine cheia Kb. Poate
solicita in locul ei o evidenta a contului bancar iar Bogdan o va trimite considerand ca are
de-a face cu Ana si nu cu Tedy.
Atacul prin reflexie este posibil datorita faptului ca nu s-au respectat trei conditii:
- Initiatorul unei tranzactii trebuie sa se identifice mai intai pe el si dupa aceea sa
continue protocolul. In acest caz Bogdan trimite informatii fara sa aiba certitudinea ca
vorbeste cu Ana
- Initiatorul comunicarii si receptorul ar trebui sa dispuna de doua chei secrete, o cheie
Kab si Kab’ pe care sa le foloseasca fiecare separat
- cei doi interlocutori trebuie sa-si aleaga provocarile din domenii diferite (ana sa
lucreze cu numere pare si bogdan cu numere impare)

Transmiterea unei chei prin protocolul Diffie-Hellman

Acum ne gasim in cazul in care cei doi nu dispun de o cheie secreta partajata si
trebuie sa transfere o astfel de cheie prin internet. In algoritmul Diffie-Hellman, cei doi
corespondenti cad de acord asupra doua numere prime ‘n’ si ‘g’ foarte mari, care indeplinesc
si restrictiile:
n-½ tot prim
Dupa stabilirea acestor numere, cei doi corespondenti isi aleg tot doua numere foarte
mari: Ana: x (>512biti) (secrete)
Bogdan: y (>512biti) (secrete)
n si g sunt numere publice

Tedy poate captura n si g dar el nu stie x si y si nici nu poate sa le determine


deoarece in practica, nu exista algoritmi cu logaritmi discreti din numere modulo n prime.
Aceste parole comune sunt folosite pentru a trimite o cheie de sesiune sesiune. Exista insa
o vulnerabilitate si aici.

Tedy este interpus intre cei doi si poate comunica cu ambii, avand chei comune cu
fiecare dintre ei. Tedy face un fel de translatie, primeste mesajele de la Ana, le decripteaza
si le recripteaza pentru Bogdan cu posibile modificari. Tedy de asemenea, poate primi
raspunsurile de la Bogdan, pe care le decripteaza cu cheia pt Bogdan si dupa aceea le
recripteaza, transmitandu-le Anei. Ana si Bogdan raman cu impresia ca comunica intre ei
printr-un canal protejat. Un astfel de atac se numeste ​atac omul din mijloc (man in the
middle).

Autentificarea cu chei secrete distribuite de un anumit centru

Centru = Kdc (key distribution center)


In practica apare situatia in care trebuie sa lucram cu foarte multi corespondenti, un
numar n corespondenti, mentinerea unui set de chei este o operatie destul de dificila si de
aceea se transfera aceasta responsabilitate unui centru de distributie care constituie o
agentie de incredere.
Un prim si cel mai simplu protocol cu chei distribuite este protocolul ​Burrows​. Kdc
pastreaza cheile secrete pentru toti utilizatorii cu care colaboreaza.

Ana vrea sa faca o tranzactie cu Bogdan si pentru aceasta, transmite in mesajul 1


propria identitate A si codificarea cu cheia secreta Ka (detinuta doar de ea si Kdc) ca vrea sa
vorbeasca cu Bogdan si propune cheia de sesiune Ks. Kdc descifreaza mesajul si trimite
mai departe catre Bogdan, criptat cu cheia lui (Kb), mesajul ‘te cauta Ana’ care iti propune
cheia de sesiune Ks.
Si acest algoritm are o vulnerabilitate, anume aceea ca Tedy ar putea refolosi un
mesaj mai vechi (atac prin replica) pe care sa i-l retransmita lui Bogdan. Spre exemplu, un
ordin de plata catre el.
Ca sa se preintampine un astfel de atac, este necesar ca mesajele sa fie marcate cu
niste numere unice numite ​momentane ​(nonce). Apare si aici o problema, si anume ca
ambii utilizatori trebuie sa stocheze pe termen lung aceste numere momentane pentru a
evita atacurile prin replica. Se poate insa intampla ca uneori sa cada serverele si aceste
date sa se piarda ceea ce va regenera vulnerabilitatea atacului prin replica.
O varianta imbunatatita este aceea de a mixa numerele momentane cu marci de
timp, care sa le faca valabile numai pentru anumite intervale de timp.
Protocolul Needham-Schroeder

Acesta este un protocol de tip provocare-raspuns cu cai multiple.

Ana vrea sa lucreze cu Bogdan si pt aceasta transmite mesajul 1 Kdc-ului in care


este continuta identitatea ei, identitatea lui Bogdan si un momentan Ra pe post de
provocare. Kdc-ul va raspunde criptat cu cheia Anei la provocare, prin Ra si ii transmite si o
cheie de sesiune Ks pt comunicatia cu Bogdan iar pentru Bogdan trimite un ticket criptat cu
cheia lui Bogdan in care se gaseste identitatea Anei si de asemenea cheia de sesiune
pentru cei doi. In mesajul 3, Ana ii trimite lui Bogdan ticketul primit de la Kdc si o provocare
Ra1. In mesajul 4, Bogdan raspunde la provocare cu cheia secreta Ks(Ra1-1). Este Ra1-1
deoarece Tedy ar fi putut intercepta mesajul 3 si falsifica momentanul Ra1 si ii transmite si
un momentan/provocare Rb. In mesajul 5, ii transmite raspunsul la provocare si cei doi sunt
identificati. Acest protocol are si el o oarecare slabiciune pe care o poate exploata Tedy si
anume aceea ca daca Tedy a aflat o cheie de sesiune mai veche, poate relansa discutia de
la mesajul 3 incolo.
Aceasta vulnerabilitate a fost rezolvata de Needham si Schroeder printr-o
imbunatatire dar intre timp a mai aparut un protocol care o rezolva si care se numeste
Otway-Rees​.
Elementul central al acestui protocol il constituie introducerea unui identificator
comun.
Ana transmite lui Bogdan mesajul 1 in care isi spune identitatea, numele lui Bogdan,
un identificator comun ​R​ si criptat cu cheia Ka identitatea ei A, id lui Bogdan B, identificatorul
comun si o provocare Ra. Bogdan receptioneaza aceste lucruri si va transmite Kdc-ului
urmatoarele informatii: Ana A si codificat cu cheia Anei tot ticketul Ka transmis de Ana la
care se adauga identitatea lui Bogdan B si criptat cu cheia lui Bogdan Kb identitatea Anei A,
Identitatea lui Bogdan, identificatorul comun si provocarea lui Bogdan Rb. R ul trebuie sa fie
acelasi in ambele tickete criptate deoarece Tedy l-ar fi putut fura din mesajul 1 si sa se
substituie Anei. Kdc-ul in mesajul 3 raspunde Anei la provocare Ka si transmite cheia de
sesiune pt lucrul cu Bogdan iar in mesajul 4 Kdc-ul va transmite cu cheia secreta a lui
Bogdan Kb raspunsul la provocarea lui Bogdan si cheia de sesiune pentru lucrul cu Ana.

Protocolul Kerberos

Acest protocol a fost dezvoltat de cei de la MIT care este o imbunatatire a


protocolului ​Needham-Schroeder.​ Acest protocol permite accesul securizat la resursele
retelei. La acest protocol se lucreaza cu masini in timp real si pt aceasta, se presupune ca
ceasurile sunt sincronizate.
Acest protocol lucreaza cu 3 servere + statia de lucru a Anei.
serverul A.S. (authentication Server) = este cel care joaca rolul Kdc-ului si verifica
identitatea utilizatorului. (autentifica utilizatorii)
T.G.S. (Ticket Granting Server) = este un server care demonstreaza identitatea
utilizatorului prin intermediul unor tickete.
B (Bogdan) = este serverul care ofera serviciile necesare solicitate de utilizatori.
Ana doreste sa lucreze cu serverul Bogdan si prin protocolul Kerberos obtine doar
autentificarea catre acesta (ca sa-l poata accesa). Ana este autorizata sa transmita lui
Bogdan prin A.S.
In mesajul 1, Ana se identifica catre AS iar AS-ul va raspunde cu cheia secreta a
Anei, transmitandu-i o cheie de sesiune cu Ktgs. La acest moment, pentru a se evita
transmiterea parolei Anei in retea, cheia Ka se va forma pe statia Anei cand ajunge mesajul
2, cheia in clar a Anei va exista doar pentru cateva milisecunde, lucru care il impiedica pe
Tedy sa foloseasca o parola falsa si sa preia identitatea. AS mai da si un ticket Ktgs care
contine identitatea anei si cheia de sesiune Ks. In mesajul Anei, ticketul contine Ktgs,
identitatea lui Bogdan si o provocare Ra catre TGS la care acesta raspunde cu cheia
secreta primita, raspunzand la provocarea Ra si transmitand cheia de sesiune, de
asemenea ii mai transmite un ticket cu cheia lui Bogdan Kb care contine numele anei. In
mesajul 5, Ana transmite acest ticket catre Bogdan si cripteaza cheia si cu o marca de timp
la care Bogdan ii va raspunde cu t+1 ca sa vada ca nu e un duplicat, intervalul fiind foarte
scurt ca Tedy sa intervina. In acest moment cei doi pot comunica iar Ana poate folosi
serverul Bogdan.
Daca Ana doreste sa mai utilizeze si un alt server Carol, este suficient sa reia
protocolul de la mesajul 3 inlocuind B-ul cu C.
Cei care au facut astfel de protocoale, nu s-au asteptat ca lumea sa aiba incredere
doar in doua servere TGS si AS si au contat pe existenta mai multor domenii, fiecare cu
AS-ul si TGS-ul propriu. Intre cele doua trebuie sa exista o acceptare si recunoastere intre
cele doua TGS-uri. In acest fel, Ana va capata de la TGS-ul propriu un ticket pentru TGS-ul
la distanta si va putea lucra si intr-o alta retea.

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