Microsoft chce wykrywać złośliwe oprogramowanie, zamieniając je w czarno-białe obrazki, by mogła się im przyjrzeć sztuczna inteligencja

Firmy technologiczne prześcigają się w poszukiwaniu nowych zastosowań dla SI. Także w dziedzinie cyberbezpieczeństwa. Sieci neuronowe analizują już ruch sieciowy, poszukują niecodziennej aktywności na serwerach. Możliwe, że wkrótce będą też skanować pliki w naszych domowych komputerach.

Nad tym ostatnim rozwiązaniem pracuje zespół Microsoftu. Stworzona przez nich technologia wykrywa złośliwe oprogramowanie zaszyte w plikach i korzysta w tym celu z sieci neuronowych.

Firmy technologiczne uwielbiają akronimy. Microsoft nazwał swój system STAMINA (co oznacza wytrzymałość) i rozwija ten skrótowiec tak: STAtic Malware-as-Image Network Analysis – co możemy rozumieć jako analizę sieciową złośliwego oprogramowania w formie statycznych obrazów. Nazwa trochę naciągana, ale rozwinięcie skrótu oddaje główną ideę projektu. Jak to działa?

Otóż forma binarna plików zarażonych złośliwym oprogramowaniem (zera i jedynki, z których składa się program) jest zamieniana na ciąg pikseli. Następnie te piksele są układane w dwuwymiarowy, kwadratowy obrazek.

Niektóre pliki są duże, a co za tym idzie – ich graficzna reprezentacja też jest duża. W takim wypadku system zmniejsza obraz tak, by miał maksymalnie 2048 pikseli szerokości.

Microsoft wykorzystał tzw. uczenie z przeniesieniem (ang. transfer learning), to znaczy, że podstawą modelu była sieć neuronowa już wytrenowana do rozpoznawania obrazów. Jej część została ponownie wytrenowana za pomocą milionów plików graficznych utworzonych na podstawie zainfekowanych plików.

W ten sposób algorytm nauczył się rozpoznawać cechy charakterystyczne plików zainfekowanych i odróżniać je od tych, które są wolne od złośliwego oprogramowania.

Spośród ponad 2 milionów plików wykonywalnych (czyli np. programów) użytych do szkolenia SI 60 procent zostało wykorzystanych do wytrenowania modelu, 20 procent do jego weryfikacji, a pozostałe 20 procent do testowania jego skuteczności.

Twórcy algorytmu podają, że STAMINA osiągnęła skuteczność na poziomie 99,07 procent w identyfikowaniu i klasyfikowaniu zainfekowanych plików. W przypadku 2,58 proc. plików wynik był fałszywie dodatni, czyli zdrowe pliki zostały uznane za zainfekowane.

Microsoft wierzy, że wykorzystanie uczenia maszynowego do wykrywania zagrożeń to dobry kierunek, choć na tym etapie ma swoje ograniczenia. Zespół przyznał, że choć STAMINA działa szybko i precyzyjnie w przypadku małych plików, to te większe stanowią problem.

„W przypadku większych aplikacji STAMINA staje się mniej efektywna z powodu konieczności zamiany miliardów pikseli w pliki JPEG i zmiany ich rozmiaru” – czytamy na blogu Microsoftu.

Skuteczność na poziomie prawie stu procent robi wrażenie, jednak „prawie” w cyberbezpieczeństwie robi ogromną różnicę. Miejmy nadzieję, że wykrywanie zagrożeń przy użyciu uczenia maszynowego okaże się nie tylko technologiczną nowinką, ale realną alternatywą dla klasycznych systemów.