Uczenie maszynowe – Sophos stawia na sztuczną inteligencję
Intercept X 2.0 jest tuż przed wydaniem. Faza beta trwa już od dłuższego czasu, a produkt ma się ukazać jeszcze w tym miesiącu (styczeń 2018) jako bezpłatna aktualizacja. W tym artykule nie chodzi jednak o sam Intercept X 2.0, lecz o głębsze spojrzenie na technologię, która w nim działa.
Sztuczna inteligencja
Obecnie wszyscy mówią o Machine Learning, czyli „uczeniu maszynowym” - podobnie jak jeszcze niedawno o chmurze, VR (Virtual Reality) czy AR (Augmented Reality). Marketing sprzedaje to często jako A.I. (Artificial Intelligence), po niemiecku KI, czyli sztuczną inteligencję. Niezależnie od tego, czy mowa o chatbotach, wirtualnych asystentach, samochodach autonomicznych, narzędziach tłumaczeniowych, smartfonach czy oprogramowaniu do obróbki zdjęć - według producentów wszędzie dziś mamy „sztuczną inteligencję”, która ma ułatwiać nam życie i czynić produkt „inteligentniejszym”.
W topowych smartfonach montowane są obecnie układy AI (Neural Processing Unit, NPU), służące do rozpoznawania i analizy wzorców. Jeśli wyobrazimy sobie, w jakim kierunku to zmierza, wkrótce każdy będzie miał w kieszeni mały superkomputer, niemal nieustannie podłączony do sieci. Zdecentralizowany internet Richarda Hendriksa z serialu „Silicon Valley” stanie się realny. Projekty tego typu już dziś istnieją w świecie blockchain - służą do budowy zdecentralizowanych magazynów danych i zdecentralizowanej mocy obliczeniowej.
W tym miejscu jednoznaczne polecenie serialu TV Silicon Valley!
Wracając jednak do tematu. Dziś prawie wszyscy reklamują się hasłami „KI/AI”, ale nie wszędzie, gdzie na etykiecie widnieje KI, faktycznie się ona kryje. Różnice są ogromne. Pod pojęciem KI rozumiemy de facto nic innego jak Machine Learning - technologię, na której opiera się także Sophos w Intercept X 2.0.
Czym dokładnie jest „Machine Learning”?
Uczenie maszynowe jest na Wikipedii opisane krótko i trafnie w następujący sposób:
„Maschinelles Lernen ist ein Oberbegriff für die „künstliche“ Generierung von Wissen aus Erfahrung: Ein künstliches System lernt aus Beispielen und kann diese nach Beendigung der Lernphase verallgemeinern. Das heisst, es werden nicht einfach die Beispiele auswendig gelernt, sondern es „erkennt“ Muster und Gesetzmässigkeiten in den Lerndaten. So kann das System auch unbekannte Daten beurteilen (Lerntransfer) oder aber am Lernen unbekannter Daten scheitern (Überanpassung)."
Ściśle rzecz biorąc, Sophos wykorzystuje Deep Learning - zaawansowaną formę uczenia maszynowego.
Na podstawie powyższego wyjaśnienia z Wikipedii można już sobie mniej więcej wyobrazić, jak ogromny wpływ uczenie maszynowe może mieć na produkt taki jak Intercept X. Warto pamiętać, że od 2005 roku skanery antywirusowe oparte wyłącznie na sygnaturach nie są już kluczowym narzędziem w wykrywaniu wirusów, ponieważ potrafią zwalczać jedynie znane, wcześniej zarejestrowane odmiany malware. To nieustanny wyścig między twórcami złośliwego oprogramowania a autorami sygnatur. Programiści malware mają z definicji krótką przewagę - w tym czasie szkodliwe oprogramowanie pozostaje nieznane. Gdy nowy szkodnik zostaje odkryty, często wystarczą niewielkie modyfikacje kodu, by ponownie stał się „nieznany” dla skanerów antywirusowych.
Sophos od dawna rozwija wiele alternatywnych metod wykrywania złośliwego oprogramowania i już dawno przestał polegać wyłącznie na sygnaturach. Mimo to przejęcie firmy Invincea na początku 2017 roku było bardzo dobrym posunięciem - pozwoliło włączyć do produktów technologię, która potrafi chronić również przed przyszłymi zagrożeniami, a więc także przed szkodnikami, których jeszcze nie znamy.
Machine Learning również nie jest całkowitą nowością. Algorytmy istnieją od lat 80. i same w sobie niewiele się zmieniły. Do niedawna brakowało jednak Big Data oraz odpowiedniej mocy obliczeniowej. Dlatego około 2012 roku Machine Learning przeżył renesans. Podobnie jest z Genetic Algorithms, z których - moim zdaniem - w przyszłości chętnie będą korzystać autorzy malware.
Jak w teorii działa uczenie maszynowe?
W dużym uproszczeniu: „karmi się” maszynę ogromną ilością danych. Algorytm rozkłada je na czynniki pierwsze i analizuje cechy plików. Może to być np. rozmiar pliku, ale także znacznie bardziej złożone właściwości, takie jak całe fragmenty kodu. Po takim procesie nie dysponujemy wyłącznie pojedynczym hashem, jak przy detekcji sygnaturowej, lecz całym zbiorem charakterystyk. W efekcie niewielka modyfikacja kodu nie wystarczy już, by podszyć się pod zupełnie nowe złośliwe oprogramowanie, ponieważ inne cechy pozostają niezmienione.
Gdy dysponujemy już zbiorem cech, zaczynamy budowę tzw. „modeli”. Do tego potrzebna jest ogromna ilość danych. I tutaj doskonale „pasuje” fakt, że każdego dnia pojawia się ponad 390 000 nowych programów szkodliwych, czyli ponad 16 000 na godzinę. Także Sophos Sandstorm czy Intercept X, gdzie dane są przekazywane do Sophos Labs, pomagają w zbieraniu informacji i trenowaniu modeli. Materiału do nauki dostarczają również złośliwe adresy URL oraz spam. Potrzebne są nie tylko próbki malware, ale również dobre pliki, aby później zminimalizować liczbę fałszywie pozytywnych detekcji.
Równolegle testuje się różne modele i wybiera ten, który daje najlepsze wyniki. Dzięki modelowi i zestawowi właściwości powstaje wzorzec opisujący, jak wygląda malware i czym różni się od dobrego pliku. Te wzorce pozwalają następnie oceniać pliki i obliczać prawdopodobieństwo, że mamy do czynienia ze złośliwym oprogramowaniem. Cały proces trwa milisekundy i wymaga znacznie mniejszych zasobów (CPU i RAM) niż inne metody analizy. Przy aktualizacjach odświeżane są jedynie mechanizmy rozpoznawania wzorców, a nie - jak przy klasycznej detekcji sygnaturowej - co kilka sekund ładowane są nowe sygnatury.
Osoby, które chciałyby zagłębić się w temat, mogą sięgnąć po artykuł fachowy autorstwa Sophos: Sophos Machine Learning how to build a better threat detection Model
PDF jest w języku angielskim, ale można go przetłumaczyć na wiele innych języków za pomocą narzędzia opartego na Machine Learning - DeepL: https://www.deepl.com/translator. Znany Google Translator również korzysta z Machine Learning, jednak DeepL „karmiono” lepszymi danymi i modele zostały wytrenowane zauważalnie lepiej.
Samo Machine Learning nie wystarczy
Uczenie maszynowe potrafi już dziś osiągać niesamowicie wysokie wskaźniki wykrywalności, a jego przewagi względem detekcji sygnaturowej są oczywiste. Sophos nie opiera się jednak wyłącznie na tych nowych wzorcach, lecz wykorzystuje Machine Learning jako kolejną technologię, która ma zapewnić możliwie pełną ochronę przed malware.
Intercept X 2.0, dzięki Machine Learning, będzie jeszcze skuteczniejszy w wykrywaniu ransomware i exploitów oraz uzupełni inne technologie, takie jak Exploit Prevention, Malicious Traffic Detection, CryptoGuard czy Synchronized Security Heartbeat. To właśnie na poziomie tych dodatkowych technologii „oddziela się ziarno od plew”, czyli standardowy antywirus od profesjonalnego rozwiązania.
Czy Intercept X wystarczy jako jedyna ochrona?
Można zadać sobie pytanie, czy klasyczny antywirus jest jeszcze potrzebny, skoro mamy Intercept X z tymi wszystkimi zaawansowanymi technologiami, a wkrótce także z Machine Learning. Jeśli korzystacie z Sophos Endpoint Client, powinien on koniecznie nadal działać równolegle z Intercept X. Powód jest prosty: Sophos Endpoint Client to znacznie więcej niż zwykła ochrona antywirusowa, która wykrywa malware na podstawie sygnatur. Sophos Endpoint Client zapewnia m.in. Web Security, Web Control / kategoryzację i filtrowanie URL, Device Control czy Application Control - to tylko kilka przykładów. Pełne zestawienie różnic między Sophos Endpoint Protection a Intercept X znajdziecie w tej karcie danych.
W przypadku wszystkich innych, „klasycznych” programów antywirusowych faktycznie nie widzę większego sensu na przyszłość. Obecnie jednak nic nie stoi na przeszkodzie, aby uruchamiać taki antywirus równolegle z Intercept X.
Więcej o Machine Learning
- Defining the truth: how Sophos overcomes uncertain labels in machine learning
- Man vs machine: comparing artificial and biological neural networks
- 5 questions to ask about machine learning
- Demystifying deep learning: how Sophos builds machine learning models
Na stronie Sophos Labs od niedawna dostępne są świetne statystyki w czasie rzeczywistym dotyczące dziennych aktywności spamowych i malware, generowane na podstawie ogromnych zbiorów danych.
Dla wszystkich, którzy lubią tego typu dane w czasie rzeczywistym, zebraliśmy kilka linków. Nas samych wciąż zadziwia, jak wiele ataków faktycznie ma miejsce. Niesamowite, co dzieje się za kulisami:
Norse Attack Map
Tutaj cyberataki prezentowane są w czasie rzeczywistym. Wykorzystuje się do tego 8 milionów sensorów i ponad 6000 aplikacji na serwerach w 40 krajach - tzw. honeypoty, czyli wirtualne pułapki. Wszystko to daje ponad 7 petabajtów zebranych danych o atakach.
Norse maintains the world’s largest dedicated threat intelligence network. With over eight million sensors that emulate over six thousand applications - from Apple laptops, to ATM machines, to critical infrastructure systems, to closed-circuit TV cameras - the Norse Intelligence Network gathers data on who the attackers are and what they’re after. Norse delivers that data through the Norse Appliance, which pre-emptively blocks attacks and improves your overall security ROI, and the Norse Intelligence Service, which provides professional continuous threat monitoring for large networks.
FireEye - Cyber Threat Map
FireEye Cyber Threat Map przedstawia w dziennym podsumowaniu wszystkie globalne ataki DDoS.
- Top 5 zgłoszonych branż
- Główni atakujący według kraju
- FireEye Cyber Threat Map
Kaspersky - Cyber Map
Mapa zagrożeń w czasie rzeczywistym od Kaspersky prezentuje ataki w czasie rzeczywistym, wykrywane przez ich różne systemy źródłowe.
- On-Scanner Access
- On-Demand Scanner
- Web Antivirus
- Mail Antivirus
- System wykrywania włamań
- Skaner podatności
- Kaspersky Anti-Spam
- Detekcja aktywności botnetów
- Kaspersky Cyberthreat real-time map
Akamai - Real-Time Web Monitor
Akamai całodobowo monitoruje globalny stan internetu. Na podstawie tych danych w czasie rzeczywistym identyfikowane są regiony świata z największym ruchem ataków webowych, miasta z najwolniejszymi połączeniami (opóźnienia) oraz obszary geograficzne z najwyższym natężeniem ruchu w sieci.
Check Point - Live Cyber Attack Threat Map
ThreatCloud firmy Check Point również prezentuje dane o atakach. Dostępny jest także ranking krajów najczęściej będących celem.
Deutsche Telekom - Sicherheitstacho
Sicherheitstacho pokazuje globalne cyberataki na infrastrukturę honeypot firmy DTAG oraz jej partnerów.
Digital Attack Map
Zwizualizowane dane na żywo dotyczące globalnych ataków DDoS. Narzędzie powstało we współpracy Google Ideas i Arbor Networks. Udostępnia anonimowe dane o atakach, pozwalając użytkownikom analizować historyczne trendy i przeglądać raporty o incydentach dla wybranych dni.