Menu dostępności

Machine learning w cyberbezpieczeństwie

Technologie wykorzystywane w machine learning pozwalają gromadzić, analizować i przetwarzać dane. W przypadku cyberbezpieczeństwa pomagają lepiej analizować występujące ataki i dostosowywać odpowiednie reakcje obronne. Takie podejście umożliwia utworzenie zautomatyzowanego systemu cyberbezpieczeństwa uczącego się w czasie rzeczywistym. Dzięki temu cyber-ataki są coraz łatwiejsze do przewidzenia i często wykrywane zanim jeszcze nastąpią.

Dzisiejsi cyberprzestępcy również uzbrojeni są w sztuczną inteligencję i algorytmy wykorzystujące machine learning. Podkreśla to fakt, że należy stale inwestować w systemy i badania mogące przeciwdziałać wyszukanym atakom. Używanie tych samych narzędzi po obu stronach, pozwala zaawansowanym systemom bezpieczeństwa na szybkie uczenie się wzorców i wykrywaniu nieprawidłowości, w sposób o jakim tradycyjne metody, np. sygnatury, mogłyby tylko pomarzyć. Machine learning uzyskuje dużą przewagę dzięki temu, że nie potrzebuje wcześniejszej wiedzy na temat zagrożenia, aby mu zapobiec. Wkraczamy więc w nową erę, w której departamenty bezpieczeństwa w organizacjach, zaczynają analizować ataki zanim jeszcze nastąpią.


Po co bezpieczeństwu Machine Learning?


Głównym zadaniem machine learning w cybersecurity jest wykrywanie anomalii, czyli zachowań użytkowników i urządzeń, które są odmienne od tego co występuje zazwyczaj. Sporym wyzwaniem jest odróżnienie zachowania nietypowego od normalnego. Każde użycie laptopa poza miejscem pracy lub pobranie aplikacji z sieci może być traktowane jako anomalia. Dlatego, często systemy bazujące na machine learning są niesłusznie oceniane jako producenci dużej ilości alarmów ,,false positive”. Należy mieć na uwadze, że systemy te wykrywają anomalie w środowisku, a nie konkretne malware’y czy podatności. Działanie ich jest szersze niż oprogramowania opartego na sygnaturach.

Metody uczenia maszynowego wykorzystywane w cyberbezpieczeństwie

Jak już wiadomo z tekstu Uczenie Maszynowe – słownik pojęćy uczenie maszynowe dzielimy na dwie kategorie pozyskiwania wiedzy o analizowanych danych – nadzorowane oraz bez nadzoru. Uczenie nadzorowane sprawdzi się wszędzie tam, gdzie dane dostarczane są dobrze oznaczone i bogate w parametry. Z kolei metody używane w uczeniu bez nadzoru, takie jak klasteryzacja, kojarzenie reguł oraz redukcja rozmiarów służą do grupowania danych i do ich lepszego zrozumienia w dalszej analizie.

Nie da się ukryć, że najlepsze efekty machine learning osiąga przy wykrywaniu złośliwego oprogramowania oraz przy klasyfikacji spamu. Pierwsze z nich polega na określeniu czy dany plik jest szkodliwy czy też możemy go uruchomić bez żadnych ,,efektów ubocznych”. Dzisiejsze postępy w tej dziedzinie pozwoliły ograniczyć zarówno ilość alarmów ,,false negative” jak i ,,false positive” do minimum. Jest to możliwe dzięki istniejącej ogromnej bazie znanego, złośliwego oprogramowania oznaczonego etykietami. Jest to idealny wręcz zestaw danych uczących dla algorytmów machine learning pozwalający wytrenować zachowania sztucznej inteligencji w systemach bezpieczeństwa.
Analogicznie jest przy detekcji wiadomości zwierających spam. Istnieje wiele danych szkoleniowych, na których algorytmy ML mogą opierać swoją wiedzę w tym zakresie.
Wyzwaniem dla systemów machine learning wciąż jest analiza ataków sieciowych. Tutaj danych uczących jest zdecydowanie mniej, a różnorodność zagrożeń rośnie z dnia na dzień. Metody uczenia bez nadzoru pomagają grupować rekordy danych, jednak problemem jest klasyfikacja ich ze względu na ,,normalne” i ,,anormalne”. Całkiem dobrze sprawdza się tutaj klasteryzacja. Należy wtedy dobrać tylko odpowiednie parametry dla analizowanego środowiska, takie jak funkcje odległościowe, liczbę iteracji algorytmu itp.


Konkrety


Jeden z najbardziej popularnych algorytmów uczenia maszynowego nadzorowanego to „random forest”, który swoje działanie opiera na prostym drzewie decyzyjnym. Dzięki niemu możliwa jest analiza i wykrycie na przykład ataku command-and-control poprzez ruch HTTP. Random forest analizuje w tym przypadku cechy w nagłówkach HTTP w celu zidendyfikowania wzorców zachowań typu command-and-control, które nie występują w znanym, nieszkodliwym ruchu sieciowym. Mając duży zasób danych, algorytm może wykrywać ataki bez używania sygnatur, co eliminuje problem nadążania za atakującymi, którzy ciągle zmieniają domeny i adresy IP swoich urządzeń.

