Badacze z Kaspersky Lab przyjrzeli się publicznie dostępnym narzędziom sprzętowym i programowym służącym do przechwytywania haseł, dochodząc do wniosku, że osoba z podstawową wiedzą programistyczną może w ciągu kilku godzin stworzyć potężne narzędzie hakerskie, mając do dyspozycji jedynie około 100 zł. W eksperymencie wykorzystano urządzenie USB oparte na minikomputerze Raspberry Pi, które zostało skonfigurowane w określony sposób i nie zawierało żadnego szkodliwego oprogramowania. Tak wyposażeni badacze byli w stanie potajemnie gromadzić dane uwierzytelniające użytkowników z sieci korporacyjnej z prędkością 50 haseł na godzinę.
Badanie zostało zainspirowane prawdziwą historią: w innym dochodzeniu, w którym uczestniczyli eksperci z Kaspersky Lab, wewnętrzny szpieg (pracownik firmy sprzątającej) użył nośnika USB do zainfekowania szkodliwym oprogramowaniem stacji roboczej znajdującej się w atakowanej organizacji. Po usłyszeniu tej historii entuzjaści bezpieczeństwa z Kaspersky Lab zaczęli się zastanawiać, czego jeszcze mogliby użyć szpiedzy, aby włamać się do sieci. Czy można tego dokonać, nie wykorzystując żadnego szkodliwego oprogramowania?
Badacze wykorzystali minikomputer Raspberry Pi, który skonfigurowali jako kartę sieci Ethernet, dokonali dodatkowych zmian konfiguracyjnych w systemie operacyjnym komputera i zainstalowali kilka publicznie dostępnych narzędzi służących do wykrywania pakietów oraz gromadzenia i przetwarzania danych. Na koniec badacze skonfigurowali serwer służący do gromadzenia przechwyconych danych. Następnie urządzenie to zostało podłączone do atakowanej maszyny i zaczęło automatycznie przekazywać do serwera skradzione dane uwierzytelniające.
Było to możliwe dzięki temu, że system operacyjny na zaatakowanym komputerze zidentyfikował podłączone urządzenie Raspberry Pi jako przewodową kartę sieciową (LAN) i automatycznie przydzielił mu wyższy priorytet niż innym dostępnym połączeniom sieciowym, a także – co ważniejsze – zapewnił mu dostęp do wymiany danych w sieci. Eksperymentalna sieć stanowiła symulację segmentu rzeczywistej sieci korporacyjnej. Badacze zdołali zebrać dane uwierzytelniające wysyłane przez atakowany komputer PC i jego aplikacje podczas prób uwierzytelnienia serwera domeny i serwera zdalnego. Udało im się także zebrać tego rodzaju dane z innych komputerów w segmencie sieci.
Co więcej, ponieważ scenariusz ataku pozwalał na przesłanie przechwyconych danych za pośrednictwem sieci w czasie rzeczywistym, im dłużej urządzenie było połączone z komputerem PC, tym więcej danych zdołało zebrać i przesłać do zdalnego serwera. W ciągu zaledwie pół godziny trwania eksperymentu badaczom udało się zebrać prawie 30 skrótów haseł przesłanych za pośrednictwem zaatakowanej sieci. Nietrudno zatem wyobrazić sobie, ile danych można zebrać w ciągu zaledwie jednego dnia. W najgorszym wypadku przechwycone mogłyby zostać również dane uwierzytelniające administratora domeny. Aby tak się stało, musiałby on zalogować się na swoje konto, w czasie gdy urządzenie byłoby wpięte do jednego z komputerów PC wewnątrz domeny.
Potencjalna powierzchnia ataków w przypadku tej metody przechwytywania danych jest duża: eksperyment udało się odtworzyć zarówno na zablokowanych, jak i niezablokowanych komputerach działających pod kontrolą systemów Windows i macOS. Badacze nie zdołali odtworzyć ataku na urządzeniach opartych na systemie Linux.
Po przeprowadzeniu tego eksperymentu zaniepokoiły nas głównie dwie kwestie: po pierwsze – w ogóle nie musieliśmy tworzyć oprogramowania – skorzystaliśmy z narzędzi publicznie dostępnych w internecie. Po drugie – uderzyła nas łatwość, z jaką mogliśmy przygotować weryfikację koncepcji dla naszego narzędzia. To oznacza, że eksperyment ten mógłby zostać odtworzony potencjalnie przez każdą osobę, która potrafi poruszać się po internecie i posiada podstawową wiedzę techniczną. Nietrudno przewidzieć, jak mogłoby się to skończyć, gdyby atak ten przeprowadzili cyberprzestępcy. Właśnie z tego powodu zdecydowaliśmy się zwrócić uwagę na ten problem. Zarówno użytkownicy, jak i administratorzy sieci firmowych powinni być przygotowani na tego rodzaju atak — powiedział Siergiej Lurje z Kaspersky Lab, entuzjasta bezpieczeństwa oraz współautor badania.
Mimo że atak nie pozwala na przechwytywanie samych haseł, a jedynie skrótów (ang. hash), stanowiących ich interpretację w czystym tekście po tym, jak zostały przetworzone przez określony algorytm, skróty te mogą zostać odszyfrowane do postaci pierwotnych haseł.
Aby zabezpieczyć swój komputer lub sieć przed atakami przy pomocy podobnych urządzeń, eksperci ds. bezpieczeństwa z Kaspersky Lab zalecają następujące działania:
W przypadku użytkowników:
- Po powrocie do komputera sprawdź, czy z portów nie wystają żadne dodatkowe urządzenia USB.
- Nie przyjmuj wymiennych nośników danych pochodzących z niezaufanych źródeł. W rzeczywistości może to być narzędzie do przechwytywania haseł.
- Wyrób w sobie nawyk kończenia sesji na stronach, które wymagają uwierzytelnienia. Zwykle oznacza to kliknięcie przycisku wylogowania.
- Regularnie zmieniaj hasła – zarówno na swoim komputerze, jak i często odwiedzanych stronach internetowych. Pamiętaj, że nie wszystkie Twoje ulubione strony internetowe będą posiadały mechanizmy zabezpieczające przed podmianą danych dotyczących ciasteczek. Możesz stosować wyspecjalizowane oprogramowanie do zarządzania hasłami, które zapewnia łatwe zarządzanie silnymi i bezpiecznymi hasłami.
- Włącz uwierzytelnianie dwuskładnikowe, na przykład w formie żądania potwierdzenia loginu przez SMS.
- Zainstaluj i regularnie aktualizuj rozwiązanie bezpieczeństwa oferowane przez sprawdzonego i zaufanego dostawcę.
W przypadku administratorów:
- Jeśli pozwala na to topologia sieci, zalecamy wykorzystywanie wyłącznie protokołu Kerberos w celu uwierzytelnienia użytkowników domeny.
- Ogranicz uprzywilejowanym użytkownikom domen możliwość logowania się do przestarzałych systemów, zwłaszcza administratorom domen.
- Hasła użytkowników domen powinny być regularnie zmieniane. Jeśli z jakiegoś powodu polityka organizacji nie przewiduje regularnej zmiany haseł, należy ją w tym kontekście zmodyfikować.
- Wszystkie komputery w sieci firmowej powinny być chronione przy pomocy rozwiązań bezpieczeństwa i regularnie aktualizowane.
- W celu uniemożliwienia podłączania nieautoryzowanych urządzeń USB można zastosować funkcję kontroli urządzeń.
- W przypadku posiadania danego zasobu sieciowego zalecamy aktywowanie HSTS (HTTP Strict Transport Security) w celu uniemożliwienia przełączania się z protokołu HTTPS na HTTP i fałszowania danych uwierzytelniających ze skradzionych ciasteczek.
- W miarę możliwości należy wyłączyć tryb nasłuchiwania i aktywować ustawienie izolacji klienta (AP) w ruterach i switchach Wi-Fi, uniemożliwiając nasłuchiwanie ruchu przepływającego przez inną stację roboczą.
- Należy włączyć ustawienie DHCP Snooping, aby chronić użytkowników sieci firmowej przed przechwyceniem ich żądań DHCP przez fałszywe serwery DHCP.
Oprócz przechwytywania danych uwierzytelniających z sieci firmowej eksperymentalne urządzenie może być wykorzystywane do gromadzenia ciasteczek z przeglądarek na zaatakowanych maszynach.