DIY wykrywanie botnetów: techniki i wyzwania
botnety istnieją od ponad dwóch dekad, a wraz z rozwojem Internetu Rzeczy (IoT) rozprzestrzeniły się dalej na urządzenia, o których nikt nie przypuszczał: routery, urządzenia mobilne, a nawet tostery.
niektóre botnety są legionami żołnierzy botów czekających na polecenie ataku na serwer docelowy, zazwyczaj w celu przeciążenia serwera atakiem DDoS (distributed denial-of-service). Inne botnety atakują określone urządzenia, kradnąc hasła lub wydobywając kryptowaluty. Kopanie kryptowalut, w szczególności, było ostatnio dramatycznie rosnącym zagrożeniem dla organizacji, z botnetami, takimi jak Coinhive i CryptoLoot, umożliwiającymi cyberprzestępcom zarabianie nawet 100 milionów dolarów rocznie kosztem mocy obliczeniowej ofiar. Smominru, wśród największych botnetów górniczych kryptowaluta, zainfekował ponad pół miliona maszyn za pomocą niesławnego exploit EternalBlue wyciekły z NSA.
aby zapobiec infekcjom botnetów, organizacje muszą być w stanie je wykryć. Ale wykrywanie botnetów nie jest łatwe. Przyjrzyjmy się niektórym z najlepszych technik i wyzwań w wykrywaniu botnetów.
metody wykrywania botnetów
co to jest botnet? Mówiąc najprościej, jest to klaster botów — skompromitowanych komputerów i urządzeń-które wykonują polecenia wydawane przez właściciela botnetu. Zazwyczaj właściciel botnetu dedykuje serwer command and control server (C2), skompromitowany serwer do komunikacji z botami, zwykle za pośrednictwem internetowych komend czatu. Właściciel botnetu używa serwera C2 do zlecania botnetom wykonywania ataków, takich jak ataki DDoS, kradzież danych, kradzież tożsamości lub inny rodzaj ataku. Tak więc, dymiącym pistoletem, który wskazuje na botnet, jest jego serwer C2.
niestety znalezienie C2 zwykle nie jest prostym zadaniem. Wiele poleceń botnetu pojawia się z wielu serwerów lub przybiera ukryte formy, maskując szkodliwe polecenia jako nieszkodliwe działanie, takie jak ruch w sieci Tor, ruch w mediach społecznościowych, ruch między usługami peer-to-peer lub algorytmy generowania domen. Dodatkowo komplikujące sprawy, komendy są często bardzo subtelne, co utrudnia wykrycie jakichkolwiek anomalii.
jedną z metod wykrywania C2s jest rozbicie i analiza kodu złośliwego oprogramowania. Organizacje mogą próbować dezasemblować skompilowany kod, z którego czasami mogą zidentyfikować główne źródło poleceń botnetu. Ponieważ jednak twórcy i administratorzy botnetów coraz częściej stosują zintegrowane szyfrowanie, technika ta jest coraz mniej skuteczna.
ogólnie rzecz biorąc, wykrywanie C2 wymaga wglądu w komunikację między serwerem C2 a jego botami, ale tylko rozwiązania bezpieczeństwa, które specjalnie chronią serwery C2, będą miały tego rodzaju widoczność. Bardziej powszechnym podejściem do wykrywania botnetów jest śledzenie i analizowanie samych ataków — do których standardowe rozwiązania bezpieczeństwa zapewniają widoczność-oraz określanie, które ataki pochodzą z botnetów.
patrząc na próby exploita, istnieje kilka możliwych wskazań dla botnetu. Na przykład, jeśli te same adresy IP atakują te same witryny, w tym samym czasie, przy użyciu tych samych ładunków i wzorców ataków, istnieje duża szansa, że są one częścią botnetu. Jest to szczególnie ważne, jeśli zaangażowanych jest wiele adresów IP i witryn. Jednym z wybitnych przykładów jest próba DDoS przez botnet w serwisie internetowym.
fałszywe alarmy
prawdopodobieństwo fałszywych alarmów sprawia, że wykrywanie botnetów jest szczególnie trudne. Niektóre ładunki są szeroko stosowane, zwiększając prawdopodobieństwo przypadkowego wystąpienia wzorca wywołującego fałszywie dodatni wynik. Dodatkowo atakujący mogą zmieniać swoje adresy IP za pomocą wirtualnej sieci prywatnej lub proxy, dzięki czemu wygląda na to, że wielu atakujących lub botów jest zaangażowanych, gdy naprawdę jest tylko jeden.
narzędzia hakerskie i skanery luk również zachowują się na tyle podobnie, że botnety często zwracają fałszywe alarmy. Dzieje się tak dlatego, że narzędzia hakerskie generują te same ładunki i wzorce ataków, a wielu hakerów ich używa, niezależnie od koloru kapelusza. A jeśli różnych graczy zdarzy się przeprowadzić test penetracyjny na tych samych stronach w tym samym czasie, może to wyglądać jak atak botnet.
organizacje często mogą zidentyfikować fałszywe alarmy, wyszukując w Google ładunek i odwołując się do wszelkich udokumentowanych informacji wokół niego. Inna technika polega po prostu na zebraniu wszelkich informacji łatwo dostępnych w surowym żądaniu w rozwiązaniu bezpieczeństwa. Na przykład, jeśli winą jest skaner luk w zabezpieczeniach, większość rozwiązań bezpieczeństwa ujawni to poprzez jego identyfikację, zwłaszcza jeśli jest to jeden z bardziej powszechnych skanerów luk.
fałszywe alerty są nieuniknionym wyzwaniem w wykrywaniu botnetów, biorąc pod uwagę ogromną liczbę potencjalnych incydentów; ostatnie badania pokazują, że 27% specjalistów IT otrzymuje ponad 1 milion alertów bezpieczeństwa każdego dnia, podczas gdy 55% otrzymuje ponad 10 000. Ale przy odpowiednich technikach i staranności organizacje mogą odróżnić nieszkodliwy ruch od złośliwego ruchu opartego na botnecie.
powiązane treści:
- 7 nie-komputerowe hacki, które nigdy nie powinny się zdarzyć
- Nowy Botnet pokazuje ewolucję technologii i Kultury przestępczej
- Paul Vixie o bezpieczeństwie DNS & botnet Takedowns (wideo)
- Anti-Botnet Guide ma na celu zwalczanie zautomatyzowanych zagrożeń
Dołącz do Dark Reading na żywo na dwóch Szczytach cyberbezpieczeństwa w Interop 2019. Ucz się od najbardziej doświadczonych w branży ekspertów ds. bezpieczeństwa IT. Zapoznaj się z agendą Interop tutaj.