Kolejnym przykładem wykorzystywanym w praktyce jest klasteryzacja i jej zautomatyzowany algorytm zwany algorytmem centroidów. Po ustawieniu odpowiednich parametrów jest w stanie wychwycić anomalie na podstawie odchyleń danych od grupy. Może być użwany na przykład do identyfikacji kradzieży poświadczeń z zainfekowanego urządzenia. Obejmuje to techniki hakerskie Pass-the-hash i Golden Ticket, polegające na kradzieży i wykorzystywaniu tokenów z zaufanych urządzeń lub tworzeniu fałszywych. Aby zidentyfikować te incydenty monitorowany jest ruch Kerberos w celu ustanowienia norm dla różnych zachowań dla każdego hosta w sieci. Obejmuje to logowania użytkowników, a także monitorowanie usług, o które użytkownicy zwykle proszą. Zazwyczaj, po kompromitacji poświadczeń użytkownika, konto zaczyna logować się nowych hostach oraz żądać nowych usług. Dzięki klasteryzacji możliwe jest ujawnienie takiego ataku w czasie rzeczywistym i wykrycie momentu kiedy poświadczenia zostały skradzione. Dalsza analiza może ujawnić w jaki sposób konto zostało skompromitowane oraz czy atakujący uzyskał dostęp do uprzywilejowanych obszarów w sieci.

Jedną z bardziej interesujących podkategorii machine learningu jest ,,deep learning”. Uczenie głębokie polega na stosowaniu sieci neuronowych do analizowania złożonych problemów. Opiera swoje działanie na połączonych ze sobą setkach neuronów, z których każdy jest niezależnym procesem lub wątkiem z własną pamięcią lokalną. Pozwala to na obliczenia wykonywane równolegle i dzielenie się wynikiem z siąsiadami w czasie rzeczywistym. Deep learning używany jest dziś przede wszystkim w rozpoznawaniu mowy i w tłumaczeniu tekstów. W przypadku cyberbezpieczeństwa coraz częściej wykorzystywany jest do wykrywania nazw wygenerowanych maszynowo. Hakerzy często używają jako front-end swojej infrastruktury świeżo zarejestrowane domeny, których nazwy składają się z losowych znaków. Zapewnia im to lepsze zaciemnienie infrastruktury i utrudnia inwestygacje po przeprowadzonym ataku. Parsując żądania DNS sieci neuronowe mogą sprawdzać czy dana nazwa została wygenerowana przez algorytm czy też nie. Analizując litery w ciągu znaków sprawdzane jest czy rzeczywista sekwencja liter zaczyna różnić się od przewidywanych i oczekiwanych kolejnych liter. Gdy tak się dzieje, to prawdopodobieństwo tego, że domena jest wygenerowana maszynowo wzrasta.


Dobre rady


Wszystkie powyższe algorytmy są narzędziami, które mogą być przydatne do wykrywania ataków, jeśli tylko stosowane są we właściwy sposób. Oprócz wspomnianych wcześniej wyzwań istnieją inne, istotne elementy, które są niezbędne do działania machine learning. Jednym z nich jest kontekst. Jest to wszystko to, co pomaga lepiej zrozumieć rolę obiektów uczestniczących w analizowanych danych. Są to informacje o urządzeniach, aplikacjach lub użytkownikach, takie jak lokalizacja, właściciel, funkcja urządzenia w środowisku itp. Drugą ważną rzeczą, o której bezpieczeństwo zapomina jest to, że systemy machine learning nie są niezależne i nieomylne. Nie wskazują bezpośrednio na rozwiązanie i często potrzebują potwierdzenia, że dana anomalia rzeczywiście jest atakiem i należy na nią zareagować.
Systemy bezpieczeństwa w organizacjach muszą być budowane z głową, tworzone z kilku elementów które współgrają ze sobą. Machine learning nie rozwiąże wszystkich problemów. Jest bardzo dobrą metodą wczesnego wykrywania lub przewidywania zagrożeń, jednak nie zastąpi kompletnego systemu obrony w organizacji.

Popularne

7-Zip podatny na NTFS Heap Overflow

7-Zip podatny na NTFS Heap Overflow

Jaroslav Lobačevski z GitHub Security Lab opublikował analizę nowej podatności odnalezionej w 7-Zip, oznaczonej jako GHSL-2026-140. Luka dotyczy parsera NTFS i prowadzi do uszkodzenia pamięci procesu, co w...
Fałszywe ChatGPT i Claude infekują komputery. Cyberprzestępcy wykorzystują boom na AI

Fałszywe ChatGPT i Claude infekują komputery. Cyberprzestępcy wykorzystują boom na AI

Popularność sztucznej inteligencji rośnie w niespotykanym tempie. Narzędzia takie jak ChatGPT czy Claude stały się codziennym wsparciem dla programistów, analityków, studentów i firm. Miliony użytkown...
YellowKey: koniec mitu o bezpieczeństwie BitLockera? Nowy zero-day pozwala ominąć szyfrowanie przy użyciu zwykłego pendrive’a

YellowKey: koniec mitu o bezpieczeństwie BitLockera? Nowy zero-day pozwala ominąć szyfrowanie przy użyciu zwykłego pendrive’a

Jeszcze w piątek opisywaliśmy nowe podatności typu zero-day, o nazwach YellowKey oraz GreenPlasma, uderzające w mechanizmy bezpieczeństwa systemów Windows. Najnowsze informacje pokazują jednak, że spr...
Repozytoria na GitHubie zainfekowane w ataku Megalodon!

Repozytoria na GitHubie zainfekowane w ataku Megalodon!

Ponad 5 500 repozytoriów na GitHubie zostało zainfekowanych złośliwym oprogramowaniem w ataku na łańcuch dostaw, wykorzystującym zautomatyzowane zatwierdzanie zmian. Kampania, nazwana „Megalodon”, opiera si...
Claude Mythos AI znajduje tysiące podatności. Problem w tym, że nikt nie nadąża z ich łataniem

Claude Mythos AI znajduje tysiące podatności. Problem w tym, że nikt nie nadąża z ich łataniem

Przez lata największym problemem bezpieczeństwa było znajdowanie podatności. Dziś okazuje się, że to coś zupełnie innego – tempo ich naprawiania. Bardzo dobrze pokazuje to projekt Glasswing od Anthrop...