Minęły już czasy, gdy analizą malware zajmowały sie tylko i wyłącznie firmy antywirusowe. Na rynku istnieją darmowe narzędzia, które są bardzo łatwe w użyciu i pozwolą na podstawową analizę malware. Celem analizy jest zdobycie wiedzy o malware, która pozwoli odpowiedzieć na dwa bardzo ważne pytania: W jaki sposób komputer został zainfekowany przez malware i co dokładnie robi malware.
Dzisiaj przedstawię dwa rodzaje analizy.
Pierwsza to dynamiczna analiza malware na Androidzie, do której wykorzystam
emulator Androida MobiSec w celu uruchomienia malware i program REMnux, na
którym zostanie przeprowadzona analiza. Do drugiej analizy zostanie
wykorzystany program Redline firmy Mandiant i pokaże jak wykonać analizę
pamięci zainfekowanego komputera.
Rodzaje analizy malware
Istnieją dwa rodzaje analizy malware: statyczna (analiza kodu) i dynamiczna (behawioralna), czyli jak sie zachowuje malware). Oba rodzaje analizy mają ten sam cel, aby poznać jak działa malware, ale różnią się ze względu na narzędzia, czas i umiejętności, jakich użyjemy. Analiza kodu jest to nic innego jak przeglądanie kodu i na podstawie tego poznawanie jak działa malware. Bardzo często w celu analizy kodu używa się narzędzi do reverse engineering takich jak deasemblery, debuggery czy dekomlipatory. Po udanym procesie reverse engineering, będzie można zobaczyć jak działa kod źródłowy malware i zastosować mechanizmy obronne.
Analiza behawioralna polega na tym, że obserwuje się zachowanie malware, z czym się łączy, co zostało zainstalowane i jak działa. Zazwyczaj szukamy zmian w systemie i innych podejrzanych zdarzeń, jakie malware spowodowało np. pliki zostały wgrane, zmodyfikowane, nowe serwisy zostały zainstalowane, nowe procesy uruchomione, zmiany w rejestrze itd. Jest to analiza typu "quick and dirty". Analizę behawioralną powinno się wykonywać na komputerze, który jest odłączony od sieci a pliki powinny być kopiowane przez read only media jak CD-ROM. W celu całkowitego poznania jak działa malware powinno się wykonać obie analizy.
Rodzaje analizy malware
Istnieją dwa rodzaje analizy malware: statyczna (analiza kodu) i dynamiczna (behawioralna), czyli jak sie zachowuje malware). Oba rodzaje analizy mają ten sam cel, aby poznać jak działa malware, ale różnią się ze względu na narzędzia, czas i umiejętności, jakich użyjemy. Analiza kodu jest to nic innego jak przeglądanie kodu i na podstawie tego poznawanie jak działa malware. Bardzo często w celu analizy kodu używa się narzędzi do reverse engineering takich jak deasemblery, debuggery czy dekomlipatory. Po udanym procesie reverse engineering, będzie można zobaczyć jak działa kod źródłowy malware i zastosować mechanizmy obronne.
Analiza behawioralna polega na tym, że obserwuje się zachowanie malware, z czym się łączy, co zostało zainstalowane i jak działa. Zazwyczaj szukamy zmian w systemie i innych podejrzanych zdarzeń, jakie malware spowodowało np. pliki zostały wgrane, zmodyfikowane, nowe serwisy zostały zainstalowane, nowe procesy uruchomione, zmiany w rejestrze itd. Jest to analiza typu "quick and dirty". Analizę behawioralną powinno się wykonywać na komputerze, który jest odłączony od sieci a pliki powinny być kopiowane przez read only media jak CD-ROM. W celu całkowitego poznania jak działa malware powinno się wykonać obie analizy.