O co chodzi z tym uczeniem maszynowym?

bezpieczeństwo

Niedawno otrzymaliśmy sporo pytań o wykorzystanie technik maszynowego uczenia w cyberbezpieczeństwie. Doszedłem zatem do wniosku, że pora napisać o tym na blogu. Co ciekawe, kiedy pisałem ten post, nadeszło jeszcze więcej pytań, więc najwyraźniej wybrałem dobry moment.

Niemało firm z branży bezpieczeństwa rozpowiada o technikach maszynowego uczenia się w swoich produktach, jakby było to coś nowego. Otóż nie jest. W F-Secure używamy maszynowego uczenia się od 2005 roku, a dziś techniki te wykorzystywane są praktycznie wszędzie.

Techniki maszynowego uczenia się początkowo stosowano w naszej do szkolenia mechanizmów antyspamowych. Skłoniło nas do eksperymentów nad wykorzystaniem maszynowego uczenia się do identyfikowania złośliwych plików. Pod koniec 2005 roku stworzyliśmy mechanizm, który oceniał potencjalną szkodliwość pliku na podstawie cech strukturalnych i behawioralnych. Mechanizm ten miał początkowo blokować wyniki fałszywie pozytywne,  ale od tego czasu stał się ważną częścią technologii detekcyjnej. Oba te komponenty trafiły do naszych produktów w 2006 roku.

skynet

