Mirai - wyzwanie dla bezpieczeństwa sieci
Botnety złożone z urządzeń elektronicznych połączonych z internetem jak kamery CCD TV czy routery stanowią już obecnie znaczne zagrożenie bezpieczeństwa. Przyczyną jest wielkość i trudność powstrzymania ataków DDoS realizowanych z ich udziałem.
Internet Rzeczy może stać się zagrożeniem na wielką skalę, jak dowodzi tego historia Mirai. Niemal wszyscy widzą w nim jeden ogromny, największy na świecie botnet; dzienniki podawały nawet informację, że zawiera on 13 mln urządzeń podłączonych do Interenetu, a więc klasyfikowanych do grupy Internetu Rzeczy.
Nie jest to prawdą. Od czasu ujawnienia kodu źródłowego botnetu przez Annę-Senpai i zamieszczenia go na GitHubie, mamy do czynienia z co najmniej kilkoma różnymi botnetami, połączonymi tylko kodem Mirai, choć można już zauważyć, że dokonywano nim przeróbek.
Klon Mirai odpowiedzialny jest za atak z października 2015 roku na serwery DNS, gdzie zarejestrowano do 20 tys. żądań http na sekundę, wysyłanych z kamer CCD TV, wyprodukowanych przez dwie chińskie firmy. Zidentyfikowano wtedy 900 kamer w lokalizacjach globalnych, tworzących botnet wykorzystywany do ataków DDoS. Prawdopodobnie do konstrukcji tego botnetu skorzystano danych pochodzących z Projektu Shodan, czyli wyszukiwarki niezabezpieczonych kamer internetowych (https://www.shodan.io/).
Taki właśnie sposób tworzenia botnetów, jest swego rodzaju wizytówką pirackich sieci internetu Rzeczy, jak Mirai i jego klony. Wszystkie one działają na tej samej zasadzie - wyszukują i przejmują niezabezpieczone urządzenia Internetu Rzeczy. Jest to możliwe z kliku powodów: pierwszy to popularność urządzeń IoT, przekładająca się na zdecydowany wzrost ich produkcji i jej rozwój przez firmy azjatyckie, głównie chińskie. Przyczynia się to do spadku cen, ale też i drugim powodem jest uboczny skutek takiego trendu - masowo produkowane urządzenia są zabezpieczone fabrycznymi hasłami, prostymi i łatwymi do złamania, nawet przy pomocy metody brute force. Po trzecie, są one podłączane do Sieci także bez ograniczeń transferowych, co znacznie ułatwia przeprowadzenie ataku DDoS; łatwo też takie przejęte urządzenia połączyć we własną sieć. Generuje ona tyle ruchu że nie pomaga tradycyjny i dość prosty sposób obrony, jakim do tej pory było przekierowanie na inne serwery.
Możliwości botnetów opartych na internecie rzeczy pokazał atak na serwery DNS firmy DyN, wykorzystywane przez największe firmy usług webowych, co spowodowało czasową niedostępność portali m.in. Amazon, Reddit, Netflix, Spotify, GitHub, Twitter. Zastosowano przy tym sposób miarę nowatorski - atakowały niezależnie trzy sieci czyli prawdopodobnie trzy botnety luźno ze sobą skoordynowane, uderzając w poszczególne centra danych przy czym zostały zablokowane nawet publiczne DNS-y. Możliwości działania na DNS-ach DyN zachowali jedynie użytkownicy OpenDNS, ponieważ te serwery stosują buforowanie zapytań. Skuteczny atak trwał cały dzień od 13 do 23. Odpowiedzialna za ten atak była grupa New World Hackers.
Warto zauważyć, że botnety oparte na Mirai atakują zwłaszcza firmy bezpieczeństwa. I tak atak takiego botnetu na serwery firmy Akamai, ruchem 620 Gb/s spowodował iż ten dostawca internetu zerwał umowę z firmą Krebs Security, o co właśnie chodziło atakującym. Podobny atak dotknął serwery firmy bezpieczeństwa Level 3. Jej eksperci prowadzili śledztwo w sprawie zagrożeń botnetami IoT; odkrywając kolejny botnet - Bashlight, o nieco innymi kodzie niż Mirai. Do tej pory przejął on więcej niż 1,2 mln urządzeń. Analitycy z Level 3 jako pierwsi postawili także hipotezę, że rozrost botnetów IoT może być trudny do powstrzymania, ponieważ w przeciętnym amerykańskim gospodarstwie domowym, według firmy badawczej IHS Markit, znajduje się już średnio 13 urządzeń podłączonych do Sieci, zaś do 2020 roku ich liczba ma wzrosnąć dwukrotnie. Prawdopodobne jest także iż wkrótce botnety IoT będą największymi "czarnymi" sieciami do wynajęcia, które posłużą np. do zamówionych ataków DDoS na usługi konkurentów na rynku komercyjnym.
Zważywszy na to, że kod źródłowy Mirai został upubliczniony, a trend dotyczący rozwoju internetu Rzeczy staje się coraz silniejszy, w najbliższej przyszłości nie należy spodziewać się zaniechania operacji prowadzonych botnetami IoT.
Warto zauważyć, że eksperci Kaspersky Labs wykonali analizę działania Mirai. Według kodu źródłowego, opublikowanego na forum użytkowników, botnet ten składa się z następujących elementów:
- centrum zarządzania i kontroli (C&C) z bazą danych MySQL, która obejmuje wszystkie zainfekowane urządzenia IoT czyli boty i wysyła polecenia do mniejszych serwerów dystrybucji;
- Scan Receiver, modułu gromadzącego wyniki działań każdego bota i przekazującego go do modułu podatnych na ataki Dystrybutor;
- Downloadera, modułu przekazującego plik wykonywalny bota na urządzenie podatne na atak z użyciem narzędzi wget i ftp, nawet jeśli nie ma ich w systemie zaatakowanym (korzysta z własnych);
- samego bota, który o infekcji łączy się z C&C, skanuje IP w celu sprawdzenia innych podatnych na ataki urządzeń i wysyła wynik do komponentu Scan Receiver, co umożliwia wysłanie kolejnego malware.
Co ciekawe, botnet Mirai korzysta w czasie skanowania ze słownika loginów i haseł, podczas próby łączenia się z urzadzeniem. W oryginalnym pliku Mirai jest tych haseł i loginów niewiele, jednak w następnych plikach można znaleźć ich znaczne rozszerzenie, obejmujące nowe urządzenia Internetu Rzeczy, co pokazuje, że kod Mirai różne grupy modyfikowały samodzielnie.
Analitycy Kaspersky zbadali aktywność botnetów opartych na Miar stawiając testowy serwer z otwartym portem telnet w internecie. Już po trzech minutach od chwili aktywacji nastąpiły próby połączeń automatycznych z kilku różnych hostów. Połączenia te dokonywane były przez botnety Mirai, na co wskazywały konta wykorzystywane przez boty w czasie prób łączenia, znajdujące się na liscie słów ze słownika do łamania haseł przy użyciu brute force; słownik ten znajdował się w pliku oryginalnego botnetu. Hosty, które przeprowadzały skanowanie były w większości przypadków urządzeniami IoT - routerami i kamerami IP. Warto zauważyć, że niektóre pary login:hasło, odnosiły się do konkretnych urządzeń np. root : xc3511 i root : vizxv to konta kamer IP znanych chińskich producentów.
Botnet ten i jego klony jednak mają okresy "spadku formy". I tak eksperci Kaspersky zarejestrowali 3 grudnia 2016 aż 8 689 prób łączenia się z testowym serwerem przez urządzenia botnetu, podczas gdy 10 dni później było to 5 553 próby. Można to wiązać zarówno akcjami policji przeciw botnetom, jak i z konfliktami w samych grupach przestępczych nimi zarządzających. Pewne jest jednak, że tego typu botnety jak Mirai nigdy nie ulegną likwidacji - są nazbyt przydatnych i prostym w obsłudze narzędziem do ataku DDos, zaś w przyszłości być może także do spamowania.
Istnieją próby ograniczenia ataków za pomocą botnetów IoT. Najciekawsze rozwiązania to PEIP (Path Enhanced IP) autorstwa Dona Cohena, czyli rozszerzenie protokołu IP o mechanizm pozwalający na ustalanie ścieżek pakietów wysłanych do docelowego hosta. Obecnie nie bardzo można bowiem ustalić, przez które routery idzie pakiet do punktu docelowego, co umożliwia zalewanie pakietami serwerów-ofiar ataku. Po jego wdrożeniu niektóre ścieżki byłyby blokowane, utrudniając bardzo ataki.
Z kolei implementacja protokołu BCP 38 przez dostawców internetu umożliwiłaby blokowanie adresów IP, które początkowo nie zostały przypisane do urządzenia przez serwer, z którym się łączą, co znacznie utrudniłoby znowu zapychanie łącz przez masowane ataki DDoS. Protokół ten stosuje bowiem zasadę zerowego zaufania po zaakceptowaniu ruchu z konkretnego adresu IP.
Co można zrobić, aby urządzenie IoT nie stało się częścią botnetu Mirai? Najpierw konieczna jest zmiana domyślnego konta na urządzeniu, przy czym hasła do tego konta należy traktować jak hasła do poczty elektronicznej czyli utrudniać rozłamanie poprzez stosowanie znaków specjalnych, dużych liter i cyfr. Czasem wystarczy już to działanie oraz aktualizacje firmware, ale tylko z zaufanej strony producenta. Dodatkowo można wzmocnić ochronę zablokowaniem potencjalnych punktów wejścia do systemu operacyjnego na urządzeniu (telnet/SSH/panel sieciowy), co uniemożliwiłoby do niego dostęp za pośrednictwem Sieci.
MM