Menu dostępności

Jak przeprowadzić prostą analizę malware?

Analiza złośliwego oprogramowania to proces badania próbki wirusa, która trafiła w nasze posiadanie. Celem takiej operacji jest zrozumienie typu, funkcji, kodu, zachowania oraz potencjalnych skutków ataku malware. Najczęściej analizę przeprowadzają wykwalifikowane w tym kierunku zespoły specjalistów, jednak warto znać podstawy i samą metodykę badania. Na „niskim poziomie wtajemniczenia” wszystkie kroki analizy może przeprowadzać samodzielnie w swoim środowisku testowym każdy z nas.

Co otrzymujemy po przeprowadzeniu udanej analizy:

  • Wiemy, jak działa złośliwe oprogramowanie – jeśli zbadamy kod i poznamy jego algorytm, będziemy w stanie powstrzymać go przed zainfekowaniem całego systemu.
  • Znamy charakterystykę programu – dzięki temu możemy poprawić wykrywanie w oparciu o wersję, nazwy i rozszerzenia plików itp.
  • Wiemy, jaki jest cel danego oprogramowania – po uruchomieniu malware w testowym środowisku odwzorowującym produkcję
  • Mamy informacje o tym, kto stoi za atakiem – adresy IP, pochodzenie, używane TTP i inne artefakty ukrywane przez hakerów.

Rodzaje analizy malware

Możemy wyróżnić dwie główne kategorie przeprowadzania analizy malware – statyczną i dynamiczną. Poniżej podajemy szczegółowe czynności przeprowadzane podczas tych operacji oraz ich cechy.

Analiza statyczna:

  • zrozumienie złośliwego kodu,
  • czytanie i wykrycie sygnatur malware,
  • pomaga tylko przy prostych atakach i znanych rodzinach oprogramowania,
  • wymaga użycia narzędzi AV, „odcisków palców”, zrzutów pamięci, metadanych plików.


Analiza dynamiczna:

  • obserwacja zachowania malware w środowisku wirtualnym,
  • wykrywanie malware, bazując na jego zachowaniu,
  • pomaga przy nowych i zaawansowanych atakach,
  • uruchomienie malware i obserwowanie wykonywanych przez nie czynności: tworzenie procesów, wywołania API, zmiany w rejestrze.

Etapy analizy

W ramach opisanych poniżej pięciu kroków głównym celem dochodzenia jest uzyskanie jak największej ilości informacji o złośliwej próbce, algorytmie wykonania oraz sposobie działania szkodliwego oprogramowania w różnych scenariuszach.

Oczywiście najskuteczniejszą metodą analizy złośliwego oprogramowania jest łączenie metod statycznych i dynamicznych. Poniżej krótki przewodnik, jak przeprowadzić taką analizę:

Krok 1. Postaw maszynę wirtualną
Na początku niezbędne będzie czyste środowisko wirtualne z określonymi wymaganiami, takimi jak przeglądarka, pakiet Microsoft Office, bitowość systemu operacyjnego i ustawienia regionalne. Dodaj narzędzia do analizy i zainstaluj je w swojej maszynie wirtualnej: FakeNet, proxy MITM, Tor, WireShark, ProcessHacker itp.

Krok 2. Sprawdź właściwości statyczne
Sprawdź plik wykonywalny bez uruchamiania go: sprawdź stringi, aby zrozumieć działanie złośliwego oprogramowania. Skróty, ciągi i zawartość nagłówków zapewnią przegląd intencji malware.

Krok 3. Monitoruj zachowanie złośliwego oprogramowania
Uruchom próbkę malware w bezpiecznym środowisku wirtualnym. Wejdź w bezpośrednią interakcję ze złośliwym oprogramowaniem, aby program działał i by można było obserwować jego zachowanie. Sprawdź ruch sieciowy, modyfikacje plików i zmiany w rejestrze, a także wszelkie inne podejrzane zdarzenia.