Nie mogłem się oprzeć. (Źródło: https://theaviationist.com)

Jak wspomniałem, używamy maszynowego uczenia się do najróżniejszych celów. Oto kilka przykładów.

Analiza i klasyfikowanie próbek. Korzystamy z systemów eksperckich i maszynowego uczenia się, aby automatycznie klasyfikować 500 000 nowych próbek, które otrzymujemy każdego dnia. Systemy te generują mnóstwo metadanych wysokiej jakości, które są następnie przekształcane w nadające się do wykorzystania informacje o zagrożeniach.

Reputacja i klasyfikowanie adresów URL. Przepuszczamy treści spod adresów URL przez system maszynowego uczenia się, aby klasyfikować witryny pod kątem złośliwości oraz typu zawartości (na przykład witryna dla dorosłych, sklep, bank itd.).

Logika detekcji po stronie klienta. Używamy uczenia maszynowego, aby komponenty klienckie mogły skuteczniej identyfikować podejrzane pliki na podstawie struktury pliku i cech behawioralnych. Określamy te komponenty mianem mechanizmów heurystycznych. 25 sierpnia Sven Krasser z CrowdStrike opublikował na blogu pouczający i szczegółowy post poświęcony tym technikom, który polecam każdemu, kto chciałby dowiedzieć się więcej.

Wykrywanie włamań. To coś, o czym dotychczas nie pisałem zbyt wiele, ale planuję zmienić to w przyszłości. Wykorzystujemy techniki maszynowego uczenia do identyfikowania podejrzanych zachowań w sieciach. Sygnały te są przekazywane do naszych ekspertów pracujących w Centrum Szybkiego Wykrywania, którzy badają incydent i alarmują klienta, jeśli podejrzenia się potwierdzą. Oczywiście, te same techniki, które ujawniają oznaki włamania, mogą również informować nas o podejrzanej aktywności pochodzenia wewnętrznego.

Maszynowe uczenie się bywa podatne na fałszywe detekcje. Właśnie dlatego preferujemy podejście hybrydowe, łączące człowieka i maszynę. Kombinacja uczenia maszynowego oraz reguł opracowanych przez ekspertów i daleko idącej automatyzacji pozwala nam ograniczyć fałszywie pozytywne wyniki i znacznie dokładniej klasyfikować zagrożenia oraz podejrzane zachowania. Na przykład w naszych systemach klasyfikacji techniki maszynowe dobrze sprawdzają się w grupowaniu próbek. Jednak w przypadku nowych próbek, z którymi system nie miał jeszcze do czynienia, grupy te są nadal identyfikowane, oznaczane i klasyfikowane przez ludzi.

Choć maszynowe uczenie się jest niezwykle użyteczne, to wciąż nie może zastąpić ludzkiej wiedzy.  Jak ujął to jeden z moich kolegów, jeśli uznasz je za panaceum na wszelkie problemy – przysłowiową „srebrną kulę” – to szybko strzelisz sobie tą kulą w stopę. Tak też brzmi nasza rada: jeśli chcesz skutecznie chronić swoje systemy, nie polegaj wyłącznie na maszynowym uczeniu się, a zwłaszcza na rozwiązaniach, które potrafią identyfikować tylko zagrożenia przenoszone w plikach.

Nie powinieneś tego robić z kilku przyczyn. Po pierwsze, nie będziesz chroniony przed oszustwami, phishingiem i socjotechniką. Do tego potrzebujesz komponentu blokującego adresy URL. Jeśli go nie masz, nadal możesz łatwo trafić do witryny zaprojektowanej po to, aby ukraść Twoje hasła, tożsamość lub informacje bankowe. Rozwiązanie do identyfikowania złośliwych plików nie zapewni Ci wystarczającej ochrony w internecie.

Po drugie, z pewnością przyda Ci się ochrona przed exploitami. Exploity to towar mocno deficytowy. Są setki tysięcy zainfekowanych lub złośliwych witryny i setki tysięcy niepowtarzalnych, złośliwych plików, ale nie ma aż tylu niepowtarzalnych exploitów. Blokowanie wszystkich znanych exploitów jest znacznie łatwiejsze, niż badanie każdej podejrzanej witryny i każdego pliku. Tutaj w F-Secure, często gromadzimy informacje potrzebne do wyszukiwania tych exploitów, korzystając ze zautomatyzowanych systemów opartych na maszynowym uczeniu się. Reguły są jednak wciąż pisane ręcznie przez naszych ekspertów. To jeden z przykładów technologii ochronnej działającej po stronie klienta, która po prostu nie współgra zbyt dobrze z maszynowym uczeniem się.

Na koniec kilka pytań, które przesłał nam @kevtownsend, wraz z moimi odpowiedziami:

Czy maszynowe uczenie się odbierze pracę ludziom z branży bezpieczeństwa?

Absolutnie nie! Napastnicy, czy to twórcy złośliwego oprogramowania, czy przestępcy próbujący przeniknąć do korporacyjnych sieci, są ludźmi. Myślą kreatywnie i projektują ataki, które mogą z łatwością ominąć całkowicie zautomatyzowane rozwiązania. Z tej przyczyny obrońcy również muszą myśleć kreatywnie. Dopóki sztuczna inteligencja nie osiągnie kreatywności porównywalnej z ludzką, ludzie będą nadal odgrywać kluczową rolę w tej dziedzinie.

Skoro można zintegrować mechanizmy maszynowego uczenia się z Virus Total, dlaczego nie da się zintegrować mechanizmów behawioralnych?

Mechanizmy behawioralne trudno jest zintegrować z systemem Virus Total. Każda próbka przechodząca przez ich system musiałaby być wykonywana w środowisku zawierającym rozwiązania wszystkich producentów. Z praktycznego punktu widzenia oznacza to uruchomienie maszyny wirtualnej, zainstalowanie lub zaktualizowanego produktu, wprowadzenie próbki do maszyny wirtualnej, wykonanie jej, zbadanie werdyktu produktu, a następnie zniszczenie maszyny wirtualnej. Wszystko to musiałoby odbywać się w specjalnych warunkach sieciowych, żeby złośliwe oprogramowanie nie mogło rozprzestrzenić się dalej.

Cały proces pochłaniałby mnóstwo zasobów, a w dodatku trudno byłoby nim zarządzać, zważywszy na to, że systemy VT już teraz zawierają ponad 50 produktów. Gdyby nawet w VT mieli infrastrukturę, która mogłaby to robić (500 000 próbek x 50 producentów) razy dziennie, i tak musieliby zatrudnić całą armię ludzi do zarządzania środowiskiem i aktualizowania produktów.

Czy jest jakaś zasadnicza różnica między mechanizmami detekcji bazującymi na maszynowym uczeniu się a behawioralnymi mechanizmami detekcji?

To porównywanie dwóch zupełnie różnych rzeczy. Techniki maszynowego uczenia się służą do „szkolenia” klienckiej logiki detekcji. Właściwy proces maszynowego uczenia się przebiega w infrastrukturze zaplecza, ponieważ wymaga dużej ilości próbek i dużej mocy obliczeniowej. Wygenerowany w ten sposób pakiet logiki jest dostarczany do urządzeń klienckich podczas aktualizacji produktu.  Choć niektórzy producenci nie mówią jawnie o regułach, sygnaturach lub bazach danych, możesz być pewien, że ich produkty je zawierają, pod taką czy inną postacią. Baza danych wbudowana w plik binarny nadal pozostaje bazą danych. Maszynowe uczenie się może posłużyć do stworzenia logiki, która wykrywa potencjalnie szkodliwe pliki na podstawie ich struktury, zachowania albo jednego i drugiego.

Nie należy bezkrytycznie wierzyć w hasła marketingowe. Większość producentów „antywirusów” od lat używa technik maszynowego uczenia się do tworzenia reguł i logiki detekcji.

 

Autorem artykułu jest Andy Patel.

Tagi

Oceń artykuł

0 głosów

0 komentarzy

Wprowadź swoje dane lub kliknij jedną z tych ikon, aby się zalogować:

Logo WordPress.com

Komentujesz korzystając z konta WordPress.com. Log Out / Zmień )

Zdjęcie z Twittera

Komentujesz korzystając z konta Twitter. Log Out / Zmień )

Facebook photo

Komentujesz korzystając z konta Facebook. Log Out / Zmień )

Google+ photo

Komentujesz korzystając z konta Google+. Log Out / Zmień )

Connecting to %s

Może Ci się też spodobać

%d bloggers like this: