Szklisto-metalowy android z mieczem plazmowym i tarczą atakowany przez trójpalczaste, mechaniczne łapy.

Cyberbezpieczeństwo: Wojny maszynowe

Sztuczna inteligencja to pojęcie, którego znaczenie mass mediom, nie specjalizującym się w technologiach nieco umyka. Również konsumenci postrzegają to pojęcie raczej przez pryzmat coraz większej gamy "inteligentnych" smart-produktów. Nie wątpię, że "inteligentnie" upiększony portret w smartfonie jest dla wielu istotny, ale dla wszystkich istotne są nowoczesne techniki cyberbezpieczeństwa. Bez nich po prostu przepadniemy w cyfrowej anarchii. Dzięki firmie ESET mogliśmy zajrzeć "pod maskę" najnowszych technik cyberobronnych.

Maszynowe uczenie i druga strona medalu

Jakkolwiek projekty rozwiązań ochronnych wykorzystujących maszynowe uczenie mogą wyglądać na imponujące, to nie możemy zapominać jeszcze o drugiej stronie – cyberprzestępcy, agresorzy i generalnie wszyscy, którzy są zainteresowani rozwijaniem metod ataków i projektowaniem złośliwego kodu, również wiedzą, że istnieje coś takiego jak maszynowe uczenie. Podczas ostatnich targów MWC 2019 w Barcelonie, przedstawiciele firmy ESET zaprezentowali interesujący raport pt. „Machine Learning Era in Cybersecurity: a step towards a safer world or the brink of chaos?”. Istotą tego raportu jest właśnie pokazanie, że nie tylko producenci rozwiązań ochronnych aktywnie wykorzystują nowoczesne algorytmy i techniki maszynowego uczenia czy głębokiego uczenia, ale również ci, którzy stoją za licznymi atakami i zagrożeniami sieciowymi. Raport pokazuje w jaki sposób maszynowe uczenie może być wykorzystywane przez agresorów, a także prezentuje istotne ograniczenia tej techniki tworzenia kodu – nie tylko złośliwego, ale w ogóle jakiegokolwiek. Jak już wcześniej wspomniałem, maszynowe uczenie to tylko narzędzie, bardzo efektywne, o dużym potencjale, ale nie zawsze optymalne w kontekście cyberbezpieczeństwa.

Jakie zatem skutki może mieć to, że maszynowe uczenie znajduje się również w rękach agresorów? Autorzy raportu zwracają uwagę przede wszystkim na kilka pól zastosowań nowoczesnych technik uczenia maszyn. Przede wszystkim – i to wydaje się najbardziej oczywiste – maszynowe uczenie może pomóc atakującym w opracowywaniu i rozwijaniu wyrafinowanego, złośliwego kodu. Przy czym dotyczy to zarówno złośliwych programów, spamu, ataków phishingowych jak i innych form ataku. Zwykle gdy mowa o „złośliwym kodzie” myślimy o jakimś programie wykonującym złośliwe działania. W przypadku takich rozwiązań maszynowe uczenie może być wykorzystywane do rozwijania kolejnych iteracji nowego wariantu złośliwego oprogramowania w celu odnalezienia wersji, która okaże się trudniej wykrywalna przez systemy detekcyjne stosowane przez producentów oprogramowania ochronnego.

Jednak maszynowe uczenie to nie tylko rozwój samego kodu złośliwego programu, ale też rozwój całych kampanii ataków. Z pewnością pamiętamy próby ataków spamerskich/phishingowych sprzed paru lat – były one dla nieco bardziej wprawnej osoby stosunkowo łatwe do wykrycia. Np. mail udający korespondencję od banku i zachęcający do odwiedzenia „strony banku” w celu „weryfikacji” danych logowania wyglądał może i trochę podobnie do faktycznych wiadomości od danej instytucji finansowej, ale często był pełen błędów stylistycznych, gramatycznych czy ortograficznych – zwłaszcza gdy był opublikowany w języku innym niż angielski (np. po polsku). Generalnie bardziej uważny adresat takiej korespondencji był w stanie zauważyć, że coś jest nie tak. Dziś wiadomości stanowiące próbę wyłudzeń danych czy będące wstępem do bardziej wyrafinowanych ataków są dużo lepiej przygotowane. Uwzględniają nie tylko dokładną formę i styl oryginalnej korespondencji instytucji pod którą atakujący się podszywa, ale też są pozbawione błędów stylistycznych czy gramatycznych. Krótko mówiąc, adresaci tej korespondencji mają znacznie trudniej.

