Czyli możliwości i skutki zastosowania sztucznej inteligencji w tworzeniu kodu malware następnej generacji.

Inspiracją do napisania tego artykułu było stawiane już przez nas w kampanii o Sztucznej Inteligencji pytania:

  • Co się stanie, gdy przestępcy zaczną używać sztucznej inteligencji (w tym uczenia maszynowego) w celu zwiększenia skuteczności cyberataków?
  • Jak sztuczna inteligencja może zasilić cyberataki?

Odpowiedzi na powyższe pytania pojawiły się między innymi w ostatnim raporcie z firmy ESET, w którym specjaliści od bezpieczeństwa w czterech punktach opisali, jak uczenie maszynowe mogłoby zwiększyć efektywność ataków złośliwego oprogramowania. Zwrócili oni uwagę na takie aspekty jak:

1. Generowanie nowych, trudnych do wykrycia wariantów szkodliwego oprogramowania.

Niektóre starsze rodziny złośliwego oprogramowania (takie jak Swizzor) używały automatyzacji w celu generowania co minutę nowych zmutowanych wariantów swojego kodu. Technikę tą można by przerobić i ulepszyć za pomocą algorytmu uczenia maszynowego, który nauczyłby się jakie stworzone warianty kodu są najmniej prawdopodobne do wykrycia i stworzyłby nowe mutacje o podobnych cechach.

2. Ukrycie złośliwego oprogramowania w sieci ofiary.

Złośliwe oprogramowanie mogłoby monitorować zachowanie węzłów/punktów końcowych w docelowej sieci i tworzyć wzorce przypominające legalny/normalny ruch sieciowy. Dzięki SI można by połączyć różne techniki ataku tak, aby znaleźć najskuteczniejsze opcje, których nie można byłoby go łatwo wykryć i nadać im priorytetowe znaczenie w porównaniu z mniej skutecznymi alternatywami.

3. Dostosowanie funkcji złośliwego oprogramowania do atakowanego środowiska.

Jeśli atakujący chcieliby obrać na cel ataku przeglądarkę, zamiast posiadania pełnej listy przeglądarek i scenariuszy złośliwego oprogramowania, cyberprzestępcy musieliby zaimplementować tylko kilka z nich dla najczęściej spotykanych marek. Algorytm AI wykorzystywałby pozyskane dane i zamieniał je na scenariusze i uczył się ataku bezpośrednio na komputer ofiary, tak by infiltrować również mniej popularne i niewymienione wcześniej przeglądarki.

4. Zaimplementowanie autodestrukcyjnego mechanizmu w złośliwym oprogramowaniu.

Mechanizm ten byłby aktywowany, jeśli wykryłby podejrzane zachowanie na przykład poprzez logowanie niestandardowego profilu użytkownika lub programu. Wówczas złośliwe oprogramowanie automatycznie uruchamiałoby mechanizm samozniszczenia w celu uniknięcia przed jego wykryciem lub uniemożliwieniem dalszej analizy.

Następnie specjaliści z ESET wskazują miejsca, w których Sztuczna Inteligencja mogłaby zasilić złośliwe oprogramowanie oraz do jakich funkcji mogłaby wykorzystać machine learning.


Rola machine learning w tworzeniu malware


Wykrycie podejrzanego środowiska uruchomieniowego

Jeśli algorytm złośliwego oprogramowania w środowisku, w którym zostało ono uruchomione potrafiłby wykryć narzędzia takie jak: maszyna wirtualną, sandbox lub inne narzędzia używane przez badaczy złośliwego oprogramowania wówczas mógłby zmienić swoje zachowanie lub tymczasowo zatrzymać swoje działanie w celu uniknięcia wykrycia.


Zwiększenie szybkości ataku

Szybkość ataku może być kluczowa, szczególnie w takich przypadkach jak kradzież danych. Algorytmy pozyskują dane znacznie szybciej niż człowiek, co utrudnia ich wykrycie i prawie niemożliwa ich zablokowanie, ponieważ komputery mogą kopiować dane poza urządzenia chroniące organizacje zanim odpowiednie osoby będą w stanie zareagować.


Zbiorcze uczenie się z wykorzystaniem innych węzłów botnet’u i identyfikacja najbardziej skutecznych form ataku

Uczenie się i dzielenie informacjami za pośrednictwem wielu węzłów może być korzystne dla atakujących, ponieważ każdy z botów może testować różne techniki ataku i zgłaszać wyniki. Może również pomóc atakującym dowiedzieć się więcej o docelowej infrastrukturze w krótszym czasie.


Użycie SI jako części (ukierunkowanych) ataków

Wybierając cele, atakujący mogą wykorzystać sztuczną inteligencję do decyzji strategicznych, czy warto atakować daną stację lub konto oraz do monitorowania ruchu do zainfekowanej witryny. Algorytm może nauczyć się i wybierać tych odwiedzających daną stronę, którzy są najcenniejszymi celami i serwować im złośliwe oprogramowanie.


Identyfikacja konkretnych rozwiązań ochronnych

Atakujący może przeprowadzić rozpoznanie w sieci docelowej i w oparciu o zebrane odpowiedzi lub ich brak wykorzystać sztuczną inteligencję do podjęcia wniosków na temat specjalistycznych rozwiązań do bezpieczeństwa stosowanych przez docelową organizację.


Użycie AI w atakach targetowanych na IoT

Zastosowanie urządzeń IoT takich jak routery, kamery bezpieczeństwa i różne urządzenia sterujące staje się w dzisiejszych czasach coraz popularniejsze. Wiele firm, które je wdrażają nie doceniają faktu, że urządzenia te są małymi komputerami podatnymi na włamania i próby przejęcia kontroli. Ponadto tanie i źle zaprojektowane produkty IoT często nie mają podstawowych zabezpieczeń bądź używają słabych domyślnych poświadczeń w celu dostępu do urządzenia. Oba niedociągnięcia mogą pozwolić na łatwe przejęcie kontroli przez złośliwe oprogramowanie. Pisaliśmy o tym w artykule tutaj.

Cyberprzestępcy w urządzeniach IoT mogą wykorzystać sztuczną inteligencję do:

  • Generowania poświadczeń i wykorzystania ich do infiltracji innych podobnych urządzeń IoT
  • Znajdowania nowych luk w zabezpieczeniach innych urządzeń IoT
  • Jeśli urządzenia IoT są częścią botnetu, algorytm oprogramowania malware mogłby być dystrybuowany na wszystkie inne węzły (urządzenia inne IoT)
  • Wspólne uczenie się standardowych procesów i zachowań dla danych urządzeń (lub ich grup)