Na czym polega atak typu Replay?

Udostępnij
Copied to clipboard!
Na czym polega atak typu Replay?
Posłuchaj tego artykułu
00:00 / 00:00

Atak typu "replay", czasami nazywany również atakiem typu playback lub po dosłownie atakiem metodą powtórzenia, to rodzaj cyberataku, w którym atakujący przechwytuje, a następnie dokonuje retransmisji danych przez sieć. Ze względu na charakter oryginalnych danych (które zwykle pochodzą od autoryzowanego użytkownika) zapory sieciowe czy też programy monitorujące ruch traktują atak tak, jakby był on zwykłą transmisją danych. Hakerzy dokonujący ataków typu "replay" niekoniecznie dokonują rozszyfrowywania przechwytywanych przez nich danych.


Co mogą osiągnąć hakerzy wykonując udany atak typu Replay?

Ataki Replay mogą być wykorzystane do uzyskania dostępu do informacji przechowywanych w chronionej sieci (czyt. środowisku), poprzez przekazanie jej pozornie prawidłowych danych uwierzytelniających. Mogą być również wykorzystywane do oszukiwania instytucji finansowych w celu powielania transakcji, pozwalając napastnikom na pobieranie pieniędzy bezpośrednio z kont ofiar.

Czasami zdarza się również, że hakerzy łączą kawałki różnych zaszyfrowanych danych (czyt. wiadomości), a następnie przesyłają taki szyfr do sieci - takie działanie określane jest atakiem typu cut-and-paste. Reakcja sieci na ten rodzaj ataku często dostarcza hakerowi cennych informacji, które mogą być wykorzystane do dalszego eksplorowania systemu (czyt. środowiska) ofiary.

Pomimo oczywistych niebezpieczeństw jakie za sobą niosą, istnieją pewne ograniczenia co do tego, co dokładnie może osiągnąć haker wykonujący tego typu ataki. Atakujący nie może np. zmieniać danych, które są wysyłane, bez odrzucania ich przez sieć, co dosyć mocno ogranicza skuteczność takiego ataku. Przed atakami Replay można się również dosyć łatwo obronić. Najbardziej podstawową formą obrony jest dodawanie znacznika czasu do transmitowanych pakietów danych, co pozwala osiągnąć bezpieczeństwo przed prostymi atakami typu Replay. Innym sposobem jest buforowanie powtarzających się wiadomości przez serwer, a w przypadku wykrycia przekroczenia dozwolonej normy dokonanie najzwyklejszej blokady.


Dlaczego ataki typu Replay mają znaczenie w świecie kryptowalut

Ataki typu Replay są szczególnie istotne w kontekście transakcji kryptowalutowych i łańcuchów bloków. Związane jest to z faktem, iż w sieciach blockchain czasami dochodzi do wprowadzenia wymuszonych lub uzgodnionych zmian w ich protokołach lub powstawania tzw. aktualizacji niekompatybilnych wstecz, czyli inaczej mówiąc hard forków.

W przypadku powstania hard forka, istniejąca sieć (czyt. łańcuch bloków) dzieli się na dwie części, z których jedna działa na zasadach znanych dotychczas - starsza wersja -  a druga działa na nowych zasadach - zaktualizowana wersja. Niektóre z hard forków mają jedynie na celu uaktualnienie łańcucha bloków, poprzez wprowadzenie zmiany, która jest akceptowana przez całą społeczność danej kryptowaluty, podczas gdy inne skutkują wymuszonym rozgałęzieniem łańcucha, co w efekcie wiąże się z powstaniem całkowicie nowej kryptowaluty. Jednym z najbardziej znanych przykładów hard forków miał miejsce 1 sierpnia 2017 roku, kiedy to z głównego łańcucha BItcoina w wyniku forku powstał Bitcoin Cash. 

W przypadku wystąpienia hard forku teoretycznie możliwym staje się wykonanie ataku typu Replay na sieć blockchain. Transakcja przetworzona i zatwierdzona w pierwszym łańcuchu jest również ważna w drugim łańcuchu. W rezultacie osoba, która otrzymała określoną liczbę jednostek danej kryptowaluty od innej osoby za pośrednictwem pierwszego łańcucha, może przełączyć się na inną łańcuch, powtórzyć transakcję i w nieuczciwy sposób przenieść identyczną liczbę jednostek na swojego konta po raz drugi. Użytkownicy, którzy po raz pierwszy skorzystają z którejkolwiek z sieci blockchain po poprawnym wykonaniu się hard forka, co do zasady nie są podatni na te ataki, ponieważ przed forkiem nie posiadali żadnych danych (czyt. środków) w oryginalnym łańcuchu.


W jaki sposób można chronić sieci Blockchain przed tymi atakami?

Pomimo tego, że sieci blockchain w momencie wykonania forku są w pewnym sensie podatne na ataki typu Replay, większość forków zawiera w sobie specjalne założenia (czyt. protokoły) bezpieczeństwa, które zostały specjalnie zaprojektowane, aby zapobiec przeprowadzeniu skutecznego ataku. Metody stosowane do obrony przed atakami typu Replay dzielą się na dwie podstawowe kategorie: strong replay protection oraz opt-in replay protection. SRP zakłada dodanie odpowiedniego znacznika do nowego łańcucha, który dba o to aby transakcje wykonane za jego pośrednictwem były niezgodne z oryginalnym węzłem i na odwrót. Mechanizm ten został m.in wykorzystany kiedy Bitcoin Cash sforkował się z Bitcoina.

W przypadku poprawnego zaimplementowania takiej ochrony, zabezpieczenie to jest automatycznie uruchamiane w momencie wykrycia hard forku przez sieć. Opt-in Replay Protection z kolei wymaga od użytkowników ręcznego wprowadzania zmian w swoich transakcjach, aby uniemożliwić ich ponowne wykonanie. Ta forma ochrony wybierana jest w przypadku uzyskania konsensusu wśród społeczności danej kryptowaluty co do zasadności przeprowadzenia aktualizacji jej kodu. Taka sytuacja skutkuje wykonaniem się hard forku, ale nie jako metody na powstanie dwóch oddzielnych sieci, a dokonanie wymaganej i zaakceptowanej aktualizacji oryginalnego łańcucha.

Poza rozwiązaniami zaszytymi w kod danej kryptowaluty, użytkownicy sami z siebie również mogą podejmować określone kroki, aby uchronić się przed skutkami ataków typu replay. Jedną z popularniejszych metod jest blokowanie jednostek danej kryptowaluty przed użyciem do momentu kiedy łańcuch bloków nie osiągnie określonego numeru bloku. Taka blokada skutecznie uniemożliwia wykonanie ataku typu replay z udziałem tych jednostek. Należy jednak zauważyć, że nie wszystkie portfele i sieci oferują taką funkcję.


Końcowe spostrzeżenia

Ataki typu replay stanowią realne zagrożenie dla bezpieczeństwa każdej z sieci. W przeciwieństwie do wielu innych typów ataków, ataki typu replay nie opierają się na odszyfrowaniu danych, co czyni je skutecznym narzędziem w rękach hakerów w świecie, który coraz bardziej opiera się na szyfrowaniu. Łańcuchy blockchain podlegające forkowi są szczególnie narażone na tego typu formę ataku. Istnieją jednak solidne rozwiązania, które są w stanie skutecznie ochronić blockchain przed skutkami takich ataków. Zastosowanie zabezpieczeń z typu SRP pozwala osiągnąć pewność, że napastnik nie będzie w stanie ponownie wykonać transakcji po odbyciu się hard forku.

Loading