Eksperyment: Jak zamaskować korzystanie z Tora do omijania blokad

Eksperyment: Jak zamaskować korzystanie z Tora do omijania blokad

Cenzura w Internecie staje się coraz ważniejszym problemem na całym świecie. Prowadzi to do zaostrzenia "wyścigu zbrojeń" – organy państwowe i prywatne korporacje w różnych krajach dążą do blokowania różnego rodzaju treści i walczą ze sposobami omijania takich ograniczeń, podczas gdy deweloperzy i badacze starają się tworzyć skuteczne narzędzia do walki z cenzurą.

Naukowcy z uniwersytetów Carnegie Mellon, Uniwersytetu Stanford i SRI International przeprowadzili eksperyment, w trakcie którego opracowali specjalną usługę maskującą korzystanie z Tora – jednego z najpopularniejszych narzędzi do omijania blokad. Przedstawiamy Państwu opowieść o pracy badaczy.

Tor przeciw blokadom

Tor zapewnia anonimowość użytkowników poprzez korzystanie z specjalnych relays – tj. serwerów pośredniczących między użytkownikiem a pożądanym przez niego serwisem. Zazwyczaj pomiędzy użytkownikiem a stroną znajduje się kilka relays, z których każdy może odszyfrować tylko niewielką ilość danych w przekazywanym pakiecie – wystarczającą, aby poznać następny punkt w łańcuchu i wysłać go tam. W rezultacie nawet jeśli do łańcucha dodane zostaną relays kontrolowane przez przestępców lub cenzorów, nie będą oni w stanie poznać ani adresata, ani punktu przeznaczenia ruchu.

Jako narzędzie do walki z cenzurą, Tor działa skutecznie, jednak cenzorzy wciąż mają możliwość całkowitego zablokowania jego działania. Iran i Chiny prowadziły udane kampanie blokad. Udało im się zidentyfikować ruch Torowy dzięki skanowaniu TLS handshakes i innych charakterystycznych cech Tora.

W rezultacie deweloperzy zdołali dostosować system do omijania blokad. Cenzorzy odpowiedzieli blokadami połączeń HTTPS do wielu witryn, w tym do Tora. Deweloperzy projektu stworzyli program obfsproxy, który dodatkowo szyfruje ruch. Ta rywalizacja trwa nieprzerwanie.

Dane początkowe eksperymentu

Badacze postanowili opracować narzędzie, które umożliwiałoby zamaskowanie korzystania z Tora, aby umożliwić jego stosowanie nawet w regionach, gdzie system jest całkowicie zablokowany.

  • Jako założenia wstępne naukowcy wysunęli następujące:
  • Cenzor kontroluje izolowany wewnętrzny segment sieci, który łączy się z zewnętrznym, nieocenzurowanym internetem.
  • Organy odpowiedzialne za blokady kontrolują całą infrastrukturę sieciową wewnątrz segmentu podlegającego cenzurze, ale nie oprogramowanie na komputerach końcowych użytkowników.
  • Cenzor stara się zapobiec dostępowi użytkowników do materiałów, które uważa za niepożądane; zakłada się, że wszystkie te materiały znajdują się na serwerach poza kontrolowanym segmentem sieci.
  • Routery na obrzeżach tego segmentu analizują niezaszyfrowane dane wszystkich pakietów w celu zablokowania niepożądanego kontentu i uniemożliwienia przedostawania się odpowiednich pakietów do wewnątrz perymetru.
  • Wszystkie węzły Tor znajdują się poza perymetrem.

Jak to działa

Aby zamaskować użycie Tora, badacze stworzyli narzędzie StegoTorus. Jego głównym celem jest poprawa zdolności Tora do opierania się zautomatyzowanej analizie protokołu. Narzędzie znajduje się pomiędzy klientem a pierwszym węzłem w sieci, używa własnego protokołu szyfrowania i modułów steganograficznych, aby utrudnić identyfikację ruchu Tor.

Na pierwszym etapie do działania przystępuje moduł o nazwie chopper – przekształca ruch w ciąg bloków o różnej długości, które wysyłane są dalej w nieodpowiedniej kolejności.

Eksperyment: Jak zamaskować korzystanie z Tora do omijania blokad