Krok 4. Rozgryź kod
Jeśli cyberprzestępcy zaciemnili lub spakowali kod, użyj technik odciemniania i inżynierii wstecznej, aby przeczytać jego zawartość. Zidentyfikuj możliwości, które nie zostały ujawnione podczas poprzednich kroków. Nawet szukając nazwy funkcji wykorzystywanej przez złośliwe oprogramowanie, można wiele powiedzieć o jej funkcjonalności. Na przykład funkcja „InternetOpenUrlA” informuje, że to złośliwe oprogramowanie nawiąże połączenie z jakimś zewnętrznym serwerem. Na tym etapie wymagane są dodatkowe narzędzia, takie jak debugery i deasemblery.

Krok 5. Napisz raport
Połącz wszystkie ustalenia i dane, które znalazłeś. Podaj następujące informacje:
  • podsumowanie badań z nazwą, pochodzeniem i kluczowymi cechami szkodliwego programu,
  • ogólne informacje o typie złośliwego oprogramowania, nazwie pliku, rozmiarze, wartościach skrótów i możliwościach wykrywania przez AV,
  • opis złośliwego zachowania, algorytmu infekcji, technik rozprzestrzeniania się, gromadzenia danych i sposobów komunikacji С2,
  • ustawienia systemu operacyjnego, oprogramowanie, pliki wykonywalne i pliki inicjujące, biblioteki DLL, adresy IP i skrypty,
  • przegląd działań związanych z zachowaniem, takich jak miejsce, z którego kradnie poświadczenia, czy modyfikuje, usuwa lub instaluje pliki, odczytuje wartości i sprawdza język,
  • wyniki analizy kodu, dane nagłówków,
  • zrzuty ekranu, dzienniki, linie tekstowe, fragmenty itp.,
  • IOC.

Podsumowanie

Z powyższej instrukcji możemy dowiedzieć się, że do przeprowadzenia podstawowej analizy złośliwego oprogramowania nie potrzebujemy zaawansowanej wiedzy ani narzędzi. Wystarczy znajomość technik używanych przez malware, dobra znajomość systemu operacyjnego oraz ciekawość i precyzyjność, aby samodzielnie przeprowadzić dochodzenie i wyłuskać najciekawsze informacje.

Popularne

Czym są non-human identities (NHI)? Jak możemy je chronić i jakie zagrożenia stwarzają dla organizacji?

Czym są non-human identities (NHI)? Jak możemy je chronić i jakie zagrożenia stwarzają dla organizacji?

W dzisiejszym artykule opisujemy pewien problem istniejący w firmach i organizacjach, związany z tożsamościami nieludzkimi (non-human identities), czyli inaczej – tożsamościami niezwiązanymi z pracow...
Filtrowanie URL i DNS, dlaczego to takie ważne?

Filtrowanie URL i DNS, dlaczego to takie ważne?

Filtrowanie adresów URL ogranicza zawartość stron internetowych, do których użytkownicy mają dostęp. Odbywa się to poprzez blokowanie określonych adresów URL przed załadowaniem. Firmy wdrażają filtrowanie...
Nowe podatności w architekturze sieci 5G

Nowe podatności w architekturze sieci 5G

Nowe badania nad architekturą 5G ujawniły lukę w zabezpieczeniach modelu dzielenia sieci oraz zwirtualizowanych funkcjach sieciowych, które można wykorzystać do nieautoryzowanego dostępu do danych, a tak...
Hakerzy z Dragon Breath z nową techniką ataku

Hakerzy z Dragon Breath z nową techniką ataku

Specjaliści z Sophos wykryli niedawno złośliwą aktywność polegającą na klasycznym DLL side-loadingu, ale ze zwiększoną złożonością i dodatkową warstwą wykonania. Co więcej, dochodzenie wskazuje, że oso...
Polowanie na eskalację uprawnień w Windows: sterowniki jądra i Named Pipe pod lupą

Polowanie na eskalację uprawnień w Windows: sterowniki jądra i Named Pipe pod lupą

Podatności typu Local Privilege Escalation (LPE) pozostają jednym z kluczowych elementów realnych ataków na systemy Windows. Nawet przy poprawnie skonfigurowanym systemie i aktualnym oprogramowaniu bł...