Watering Hole, czyli „wodopój”, to stosunkowo nowy oraz wyrafinowany atak hakerski polegający na odgadywaniu lub obserwowaniu, z których stron internetowych korzysta cel ataku (najczęściej dana organizacja, jej pracownicy), a następie na zainfekowaniu takiej strony lub stron złośliwym oprogramowaniem, przez co przynajmniej część urządzeń użytkowników docelowych (celów ataku) zostanie zainfekowanych.
Technika ataku Watering Hole
Termin Watering Hole wywodzi się ze świata natury, gdzie drapieżnik zamiast śledzić swoją ofiarę na dużą odległość, typuje miejsce, do którego uda się ofiara – najczęściej jest to właśnie wodopój. Tam drapieżnik czeka na ofiarę niespodziewającą się ataku w bezpiecznym dla niej miejscu.
Tą technikę stosują hakerzy, aby zaatakować swoje ofiary, którymi mogą być pojedyncze osoby, grupy osób lub konkretne organizacje. Jednak zanim dojedzie do przeprowadzenia ataku, hakerzy dokładnie profilują swoje cele, czyli zazwyczaj pracowników dużych przedsiębiorstw, organizacji praw człowieka, urzędów czy grup religijnych w celu ustalenia jakie strony internetowe są przez nich odwiedzane. Zazwyczaj są to fora dyskusyjne lub witryny o tematyce ogólnej, popularne wśród grupy docelowej.
Cyberprzestępcy przed dokonaniem ataku najpierw weryfikują witrynę lub witryny pod kątem ich podatności, w szczególności typu zero-day (czyli znanych przez hakerów luk w zabezpieczeniach, które jeszcze nie zostały załatane). Po znalezieniu właściwych podatności atakujący wstrzykują złośliwy kod JavaScript lub HTML, co stanowi pierwszy etap ataku. Drugim etapem jest odwiedzenie zainfekowanej witryny przez ofiarę, co powoduje uruchomienie złośliwego kodu w celu zainfekowania komputera ofiary. Tutaj możliwość infekcji jest dwojaka:
- ładunek (payload) zawierający złośliwy kod uruchamiany jest automatycznie,
- ofiara może zobaczyć monit z prośbą o wykonanie dodatkowej czynności, która spowoduje pobranie złośliwego kodu (np. kliknięcie w podany w monicie link).
Niezależnie od rodzaju infekcji po pobraniu złośliwego kodu uruchamiany jest łańcuch exploitów mających na celu uzyskanie dostępu przez atakującego do innych zasobów sieciowych i użycie zainfekowanego komputera do przeprowadzenia innych ataków.
Ponadto złośliwy kod zainstalowany na komputerze ofiary może służyć do budowy botnetu, w tym do infekowania innych komputerów pracujących w tej samej sieci.
Warto nadmienić, że w przypadku niektórych ataków Watering Hole haker dostarcza i instaluje złośliwe oprogramowanie bez wiedzy ofiary, co jest powszechnie znane jako atak typu drive-by. Atak ten opiera się na zaufaniu użytkownika do odwiedzanej witryny, silnym do tego stopnia, że pobierze on plik, nie zdając sobie sprawy, że jest zainfekowany złośliwym oprogramowaniem. W takim przypadku atakujący prawdopodobnie użyje złośliwego oprogramowania, takiego jak Remote Access Trojan (RAT), który zapewni hakerowi zdalny dostęp do komputera ofiary.
Jednocześnie należy zaznaczyć, że atak typu „watering hole” różni się od ataków typu phishing i spear-phishing, które zwykle mają na celu kradzież danych lub zainstalowanie złośliwego oprogramowania na urządzeniach użytkowników. Jednakże ataki te często są równie ukierunkowane, skuteczne i trudne do zapobieżenia jak opisywany atak, który ma na celu zainfekowanie komputerów użytkowników, a następnie uzyskanie dostępu do połączonej sieci korporacyjnej. Cyberprzestępcy wykorzystują ten wektor ataku do kradzieży danych osobowych, danych bankowych i własności intelektualnej, a także do uzyskiwania nieautoryzowanego dostępu do wrażliwych systemów korporacyjnych.
Podobieństwo ataku Watering Hole do innych rodzajów ataków
Należy zauważyć, że atak typu Watering Hole wykazuje podobieństwa do innych ataków, w szczególności:
- Ataków na łańcuchy dostaw, ponieważ zarówno w przypadku ataku na łańcuch dostaw, jak i ataku Watering Hole, haker atakuje usługę zarządzaną przez inną firmę w celu zainfekowania systemów innej organizacji. Jednak w przypadku ataków na łańcuchy dostaw zwykle atakowany jest produkt zakupiony przez cel, a nie neutralne strony internetowe, jak podczas ataku Watering Hole;
- Ataków na Honeypot’a, ponieważ honeypoty są atrakcyjnym celem dla hakera i mają na celu śledzenie i badanie jego zachowań podczas takiego ataku, natomiast atak Watering Hole koncentruje się na istniejącej witrynie, z której ofiara już korzysta;
- Ataków typu Man-in-the-Middle (MitM), ponieważ w ataku MitM atakujący przechwytuje i odczytuje lub zmienia komunikację między ofiarą a witryną strony trzeciej, lecz sama witryna nie jest narażona na szwank; jeśli jesteś zainteresowany pozyskaniem bardziej szczegółowych informacji o ataku Man-in-the-Middle, to zachęcam Cię do przeczytania tego przewodnika;
- Ataków typu Tailgaiting, ponieważ atakujący podąża tuż za kimś, komu ufa, aby uzyskać nieautoryzowany dostęp do rzeczywistych przestrzeni lub danych, lecz Tailgaiting, jest najczęściej atakiem fizycznym, a nie cyfrowym.
Zapobieganie atakom Watering Hole
Pomimo tego, że atak ten jest trudny do wykrycia, gdyż koncentruje się na osobach używających jednego adresu IP, to możliwe jest skuteczne zapobieganie przeprowadzeniu takiego ataku. Można to zrealizować poprzez:
- korzystanie z najlepszych praktyk w zakresie cyberbezpieczeństwa, ponieważ ataki Watering Hole są często exploitami; w tym poprzez przestrzeganie opublikowanych najlepszych praktyk i wytycznych dotyczących utwardzania (hardeningu) komputera, co może uniemożliwić uruchomienie łańcucha exploitów i tym samym przeprowadzenie ataku,
- brak zezwolenia na osobiste korzystanie przez pracowników z zasobów korporacyjnych, blokowanie dostępu do stron internetowych, które nie są używane do pracy oraz zablokowanie możliwości korzystania przez pracowników ze stron internetowych w celu komunikacji osobistej,
- niedodawanie relacji zaufania do witryn innych firm; jednakże niektóre witryny wymagają dodatkowych uprawnień do prawidłowego działania – wówczas taki przypadek należy dokładnie zweryfikować lub odgórnie zabronić dodawania wyjątków, ponieważ mogą one pozwolić atakującemu na korzystanie z witryny w przyszłości i przeprowadzać kolejne ataki,
- szkolenie użytkowników, w celu rozpoznawania dziwnych zachowań i unikania naruszeń; należy mieć na uwadze, że użytkownicy mogą mieć zaufanie do witryn, które często odwiedzają, dlatego należy ich przeszkolić, aby nie klikali podejrzanych łączy ani nie omijali ostrzeżeń dotyczących bezpieczeństwa,
- skanowanie i monitorowanie ruchu sieciowego, w tym przychodzącego z zewnątrz (inbound), jak i wychodzącego na zewnątrz (outbound), w tym korzystanie z internetowych serwerów proxy, które mogą skanować zawartość pakietów w czasie rzeczywistym, a dodatkowo monitorowanie typowych i znanych exploitów oraz korzystanie z rejestrowania w sieci w celu wykrywania podejrzanej aktywności,
- przeprowadzanie regularnych testów bezpieczeństwa, co zapobiega celowemu i niezamierzonemu pobieraniu złośliwego oprogramowania lub programów typu rootkit oraz uniemożliwia użytkownikom uzyskiwanie dostępu do zainfekowanych lub złośliwych stron internetowych,
- stosowanie zaawansowanej ochrony przed zagrożeniami oparte o rozwiązania do analizy behawioralnej, które dają organizacjom większe szanse na wykrycie exploitów typu zero-day, zanim atakujący będą mogli zaatakować użytkowników,
- dokonywanie aktualizacji systemów i oprogramowania, ponieważ atakujący infekują strony internetowe, odkrywając luki w ich kodzie, co sprawia, że konieczne jest wykrycie wad lub luk w oprogramowaniu, zanim cyberprzestępcy je znajdą,
- testowanie i zabezpieczanie przed ujawnieniem informacji, w tym poprzez stosowanie bezpiecznych bram internetowych (SWG), które pomagają organizacjom egzekwować zasady dostępu do Internetu oraz filtrować niechciane lub złośliwe oprogramowanie przed dostępem do połączeń internetowych inicjowanych przez użytkowników, co ma kluczowe znaczenie w związku z rozwojem Internetu Rzeczy (IoT) i aplikacji w chmurze, które zwiększają powierzchnie ataków; ponadto SWG chronią organizacje przed zewnętrznymi i wewnętrznymi zagrożeniami dzięki kontroli aplikacji, filtrowaniu URL, zapobieganiu utracie danych (DLP), zdalnej izolacji przeglądarki i głębokiej inspekcji HTTPS, co chroni między innymi przez atakami Watering Hole.
Przykłady ataków Watering Hole
Pomimo że ataki Watering Hole nie należą do najczęstszych, to kilka z nich odbiło się szerokim echem, w szczególności:
- Atak z 2016 roku na polskie banki oraz Komisję Nadzoru Finansowego, który został uznany za najpoważniejsze naruszenie infrastruktury sektora bankowego w Polsce. W przypadku tego ataku każdy komputer użytkownika, który został zainfekowany był przeszukiwany przez złośliwy kod w celu znalezienia luk bezpieczeństwa i luk w oprogramowaniu; jeśli taka luka lub luki zostały odnalezione, to na zainfekowanym komputerze był instalowany malware (złośliwe oprogramowanie), które składało się z trzech komponentów, czyli droppera, loadera i modułu; dropper służył do uruchamiania kolejnych komponentów na komputerze ofiary, z których jeden miał za zadanie modyfikowanie konfiguracji systemu, aby złośliwy program uruchamiał się podczas startu; natomiast loader, który był odszyfrowany przez droppera odpowiadał za załadowanie modułu, w którym znajdowały się kluczowe elementy, w tym usługa komunikacji ze zdalnym serwerem, a więc możliwość wydawania zdalnych poleceń przez cyberprzestępcę; jako ciekawostkę warto nadmienić, że eksperci z firmy ESET natknęli się na kilka próbek złośliwego oprogramowania i odkryli, że reaguje ono na polecenia, które były wydawane po rosyjsku;
- W 2012 r. doszło do naruszenia strony internetowej amerykańskiej Rady ds. Stosunków Zagranicznych (CFR); atak wykorzystywał exploita Gh0st Rat i był znany jako atak VOHO;
- W 2016 r. z serwerów kanadyjskiej Organizacji Międzynarodowego Lotnictwa Cywilnego (ICAO) rozprzestrzeniło się złośliwe oprogramowanie, które zainfekowało sieć Organizacji Narodów Zjednoczonych (ONZ);
- W 2017 r. hakerzy włamali się na ukraińskie strony rządowe w celu rozprzestrzeniania złośliwego oprogramowania zwanego ExPetr;
- W lutym 2019 r. doszło do rozprzestrzeniania unikatowego szkodliwego oprogramowania, które wykorzystywało język programowania Visual Basic Script (VBScript) firmy Microsoft; zagrożenie wykryli badacze firmy Trend Micro, którzy pobrali fragment kodu z GitHub, który posłużył do stworzenia exploita wykorzystującego wieloetapowy schemat infekcji, w tym z wykorzystaniem backdoora nieznanego produktom antywirusowym; złośliwe oprogramowanie łączyło się z prywatnymi kanałami Slacka w celu zwabienia ofiar, co wymagało użycia wyrafinowanych technik hakerskich.
Podsumowanie
Ataki typu „watering hole” są rzadkie, lecz stanowią poważne zagrożenie, ponieważ są trudne do wykrycia i zazwyczaj atakują wysoce bezpieczne organizacje za pośrednictwem ich mniej świadomych pracowników, partnerów biznesowych lub powiązanych dostawców. Z uwagi na to, że naruszają kilka warstw zabezpieczeń, mogą być niezwykle destrukcyjne. Stąd też niezwykle ważne jest stosowanie odpowiednich zabezpieczeń oraz zwiększanie świadomości pracowników poprzez przeprowadzanie regularnych szkoleń z zakresu cyberbezpieczeństwa.
Autor: Michał Mamica