Reklama

Maszynowe uczenie pomaga też atakującym wykrywać charakterystyczne, powtarzające się wzory w złośliwych treściach (oprogramowaniu, spamie itp.), to z kolei umożliwia usunięcie wzorców i wprowadzenie pewnych elementów losowości co utrudnia detekcję niepożądanej, złośliwej korespondencji, czy ataków phishingowych.

Oprócz tego dzięki uczeniu maszynowemu agresorzy mogą znacznie zwiększyć prędkość ataku, co może mieć szczególne znaczenie w takich atakach jak np. kradzież danych. Innym przykładem jest tzw. profilowanie. Nam najczęściej kojarzy się to z rynkiem reklam online – wszak reklamy Google’a (Ad Sense) wyświetlają się w sposób możliwie dopasowany do tego, z jakich treści najczęściej korzystamy w Sieci. W przypadku cyberprzestępców maszynowe uczenie pozwala zautomatyzować profilowanie ofiar, czyli dokonanie automatycznej analizy celu na podstawie ogólnodostępnych (sieci społecznościowe) czy wcześniej pozyskanych (np. w wyniku kradzieży danych) informacji.

Kolejny przykład „innowacji” jaką daje agresorom maszynowe uczenie to zautomatyzowanie poszukiwań najbardziej efektywnej techniki ataku, w tym również tzw. luk dnia zerowego (czyli wcześniej nieznanych luk w oprogramowaniu systemowym, umożliwiających zdalne przejęcie kontroli nad zaatakowaną maszyną działającą pod kontrolą systemu, w którym daną lukę wykryto).

Jestem przekonany, że istnieją dwa typy firm: te, które zostały zhakowane oraz te, które to dopiero czeka.
Robert S. Mueller III, dyrektor FBI podczas konferencji w San Francisco, 2012. r.

Szczególnie ciekawie (czy może raczej nieciekawie – dla ofiar) wygląda możliwość kolektywnej analizy w botnetach. O co chodzi? Załóżmy, że jakiemuś agresorowi udało zbudować się sieć botnetów, dzięki maszynowemu uczeniu może on stworzyć mechanizm, w którym każda z zainfekowanych maszyn będzie testować inną formę ataku na cel, wiadomości zwrotne będą automatycznie rozsyłane pomiędzy maszynami w botnecie, co z kolei pozwoli zbudować bardziej efektywną strategię ataku na konkretne cele. Wreszcie najważniejsze – wiedza ta, po zrealizowaniu ataku – nie znika, lecz może być wykorzystana jako baza dla uczenia maszynowego kolejnej generacji botów.

Agresorzy też się bronią

Zwykle gdy mówimy o obronie w kontekście cyberbezpieczeństwa, mamy na myśli oprogramowanie ochronne czy inne techniki neutralizacji złośliwego kodu i ataków sieciowych. Autorzy raportu zwracają jednak uwagę, że twórcy złośliwego kodu i osoby stojące za szeroko zakrojonymi kampaniami ataków (włączając w to rozbudowane sieci botnetów, czy budowę cyberkryminalnej infrastruktury) wykorzystują maszynowe uczenie nie tylko do opracowywania bardziej wyrafinowanych złośliwych treści, ale też do obrony przed narzędziami analityków zagrożeń.

