wtorek, 23 września 2014

Analiza Malware dla każdego #1

Malware są to wszelkie aplikacje, skrypty mające szkodliwe, przestępcze lub złośliwe działanie w stosunku do komputera. W obecnych czasach cyberprzestępcy organizują się w grupy, które tworzą exploity typu 0day, czyli złośliwe kody, które pojawiają się na czarnym rynku jeszcze przed publikacją poprawki przez producenta. Coraz głośniej jest o atakach APT przeprowadzonych z wykorzystaniem złośliwego oprogramowania i jest to problem dotykający zarówno organizacje jak i użytkowników domowych.

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.