W ostatnich tygodniach, pod wpływem napiętej sytuacji międzynarodowej, nasiliły się ataki hackerskie organizowane zarówno przez grupę Anonymous, jak również ze strony Kremla. W spolaryzowanym świecie działania te popierane są przez rzesze osób, jednak związane z nimi kwestie etyczne nie są czarno-białe. Działania na granicy lub wręcz poza prawem skutkują koniecznością stosowania różnych technik ukrywania tożsamości, a sami hakerzy muszą wykazać się nieprzeciętnymi umiejętnościami, jeśli chcą skutecznie przeprowadzać ataki. Czy w takim razie powinniśmy przyklaskiwać atakom hackerskim? W jaki sposób można skutecznie przeprowadzić atak? W końcu – jak ukrywać swoją tożsamość?
Słuszna sprawa
Jakie kryterium decyduje o słuszności sprawy? Dlaczego większość z nas popiera obecne działania grupy Anonymous? Dlaczego hakerzy walczący z rosyjskim reżimem mają ciche przyzwolenie rządów na przeprowadzanie swoich działań, podczas gdy Edward Snowden musiał ubiegać się o azyl w Rosji?
Snowden był pracownikiem CIA, który w 2013 roku zdecydował się upublicznić na łamach prasy kilkaset tysięcy poufnych, tajnych i ściśle tajnych dokumentów NSA. Dokumenty te zawierały informacje o zakrojonym na szeroką skalę szpiegostwie władz amerykańskich. Dokumenty potwierdzały podsłuchiwanie oraz przechwytywanie wiadomości SMS zarówno instytucji państw sojuszniczych, jak i obywateli Stanów Zjednoczonych, Unii Europejskiej i Azji[1]. Ponieważ to ustrój komunistyczny kojarzy nam się z wykorzystaniem aparatu inwigilacji i zastraszaniem obywateli, przeprowadzanie operacji podsłuchowych na tak wielką skalę wydaje się nie do pomyślenia w demokratycznym kraju. Skąd zatem próby aresztowania Snowdena? Dlaczego o ile odczuwamy oburzenie na myśl o szpiegowaniu nas samych, wyrażamy milczącą zgodę na działanie wywiadów i szpiegowanie krajów, które nie pozostają z nami w sojuszu?
Z łatwością usprawiedliwiamy wszelkie działania, które przynoszą nam korzyści, a krytykujemy te, które są sprzeczne z naszymi zamiarami. Przez to osoby ujawniające nadużycia rządów są przez społeczeństwo traktowani jak bohaterowie, zaś przez polityków jako zdrajcy. Słuszność sprawy zdaje się zatem zależeć od perspektywy obserwatora. Jako Europejczycy, będący częścią tzw. świata zachodniego, za słuszne będziemy uważali przede wszystkim wszelkie działania mające na celu ochronę praw człowieka (opracowanie ich deklaracji wymagało ponad 1.4 tys. rund głosowania).[2]
Aby zło zatriumfowało, wystarczy, by dobry człowiek niczego nie robił. ~Edmund Burke
Jeżeli mamy już ustalone wartości, które uznajemy za słuszne, potrzebni są również ich obrońcy. Należą do nich przede wszystkim wolne media, zwane również czwartą władzą. Wraz z rozwojem rzeczywistości wirtualnej pojawił się kolejny front walk. I to właśnie na tym froncie stanęli tzw. dobrzy hakerzy. Ich zadaniem jest zdobyć dowody, nagłośnić sprawę, a w razie potrzeby stanąć do cyberwojny.
Jesteśmy Anonymous. Jesteśmy Legionem. Nie przebaczamy. Nie zapominamy. Spodziewajcie się nas ~ Twitter. Ce qu’il se passe, twitter.com [dostęp 2017-11-15] (fr.).
Jak pozostać anonimowym?
Panuje powszechne przekonanie, że w Internecie każdy jest anonimowy. Niestety (albo stety), w tym stwierdzeniu nie ma za wiele prawdy. Nasza aktywność w sieci jest monitorowana przede wszystkim przez koncerny, które tworzą nasz wirtualny profil. Gromadzą one informacje o naszej aktywności w Internecie, wykorzystując do tego ciasteczka śledzące oraz skrypty na stronach internetowych. Pozwala im to później między innymi na tworzenie spersonalizowanych reklam, zwiększając tym samym prawdopodobieństwo, że reklama trafi do właściwego odbiorcy. W celu ochrony swojej prywatności użytkownicy mogą skorzystać z tzw. kontenerów aplikacyjnych. Kontenery aplikacyjne są to odizolowane środowiska przeglądarkowe, które odizolowują dany serwis internetowy od innych otwartych kart. Przykładem takiego rozwiązania jest Facebook Container od Mozilli. Działa on poprzez wyizolowanie tożsamości użytkownika w serwisie Facebook do oddzielnego „kontenera”, dzięki czemu Facebook ma utrudnione zadanie w zakresie śledzenia odwiedzin na innych stronach za pomocą zewnętrznych plików cookie. [3] Mozilla umożliwia również tworzenie dodatkowych kontenerów. Możemy dzięki temu odseparować np. sklepy, w których dokonujemy zakupów, od portali informacyjnych. Dzięki temu zwiększmy naszą prywatność w sieci i nie zostaniemy zalani falą spersonalizowanych reklam.
Pomimo zastosowania mechanizmów kontenerów, które pomagają nam stać się odpornymi na działania algorytmów tworzących nasze profile, w dalszym ciągu udostępniamy swoje dane geolokalizacyjne. Musimy pamiętać, że podczas komunikacji w Internecie udostępniamy nasz adres IP. Sam adres IP doprowadzi początkowo jedynie do naszego operatora Internetu, dzięki czemu osoba śledząca nas dowie się prawdopodobnie w jakim mieście/gminie mieszkamy. Czy da się jednak na podstawie IP namierzyć dokładny adres? Okazuje się, że jest to możliwe. Dokładną procedurę opisuje portal dobryvpn.pl[4]:
-
Zakładamy, że ktoś chce pozwać za jakiś komentarz na stronie internetowej internautę. Przede wszystkim musi on łamać przepisy kodeksu karnego (na drodze cywilnej nie da się zidentyfikować użytkownika).
-
Po zgłoszeniu się do odpowiednich służb, na wniosek np. sądu lub prokuratury, policja występuje o wydanie informacji, wszystkich danych, czasu połączeń i adresu IP użytkownika do administratora serwisu internetowego.
-
Po rozpatrzeniu wniosku, administrator serwisu internetowego wydaje policji informacje na temat użytkownika.
-
Mając adres IP i dokładne daty i godziny zdarzenia, policja określa dostawcę internetu użytkownika, Następnie kieruje się do niego z wnioskiem o identyfikację i wydanie danych internauty.
-
Dostawca internetu analizuje swoje logi i na ich podstawie przekazuje informacje o użytkowniku, który jest obiektem zainteresowania służb państwa.
Jeżeli chcielibyśmy ukryć nasze dane geolokalizacyjne, obawiając się nadużyć ze strony podmiotów komercyjnych jak również inwigilacji państwa, lub po prostu chcielibyśmy skorzystać z serwisu niedostępnego w naszym kraju, możemy skorzystać z VPN lub sieci TOR.
VPN – czyli wirtualna sieć prywatna. Mechanizm działania sieci VPN polega przede wszystkim na ukryciu prawdziwego adresu IP urządzenia oraz na szyfrowaniu danych, przesyłanych podczas trwania połączenia internetowego. Tunelowanie VPN jest wykorzystywane do ukrycia aktywności w Internecie przed agentami rządowymi i dostawcami usług internetowych. VPN tworzy specjalny szyfrowany tunel pomiędzy komputerem użytkownika, a specjalnym serwerem pośredniczącym. Połączenie użytkownika „wychodzi w świat” dopiero z tego serwera, dlatego jeżeli ktoś chciałby namierzyć użytkownika za pomocą adresu IP trafi wyłącznie do serwera pośredniczącego. Dzięki temu prawdziwy adres IP zostaje całkowicie ukryty, gdyż dociera tylko do serwera VPN. Mechanizm ten jest też zwykle odporny na drogę prawną przytaczaną wcześniej. Istnieją dostawcy usług VPN, którzy nie przechowują żadnych informacji na temat aktywności użytkowników. Posiadają oni siedziby w państwach, w których nie ma obowiązku gromadzenia żadnych danych w usługach telekomunikacyjnych.
Sieć TOR zapobiega analizie ruchu sieciowego i w konsekwencji zapewnia użytkownikom prawie anonimowy dostęp do zasobów Internetu.[5] Sieć TOR jest darmowa, a do skorzystania z niej wystarczy pobranie specjalnej przeglądarki ze strony https://www.torproject.org/.
Atak hackerski i jak go przeprowadzić
Na wstępie tej sekcji artykułu pragniemy zaznaczyć, że wszelkie opisane metody ataków zostały przedstawione jedynie w celach naukowych i mają na celu zwiększyć świadomość społeczną istniejących problemów.
Wśród ataków możemy wyróżnić ataki mające na celu spowodowanie niedostępności systemu lub przejęcie danych. Najbardziej powszechną metodą mającą na celu wywołanie niedostępności serwisu jest atak DDoS. Atakujący próbuje wykorzystać wszelkie dostępne zasoby jakimi dysponuje operator serwisu. Weźmy dla przykładu ataki na serwisy bankowe. Takie ataki miały miejsce po rozpoczęciu wojny na Ukrainie zarówno na Ukrainie, Rosji jak i w Polsce. Można przypuszczać, że są to jedne z najbardziej popularnych ataków w prowadzonej cyberwojnie. Więcej informacji można znaleźć pod linkiem.
Jak wygląda samo przeprowadzenie ataku? Atakujący stara się znaleźć endpoint, który będzie się charakteryzował dużym nakładem obliczeniowym, a tym samym długim czasem odpowiedzi (dłuższym od pozostałych), przy małym rozmiarze pliku wyjściowego.
W kolejnym kroku atakujący tworzy pętlę zapytań, za pomocą których pobiera wartości znajdujące się pod wskazanym endpointem. Oczywiście takie pobieranie musi się odbywać asynchronicznie. Serwer musi odpowiedzieć na „ciężkie” zapytania wiele razy w tym samym czasie. Nie jest zatem w stanie przetwarzać zapytań od innych użytkowników.
Ataki DDoS są dość proste (i tanie) do przeprowadzenia, trudne do odparcia i mocno uciążliwe. Jeśli atakujący korzysta tylko z jednego adresu IP możemy go po prostu zablokować. Jeżeli natomiast atak jest rozproszony, tj. zapytania przychodzą np. z 1000 adresów IP, a do tego są to adresy z różnych krajów, to praktycznie niemożliwym jest wycięcie tylko tych złośliwych requestów. Zdarza się również, że ataki DDoS są jedynie zasłoną dymną przed atakiem mającym na celu wykraść dane.
Metod mających na celu wykraść dane bardzo wiele. Obrazy z filmów, gdzie haker podaje wszelkie możliwe kombinacje hasła i w ten sposób wyciąga dane z konta ofiary możemy jednak włożyć między bajki. Jeżeli użytkownik nie używa haseł słownikowych (połączenie wyrazów występujących w danym języku) to złamanie hasła jest bardzo czasochłonne i zwykle po prostu nieopłacalne. Najskuteczniejszym rozwiązaniem okazuje się być zwykle podrobienie strony internetowe i liczenie na to, że użytkownik sam poda swoje dane logowania. Takie rodzaje ataku, zależnie od sposobu jego przeprowadzenia, nazywamy pharming lub phishing.[6] Samo stworzenie kopii strony internetowej jest bardzo proste, prawdziwą trudnością tego podejścia jest przekierowanie na nią użytkownika. W związku z tym należy zachować czujność i nie klikać w linki przysłane w mailach oraz sprawdzać dokładnie adres strony internetowej oraz czy strona wykorzystuje protokół HTTPS, szyfrujący połączenie pomiędzy przeglądarką a serwerem.
Hakerzy chcący wykraść dane poszukują luk w zabezpieczeniach[7]. Taką luką może być np. zła konfiguracja uprawnień użytkownika. W takim przypadku osoba niezalogowana lub zalogowana jako użytkownik A może uzyskać dostęp do danych użytkownika B. Atakujący może również spróbować ataku SQL Injection. Polega on na podaniu np. w formularzu danych fragmentu kodu SQL np. OR 1 = 1.
Jeżeli programista tworzy zapytania w programie ręcznie i jako zmienną wklei złośliwy kod, może dojść do wycieku wszystkich danych. Pomimo tego, że atak ten jest dobrze znany i aktualne wersje frameworków są przed nim zabezpieczone, starsze systemy niestety bardzo często nie mają aktualizowanych bibliotek bądź działają w oparciu o nieutrzymywane i przez to pozbawione refaktoryzacji fragmenty kodu, nieobsługujące możliwości wystąpienia tego typu ataków.
Luki w zabezpieczeniach można znaleźć wszędzie. Administrator mógł zapomnieć zmienić uprawnienia w serwerze, na którym działa system. Nawet działające od kilkunastu lat logowanie danych może pozostawiać otwartą furtkę dla tych, którzy wiedzą jak jej użyć. Więcej o podatności odkrytej w tym roku można przeczytać tutaj.
Podsumowanie
Mówi się, że potrzeba całego zespołu informatyków, by zabezpieczyć system i tylko jednego hakera, by go złamać. Pisząc kod systemu powinno się zastanowić nad każdą linijką kodu, czy przypadkiem nie umożliwi ona kiedyś przejęcia systemu. Osoby zabezpieczające systemy powinny mieć wiedzę i umiejętności potrzebne do ich zhakowania. Stąd organizowane są konkursy Capture The Flag polegające na złamaniu zabezpieczeń serwisu, na którym znajduje się plik, który należy wykraść. Dzięki takim zawodom informatycy mogą stać się w pełni świadomymi tego jak myśli haker, a w przyszłości będą w stanie zabezpieczyć swoją aplikację. Ostatecznie, gdy dojdzie do cyberwojny, będą posiadali wiedzę i umiejętności, konieczne by skutecznie bronić wartości zachodniego świata.
Źródła
[1] https://pl.wikipedia.org/wiki/Edward_Snowden
[2] https://dzieje.pl/aktualnosci/70-lat-temu-onz-uchwalil-powszechna-deklaracje-praw-czlowieka
[3] https://addons.mozilla.org/pl/firefox/addon/facebook-container/
[4] https://www.dobryvpn.pl/artykuly/jak-namierzyc-kogos-po-ip/
[5] https://pl.wikipedia.org/wiki/Tor_(sie%C4%87_anonimowa)
[6] https://www.computerworld.pl/news/Pharming-czyli-phishing-bez-przynety,422955.html
[7] Sekurak bezpieczeństwo aplikacji webowych, Michał Bentkowski, Gynvael Coldwind, Artur Czyż, Rafał Janicki, Jarosław Kamiński, Adrian Michalczyk, Mateusz Niezabitowski, Marcin Piosek, Michał Sajdak, Grzegorz Trawiński, Bohdan Widła, 2021
Świetny artykuł! Bardzo dokładnie opisuje zarówno szanse, jak i wyzwania związane z wprowadzeniem kryptowalut, NFT i technologii blockchain do współczesnej…