Obrona ta może obejmować różne techniki, których cechą wspólną jest własnie to, że nie powstałyby one, gdyby nie uczenie maszynowe. Przykładem może być wykrywanie „dziwnie” działającej stacji roboczej w opanowanej przez agresora sieci botów (komputerów, które zostały zdalnie przejęte za pomocą złośliwego kodu). Taki „dziwnie” funkcjonujący węzeł botnetu może być np. tzw. honeypotem (maszyna-pułapka, przygotowana przez ekspertów IT lub analityków zagrożeń, w celu dokładnego zbadania danego ataku). Dzięki wykorzystaniu maszynowego uczenia, agresorzy mogą być w stanie wykryć maszyny, które nie zachowują się jak zwykłe komputery ofiar ataku. Konsekwencją zdolności odróżnienia dobrze chronionej i przygotowanej na ewentualne ataki maszyny od komputera zwykłego użytkownika może być to, że faktyczny ładunek (złośliwy kod) zostanie odpalony wyłącznie na tych drugich. Agresorzy mogą też wbudowywać mechanizmy autodestrukcji złośliwego kodu – jeżeli np. na danym, zainfekowanym przez kod z wbudowaną autodestrukcją, systemie wykryty zostanie nietypowy profil użytkownika czy specjalistyczne oprogramowanie, malware uruchomi procedurę autodestrukcji, która uniemożliwi potencjalnemu analitykowi zbadanie zagrożenia.

Warto zaznaczyć, że wszystko o czym tu mówimy to nie przewidywania i prognozy analityków, ale również już istniejące w złośliwym kodzie rozwiązania. Przykładem takiego wyrafinowanego kodu jest modułowy downloadera trojanów o nazwie Emotet. Ten złośliwy kod ma wbudowaną analizę telemetrii. Kod po zainfekowaniu ofiary zbiera dane telemetryczne zaatakowanej maszyny, a następnie przesyła je do serwera kontrolnego (tzw. C&C – Command & Control). Na podstawie zebranych danych złośliwe oprogramowanie nie tylko dobiera moduły, które trafią do finalnego ładunku (payload), ale jest w stanie również odróżnić rzeczywistych, ludzkich operatorów komputerów od maszyn wirtualnych, czy zautomatyzowanych środowisk wykorzystywanych przez naukowców i analityków zagrożeń.
Poniższe ilustracje wyjaśniają w czym rzecz.

W zwykłym scenariuszu, kiedy Emotet infekuje maszynę ofiary, po wysłaniu danych telemetrycznych do centrum atakującego, przesyłany jest ładunek zawierający najbardziej efektywne złośliwe oprogramowanie, w kontekście jego skuteczności na danej, zaatakowanej maszynie.

Gdy Emotet trafi na maszynę, której telemetria wskazuje na to, że mamy do czynienia z pułapką (honeypot) czy np. maszyną wirtualną wykorzystywaną przez analityka zagrożeń, centrum dowodzenia agresora zamiast przesłać porcję złośliwego kodu do właściwego ataku, ukrywa swoją obecność uniemożliwiając analizę ładunku (payload), ale również namierzenie serwerów atakującego.

Na obecność algorytmów maszynowego uczenia w kodzie Emotet najbardziej wskazuje jednak trzeci scenariusz, kiedy to po zainfekowaniu odpowiednio przygotowanej maszyny przez analityka, Emotet przesyła telemetrię do centrum atakującego. W tym wypadku analityk tak skonstruował maszynę testową, by nie zdradzała ona, że w istocie nie jest komputerem ofiary i początkowo faktycznie do takiej maszyny przesyłane są złośliwe aplikacje. Jednak po kilku dniach centrum agresora uaktywnia procedurę ukrywania swojej obecności. Takie zachowanie wskazuje na wyuczoną maszynowo procedurę wykrywającą, że zainfekowana maszyna nie jest „zwykłym” komputerem ofiary.

Walka pomiędzy dobrem a złem trwa od dawna i będzie trwała jeszcze długo. Maszynowe uczenie to narzędzie wykorzystywane zarówno przez tych, którzy chronią nas przed atakami sieciowymi i złośliwym kodem, jak i przez tych, którzy chcą wykraść nasze dane czy pieniądze. Pamiętajmy jednak że nawet najlepsze techniki maszynowego uczenia nie zastąpią wykwalifikowanych, doświadczonych badaczy zagrożeń i rozsądku użytkowników. | CHIP

Close

Choć staramy się je ograniczać, wykorzystujemy mechanizmy takie jak ciasteczka, które pozwalają naszym partnerom na śledzenie Twojego zachowania w sieci. Dowiedz się więcej.