Detectarea sesiunilor OpenVPN în traficul de tranzit

Un grup de cercetători de la Universitatea din Michigan a publicat rezultatele unui studiu privind posibilitatea identificării conexiunilor (VPN Fingerprinting) la serverele bazate pe OpenVPN atunci când monitorizează traficul de tranzit. Drept urmare, au fost identificate trei metode pentru identificarea protocolului OpenVPN printre alte pachete de rețea care pot fi utilizate în sistemele de inspecție a traficului pentru a bloca rețelele virtuale bazate pe OpenVPN.

Testarea metodelor propuse pe rețeaua furnizorului de internet Merit, care are peste un milion de utilizatori, a arătat capacitatea de a identifica 85% dintre sesiunile OpenVPN cu un nivel scăzut de fals pozitive. Pentru testare, a fost pregătit un set de instrumente care a detectat mai întâi traficul OpenVPN din mers într-un mod pasiv, apoi a verificat corectitudinea rezultatului printr-o verificare activă a serverului. Un flux de trafic cu o intensitate de aproximativ 20 Gbps a fost reflectat pe analizorul creat de cercetători.

Detectarea sesiunilor OpenVPN în traficul de tranzit

În timpul experimentului, analizorul a reușit să identifice cu succes 1718 din 2000 de conexiuni OpenVPN testate stabilite de un client necinstiți, care a folosit 40 de configurații tipice OpenVPN diferite (metoda a funcționat cu succes pentru 39 din 40 de configurații). În plus, în cele opt zile ale experimentului, în traficul de tranzit au fost identificate 3638 de sesiuni OpenVPN, dintre care 3245 de sesiuni au fost confirmate. Se observă că limita superioară a fals pozitive în metoda propusă este cu trei ordine de mărime mai mică decât în ​​metodele propuse anterior bazate pe utilizarea învățării automate.

Separat, a fost evaluată performanța metodelor de protecție a urmăririi traficului OpenVPN în serviciile comerciale - din 41 de servicii VPN testate folosind metode de ascundere a traficului OpenVPN, traficul a fost identificat în 34 de cazuri. Serviciile care nu au putut fi detectate au folosit straturi suplimentare în plus față de OpenVPN pentru a ascunde traficul (de exemplu, redirecționarea traficului OpenVPN printr-un tunel criptat suplimentar). Cele mai multe dintre serviciile identificate cu succes au folosit distorsiunea traficului XOR, straturi suplimentare de ofuscare fără umplerea corespunzătoare a traficului aleatoriu sau prezența unor servicii OpenVPN neobfuscate pe același server.

Metodele de identificare implicate se bazează pe legarea la modele specifice OpenVPN în antetele pachetelor necriptate, dimensiunile pachetelor ACK și răspunsurile serverului. În primul caz, o legare la câmpul „opcode” din antetul pachetului poate fi folosită ca obiect de identificare în etapa de negociere a conexiunii, care ia un interval fix de valori și se modifică într-un anumit mod în funcție de etapa de configurare a conexiunii. Identificarea se rezumă la identificarea unei anumite secvențe de modificări opcode în primele N-pachete ale fluxului.

A doua metodă se bazează pe faptul că pachetele ACK sunt folosite în OpenVPN doar în etapa de negociere a conexiunii și, în același timp, au o dimensiune specifică. Identificarea se bazează pe faptul că pachetele ACK de o anumită dimensiune apar numai în anumite părți ale sesiunii (de exemplu, când se utilizează OpenVPN, primul pachet ACK este de obicei al treilea pachet de date trimis în sesiune).

Detectarea sesiunilor OpenVPN în traficul de tranzit

A treia metodă este o verificare activă și se datorează faptului că, ca răspuns la o solicitare de resetare a conexiunii, serverul OpenVPN trimite un anumit pachet RST (verificarea nu funcționează când se folosește modul „tls-auth”, deoarece serverul OpenVPN ignoră cererile de la clienți neautentificați prin TLS).

Detectarea sesiunilor OpenVPN în traficul de tranzit


Sursa: opennet.ru

Adauga un comentariu