Dane są szyfrowane za pomocą AES w trybie GCM. Nagłówek bloku zawiera 32-bitowy numer sekwencji, dwa pola długości (d i p) – oznaczają one objętość danych, specjalne pole F i 56-bitowe pole kontrolne, którego wartość powinna być zerowa. Minimalna długość bloku wynosi 32 bajty, a maksymalna 217+32 bajty. Długość ta jest kontrolowana przez moduły steganograficzne.

Podczas nawiązywania połączenia pierwsze kilka bajtów informacji to wiadomość handshake; dzięki niej serwer rozumie, czy ma do czynienia z istniejącym, czy nowym połączeniem. Jeśli połączenie dotyczy nowego linku, serwer odpowiada za pomocą handshake, a każdy z uczestników wymiany wydobywa z niej klucze sesyjne. Ponadto w systemie wdrożony jest mechanizm rektyfikacji (rekeying) – podobny do wydobywania kluczy sesyjnych, ale zamiast wiadomości handshake używane są bloki. Mechanizm ten zmienia numer sekwencji, ale nie dotyka ID linku.

Po tym, jak obaj uczestnicy wymiany danych wysłali i otrzymali blok fin, połączenie zostaje zamknięte. Aby zabezpieczyć się przed atakami typu replay lub opóźnieniem w dostarczaniu bloków, obaj uczestnicy muszą zapamiętać ID przez czas po zamknięciu.

Wbudowany moduł steganografii ukrywa ruch Tor w p2p-protokole – na wzór działania Skype’a w przypadku zabezpieczonych komunikacji VoIP. Moduł HTTP-steganografii symuluje niezaszyfrowany ruch HTTP. System emuluje rzeczywistego użytkownika korzystającego z normalnej przeglądarki.

Odporność na ataki

Aby sprawdzić, jak bardzo proponowana metoda poprawia efektywność działania Tor, badacze opracowali ataki dwóch typów.

Pierwszy z nich polega na wydzielaniu strumieni Tor z strumieni TCP na podstawie fundamentalnych cech protokołu Tor – tej metody użyto do zablokowania systemu przez władze Chin. Drugi atak polega na analizie już znanych strumieni Tor w celu wydobycia informacji o tym, jakie strony odwiedzał użytkownik.

Badacze potwierdzili skuteczność ataku pierwszego typu przeciwko „waniliowemu Torowi” – w tym celu zbierali ślady odwiedzin stron z top-10 Alexa.com dwadzieścia razy przez zwykłego Tora, obfsproxy i StegoTorus z modułem HTTP-steganografii. Jako punkt odniesienia do porównania użyto zbioru danych CAIDA z danymi dla portu 80 – co niemal na pewno to są połączenia HTTP.

Eksperyment pokazał, że obliczenie zwykłego Tora jest dość łatwe. Protokół Tor jest zbyt specyficzny i ma szereg cech, które są łatwe do obliczenia – na przykład, podczas jego użycia połączenia TCP trwają 20-30 sekund. Narzędzie Obfsproxy również prawie w ogóle nie ukrywa tych oczywistych aspektów. StegoTorus z kolei generuje ruch, który jest znacznie bliższy referencji CAIDA.

Eksperyment: Jak zamaskować korzystanie z Tora do omijania blokad

W przypadku ataku z obliczeniem odwiedzanych stron badacze porównywali prawdopodobieństwo ujawnienia danych w przypadku „waniliowego Tora” oraz ich rozwiązania StegoTorus. Do oceny użyto skali AUC (Area Under Curve). Z analizy wynika, że w przypadku zwykłego Tora bez dodatkowej ochrony prawdopodobieństwo ujawnienia danych o odwiedzanych stronach jest znacznie wyższe.

Eksperyment: Jak zamaskować korzystanie z Tora do omijania blokad

Podsumowanie

Historia starcia władz krajów wprowadzających cenzurę w internecie z twórcami systemów omijania blokad pokazuje, że skuteczne mogą być tylko kompleksowe środki ochrony. Korzystanie tylko z jednego narzędzia nie gwarantuje dostępu do potrzebnych danych ani tego, że informacje o omijaniu blokady nie staną się znane cenzorom.

Dlatego, korzystając z jakichkolwiek narzędzi zapewniających prywatność i dostęp do treści, ważne jest, aby nie zapominać, że idealnych rozwiązań nie ma, oraz dążyć do łączenia różnych metod w celu osiągnięcia największej skuteczności.

Przydatne linki i materiały od Infatica:

Źródło: habr.com

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster