Nowa metoda włamania pokonuje problem „jittera sieci”, który może wpływać na skuteczność ataków zewnętrznych.

Nowa metoda, opracowana przez badaczy z Uniwersytetu Leuven (Belgia) oraz Uniwersytetu Nowojorskiego w Abu Zabi, wykazała, że napastnicy mogą wykorzystać cechy protokołów sieciowych do organizacji wycieków poufnych informacji.
Metoda ta nosi nazwę , zaprezentowana w tym roku na konferencji Usenix, wykorzystuje cechy przetwarzania równolegle wykonywanych zapytań przez protokoły sieciowe, aby rozwiązać jeden z problemów zdalnych ataków czasowych z wykorzystaniem zewnętrznych kanałów.
Problemy zdalnych ataków czasowych
W trakcie realizacji ataków czasowych napastnicy mierzą różnice w czasie wykonania różnych poleceń, starając się obejść ochronę zapewnianą przez szyfrowanie i uzyskać dane dotyczące poufnych informacji, na przykład kluczy szyfrujących, prywatnej korespondencji oraz zachowań użytkowników podczas przeglądania stron internetowych.
Jednak aby skutecznie przeprowadzić ataki czasowe, napastnik musi dokładnie znać czas, jaki aplikacja poddawana atakowi potrzebuje na przetworzenie zapytania.
Staje się to problemem przy atakowaniu takich zdalnych systemów, jak serwery internetowe, ponieważ opóźnienia w sieci (jitter) prowadzą do rozrzutu czasów odpowiedzi, co utrudnia obliczenie czasu przetwarzania.
W procesie zdalnych ataków czasowych napastnicy zazwyczaj wysyłają każde polecenie wielokrotnie i przeprowadzają analizę statystyczną czasów odpowiedzi, aby zmniejszyć wpływ jittera sieci. Jednak ten sposób jest użyteczny tylko do pewnego stopnia.
„Im mniejsza różnica czasu, tym więcej wymaga zapytań, i na pewnym etapie obliczenia stają się niemożliwe” - mówi nam badacz systemów ochrony danych i główny autor artykułu o nowym typie ataku, Tom Van Goetem.
Atak czasowy bezwzględny
Metoda opracowana przez Goetema i jego współpracowników przeprowadza zdalne ataki czasowe w taki sposób, że neutralizuje wpływ jittera sieci.
Zasada leżąca u podstaw ataku bezwzględnego jest prosta: należy sprawić, aby zapytania docierały na serwer w dokładnie tym samym czasie, a nie były przesyłane sekwencyjnie.
Równoległość zapewnia, że wszystkie zapytania działają w tych samych warunkach sieciowych i że ich przetwarzanie nie jest zakłócane przez ścieżkę między atakującym a serwerem. Kolejność otrzymywania odpowiedzi dostarczy atakującemu wszystkich informacji potrzebnych do porównania czasu wykonania.
„Główna zaleta ataków czasowych bezwzględnych polega na tym, że są one znacznie bardziej precyzyjne, co pozwala na wykonanie mniejszej liczby zapytań. Dzięki temu atakujący może rozpoznawać różnice w czasie wykonania aż do 100 ns” – mówi Van Goethem.
Minimalna różnica czasu zaobserwowana przez badaczy podczas tradycyjnego ataku czasowego przez Internet wynosiła 10 µs, co jest 100 razy więcej niż w przypadku ataku z równoczesnymi zapytaniami.
Jak zapewniana jest równoległość
„Równoległość zapewniamy, umieszczając oba zapytania w jednym pakiecie sieciowym” – wyjaśnia Van Goethem. „W praktyce realizacja zależy głównie od protokołu sieciowego”.
Do wysyłania równoczesnych zapytań badacze wykorzystują możliwości różnych protokołów sieciowych.
Na przykład HTTP/2, które szybko staje się standardem de facto dla serwerów internetowych, wspiera „multiplexing zapytań” – funkcję, która pozwala klientowi na równoczesne wysyłanie wielu zapytań w jednym połączeniu TCP.
„W przypadku HTTP/2 wystarczy, aby oba zapytania były umieszczone w jednym pakiecie (na przykład zapisując oba w gnieździe jednocześnie)”. Jednak ta metoda ma swoje niuanse. Na przykład, w większości sieci rozprowadzania treści, takich jak Cloudflare, które dostarczają zawartość do znacznej części Internetu, połączenie między serwerami granicznymi a witryną realizowane jest za pomocą protokołu HTTP/1.1, który nie obsługuje multiplexingu zapytań.
Choć to obniża efektywność ataku czasowego bezwzględnego, nadal pozostaje on dokładniejszy niż klasyczne zdalne ataki czasowe, ponieważ eliminuje jitter między atakującym a granicznym serwerem CDN.
W przypadku protokołów, które nie obsługują multiplexingu zapytań, atakujący mogą używać pośredniego protokołu sieciowego, który enkapsuluje zapytania.
Badacze pokazali, jak działa atak poza czasem w sieci Tor. W tym przypadku atakujący inkapsuluje wiele zapytań w komórce Tor — zaszyfrowanym pakiecie przesyłanym między węzłami w sieci Tor w jednych pakietach TCP.
„Ponieważ sieć Tor dla usług onion przechodzi całą drogę do serwera, możemy zapewnić, że zapytania dotrą jednocześnie” — mówi Van Goetem.
Ataki poza czasem w praktyce
W swoim artykule badacze zbadali ataki poza czasem w trzech różnych sytuacjach.
Przy bezpośrednich atakach czasowych atakujący łączy się bezpośrednio z serwerem i próbuje zorganizować wyciek poufnych informacji związanych z aplikacją.
„Ponieważ podczas tworzenia większości aplikacji internetowych nie uwzględnia się, że ataki czasowe mogą być bardzo praktyczne i precyzyjne, uważamy, że wiele witryn internetowych jest podatnych na takie ataki” — mówi Van Goetem.
Przy międzystronnych atakach czasowych atakujący wysyła zapytania do innych witryn internetowych z przeglądarki ofiary i dokonuje przypuszczeń o treści poufnych informacji, obserwując sekwencję odpowiedzi.
Atakujący wykorzystali ten schemat do wykorzystania luki w programie wypłaty nagród za błędy HackerOne i wydobyli takie informacje, jak słowa kluczowe użyte w poufnych raportach dotyczących nieusuniętych luk.
„Szukam przypadków, kiedy atak czasowy był wcześniej rejestrowany, ale nie był uważany za skuteczny. Błąd HackerOne był zgłaszany co najmniej trzy razy (identyfikatory błędów: , i ), ale nie został usunięty, ponieważ uważano, że atak ten nie może być skuteczny. Wówczas stworzyłem prosty wewnętrzny projekt badawczy związany z atakami poza czasem.
W tamtym czasie wciąż pozostawał bardzo nieoptymalizowany, ponieważ wciąż analizowaliśmy szczegóły ataku, jednak okazał się dość precyzyjny (na moim domowym połączeniu WiFi udało mi się uzyskać bardzo dokładne wyniki).
Badacze również próbowali przeprowadzić ataki poza czasem na protokole WiFi WPA3.
Jeden z współautorów artykułu, Mati Vanhoef, wcześniej odkrył Jednak czas był albo za krótki, aby używać go na wydajnych urządzeniach, albo nie można go było używać przeciwko serwerom.
„Dzięki nowemu rodzajowi ataków czasowych pokazaliśmy, że można wykorzystać handshake uwierzytelniania (EAP-pwd) przeciwko serwerom, nawet jeśli na nich działa potężny sprzęt” – wyjaśnia Van Goetem.
Idealny moment
W swoim artykule badacze przedstawili zalecenia dotyczące ochrony serwerów przed atakami czasowymi, takie jak ograniczenie wykonania do stałego czasu oraz dodanie losowego opóźnienia. Wymagane są dalsze badania w celu wdrożenia praktycznych środków ochrony przed bezpośrednimi atakami czasowymi, które miałyby minimalny wpływ na działanie sieci.
„Uważamy, że ten obszar badań znajduje się na bardzo wczesnym etapie rozwoju i wymaga znacznie głębszego zbadania” – mówi Van Goetem.
W przyszłych badaniach będzie można zbadać inne techniki, które hakerzy mogliby wykorzystać do przeprowadzania równoległych ataków czasowych, inne protokoły oraz pośrednie warstwy sieciowe, które mogą być atakowane, a także ocenić podatność popularnych stron internetowych, które umożliwiają przeprowadzanie takich badań w ramach programu wykrywania błędów.
Nazwa „czasowy” została wybrana „ponieważ w tych atakach nie używaliśmy żadnej (absolutnej) informacji o czasie” – wyjaśnia Van Goetem.
„Co więcej, można je uważać za „czasowe”, ponieważ (zdalne) ataki czasowe są już stosowane od długiego czasu, a według naszych badań sytuacja będzie się tylko pogarszać”.

Pełny tekst raportu z Usenix znajduje się .
Reklama
z ochroną przed atakami DDoS i najnowszym sprzętem. To wszystko o naszych epickie serwery. Maksymalna konfiguracja – 128 rdzeni CPU, 512 GB RAM, 4000 GB NVMe.
Źródło: habr.com
