piątek, 3 kwietnia 2015

W jaki sposób nowoczesny malware jest nieuchwytny


Cyberprzestępcy używają najnowocześniejszych technik do przeprowadzania ataków, które są zazwyczaj nie do wykrycia. W tym celu używają algorytmów szyfrowania, technik obfuskacyjnych (wymijających), oraz stosują wzorce wypracowanych przez organizacje przestępcze do działań w cyberprzestrzeni. Do stworzenia malware używane są algorytmy szyfrujące takie jakRC5, RC6, RC4, ASE itd.. w powiązaniu z innymi kryptograficznymi funkcjami i haszami.

Jedną z najbardziej wyrafinowanych technik jaką można spotkać jest loader, który używa unikalnego identyfikatora obiektu ID (NTSF) folderu Windows zainfekowanej ofiary zaszyfrowanego tysiąc razy przez SHA-256, w celu odszyfrowania następnego ciągu z rejestru systemu! Ale po co takie kombinacje? Wszystko jest perfekcyjne obmyślone żeby jednoznacznie powiązać infekcję do konkretnego urządzenia, oraz oznacza że payload nie może zostać odszyfrowany bez znajomości identyfikatora obiektu NTFS.

Cyberprzestępcy korzystają z różnych platform, które są ciągle ulepszane. Platforma składa się z głównego modułu oraz implantów, które mogą być dynamicznie wgrywane, bądź też usuwane przez atakujących. Jednym z implantów jest tzw walidator, zaprojektowany aby potwierdzić zamierzony cel. Jeśli cel jest potwierdzony wtedy wgrywany jest inny moduł, który jest bardziej wyrafinowany i stworzony do konkretnego celu. Cykl zdobywania interesującej ofiary wygląda następująco:
  1. Pierwszy etap to zainfekowanie ofiary poprzez web-based exploit który może znajdować się na zainfekowanych forach oraz stronach.
  2. Walidator sprawdza czy ofiara jest interesującym celem.
  3. Wgranie pełnej wersji szpiegowskiego złośliwego oprogramowania.
Exploit wykorzystuje daną podatność do wstrzyknięcia paylodu, natomiast payload może służyć do nawiązania komunikacji z serwerem C&C.


Domyślnie podstawowy moduł jest zainstalowany na komputerze docelowym, dając atakującym pełną kontrolę nad systemem operacyjnym. W przypadku gdy podstawowy moduł nie posiada odpowiednich funkcji, możliwe jest wgranie dodatkowych implantów w celu rozszerzenia jego funkcjonalności np. drivery.

Stare moduły były zaprojektowane do osadzenia się głęboko w systemie operacyjnym, nie zawierały zaufanego podpisu cyfrowego i nie można było ich uruchomić bezpośrednio na nowoczesnych systemach operacyjnych. Kod sprawdzał czy wersja systemu operacyjnego wyprzeda Windows XP/2003 ponieważ niektóre implanty były pisane na Windows 95/98/ME.

Nowe moduły posiadają zintegrowany licznik prawdopodobnie przeznaczony do samozniszczenia, jeśli przez jakiś okres czasu żadne komendy z C&C nie zostały odebrane. W przypadku gdy komunikacja do C&C działa, ukradzione informacje przygotowane do przekazania do C&C przechowywane są do eksfiltracji np. w postaci zaszyfrowanych plików czcionek .fon w folderze Windows\Fonts.

Niektóre nowoczesne implanty są zaprojektowane w celu zapewnienia skutecznego, prawie „niewidzialnego” mechanizmu trwałości, ukrytej przestrzeni dyskowej i wykonywania poleceń wewnątrz systemu operacyjnego. Wygląda na to, że są one projektowane przez najlepszych developerów na świecie.

W momencie gdy zainfekowany komputer uruchamia się, implant przechwytuje mechanizmy ładowania systemu operacyjnego wstrzykując swój kod do rekordu rozruchowego. Pozwala to na sterowanie uruchomienia systemu Windows na każdym etapie. W rzeczywistości po zainfekowaniu, komputer nie jest sterowany przez siebie samego. To implant uruchamia krok po kroku kolejne usługi i zmienia w locie to co niezbędne. W momencie gdy implant uruchomi Windowsa, włącza mechanizm wielostopniowego odszyfrowania w celu wykonania kodu w środowisku Windows. Następnie uruchamia moduły funkcjonalne, które przechowywane są wewnątrz rejestru systemu Windows. Każdy etap dekoduje i wykonuje następny aż wszystkie etapy zostaną wykonane i platforma zostanie uruchomiona. W przypadku gdy wystąpi błąd podczas startu, całą platforma ulega samozniszczeniu.

Implant używa zaszyfrowany wirtualny system plików (VFS) wewnątrz rejestru systemu Windows w celu przechowywania skradzionych informacji, jak również swoich własnych pomocniczych.

W celu ominięcia nowoczesnych mechanizmów zabezpieczeń w systemach operacyjnych, które blokują wykonywanie niezaufanego kodu w trybie jądra, implant wykorzystuje kilka zaufanych sterowników. Jednym z nich jest ElbyCDIO.sys z programu CloneCD. Sterownik ten zawiera lukę, którą implant wykorzystuje w celu możliwości wykonania kodu na poziomie jądra systemu. Pomimo faktu, że luka została odkrywa w 2009 roku, podpis cyfrowy nie został jeszcze odwołany.

Wygląda na to, że nowoczesne malware są zaprojektowane w taki sposób by były niewidoczne dla produktów antywirusowych. W przypadku połączenia ich z loaderami, wszystkie moduły, a także skradzione dane przechowywane są w zaszyfrowanej postaci w rejestrze i dynamicznie odszyfrowywane i wykonywane, co pozwala na stwierdzenie, że nie istnieją żadne uruchamiane moduły w systemie plików zainfekowanego komputera. Na przykład loader oblicza SHA-256 hasz z unikalnego identyfikatora obiektu ID (NTSF) folderu Windows czy System tysiąc razy, by następnie użyć go jako klucza deszyfrującego AES do odszyfrowania następnego etapu.

Wydaje się więc, że najlepszy sposób to w ogóle odciąć się od Internetu i będziemy bezpieczni.. nic bardziej mylnego. Istnieje malware które jest specjalnie zaprojektowane do infekowania sieci odciętych od Internetu używając specjalnie zaprojektowanego mechanizmu C&C opartego na USB. W momencie gdy pendrive jest zainfekowany, malware tworzy ukrytą partycję na dysku USB. Jeżeli malware zainfekuje komputer bez dostępu do Internetu, zaczyna zbierać podstawowe informacje o systemie i zapisuje je na ukrytej partycji. Później, gdy pendrive zawierający informacje podłączony jest do komputera podłączonego do Internetu i zainfekowanego przez malware, dane zostaną wysłane do C&C. Jeżeli atakujący chce uruchomić komendy na komputerze odciętym od Internetu, zapisuje te polecenia na ukrytej partycji dysku USB. Następnie gdy pendrive jest podłączony do komputera docelowego, malware rozpoznaje komendy i je wykonuje. Takie rozwiązanie pozwala grupą przestępczym jak i rządowym, na wykonywanie poleceń wewnątrz sieci odciętych od Internetu, a także na poznawanie całej infrastruktury.

Kolejną metodą na zainfekowanie jest użycie nośników CD/DVD, które są przechwycone i podmieniane na trojańskie wersje. Wyobraźmy sobie sytuacje, atak ukierunkowany w uczestników konferencji. Po powrocie do domu, niektórzy z uczestników otrzymali pocztą kopię materiałów z konferencji, wraz z pokazem slajdów. Zainfekowany nośnik używa pliku „autorun.inf” aby uruchomić instalator, który próbuje zdobyć uprawnienia do zasobów systemowych poprzez eskalacje uprawnień. Następnie malware ściąga walidator i kolejne implanty.

Kolejną technologią wykorzystywaną przez cyberprzestępców jest możliwość infekowania firmware dysków twardych. Podstawowymi funkcjami takich modułów jest:
  • Przeprogramowywanie firmware dysku twardego, 
  • Dostęp poprzez API do ukrytych sektorów na dysku twardym. 
Technologia ta zapewnia:
  • Całkowitą odporność na formatowanie dysków i reinstalację systemów operacyjnych.
  • Niewidzialne, stałe ukryte przestrzenie dyskowe na dysku twardym.
Podstawową funkcją jest przeprogramowanie firmware dysku twardego, poprzez skompresowany payload. Istnieje wiele różnych implantów w zależności od producenta dysku twardego. Odpowiedni rodzaj firmware jest dostarczany poprzez sprawdzenie numeru seryjnego dysku twardego i przeprogramowany przez szereg komand ATA. Ten rodzaj malware jest bardzo rzadki i wydaje się być używany tylko i wyłącznie w bardzo nietypowych okolicznościach i dostarczony do najcenniejszych ofiar.

Grupy przestępcze posiadają globalną infrastrukturę C&C na całym świecie. Serwery są rozmieszczone w różnych krajach a domeny są zarejestrowane anonimowo w serwisach GoDaddy czy DomainsByProxy w celu zamaskowania danych rejestrującego. Nowoczesne malware posiada mechanizmy samo destrukcji, żeby nie zostało przechwycone i zbadane. W Momencie gdy ofiara nie spełnia odpowiednich kryteriów, malware znika z jej komputera.

Ofiary wybierane są z największą precyzyjnością a gdy jest to niemożliwe, namierzane są przez walidatory. Ataki te są wykonywane na kilka sposobów. Na przykład podczas gdy użytkownik odwiedza tematyczne forum, lub za pośrednictwem reklam na popularnych stronach internetowych które są skompromitowane. Skrypty PHP które znajdują się na takich stronach sprawdzają czy użytkownik jest zalogowany, i czy jego adres IP mieści się w specyficznych zakresach, które dają odpowiedz z jakiego kraju łączy się użytkownik.

Ostatnio James Comey szef FBI powiedział że są dwa rodzaje organizacji: te które zostały zhakowane i te które jeszcze nie wiedzą, że zostały zhakowane. Opowiadał również że bardzo często zdarzały się sytuacje w których serwery rządowe były atakowane przez serwery różnych organizacji z US. Po wykonanej analizie przez FBI okazało się że serwery takich organizacji były używane jako proxy do wykonywania ataków. Oczywiście szefowie tych organizacji byli bardzo zdziwieni, przecież wydają na bezpieczeństwo miliony dolarów.

Wydaje się że droga do uzyskania cyberodporności jest nieosiągalna, ale mimo wszystko wymaga się skutecznych, zorganizowanych działań w skali całej organizacji, opartych na podstawach dobrego zrozumienia apetytu na ryzyko oraz profilu zagrożeń, dopasowania strategii działania do celów biznesowych organizacji, dobrego przygotowania do szybkiej reakcji na incydenty, współdziałania z partnerami w zwalczaniu cyberataków oraz ciągłej edukacji, doskonalenia i ćwiczeń.

Brak komentarzy:

Prześlij komentarz