Stan zagrożeń w internecie znajduje się obecnie na poziomie standardowym. Nie występują duże epidemie a eksperci z Kaspersky Lab nie zanotowali żadnych poważnych incydentów związanych z bezpieczeństwem. Poziom zagrożenia: 1

Ugrupowanie APT BlackOasis oraz nowe ataki ukierunkowane wykorzystujące exploita dnia zerowego

Tagi:

Więcej informacji dotyczących ugrupowania APT BlackOasis jest dostępnych dla klientów usługi Kaspersky Intelligence Reporting Service. Kontakt: intelreports@kaspersky.com

Wprowadzenie

Kaspersky Lab zawsze ściśle współpracował z innymi producentami w celu zapewnienia ochrony użytkownikom. Jak tylko znajdziemy nowe luki, natychmiast informujemy o tym producenta w odpowiedzialny sposób, przekazując wszelkie dane niezbędne do udostępnienia poprawki.

10 października 2017 roku zaawansowane systemy zapobiegania exploitom firmy Kaspersky Lab zidentyfikowały nowego exploita dnia zerowego dla Adobe Flasha wykorzystywanego na wolności przeciwko naszym klientom. Exploit ten był dostarczany za pośrednictwem dokumentu Microsoft Office, a ostateczna funkcja szkodliwa stanowiła najnowszą wersję szkodliwego oprogramowania FinSpy. Zgłosiliśmy te lukę firmie Adobe, która przydzieliła jej nazwę CVE-2017-11292 i opublikowała łatę:       

1_auto.png

Jak dotąd zidentyfikowaliśmy tylko jeden atak wymierzony w naszych klientów, co pozwala nam sądzić, że liczba ataków jest minimalna i są to wysoce ukierunkowane ataki.

Analiza funkcji szkodliwej pozwoliła nam z całą pewnością powiązać ten atak z ugrupowaniem cyberprzestępczym, które identyfikujemy jako „BlackOasis”. Jesteśmy też głęboko przekonani, że BlackOasis jest odpowiedzialny również za innego exploita dnia zerowego (CVE-2017-8759), wykrytego przez FireEye we wrześniu 2017 roku. Wykorzystana w opisywanych atakach szkodliwa funkcja FinSpy (CVE-2017-11292) posiada ten sam serwer kontroli (C2) co szkodliwa funkcja wykorzystywana w przypadku luki CVE-2017-8759 wykrytej przez FireEye.         

Garść informacji na temat BlackOasis

Z aktywnością ugrupowania BlackOasis po raz pierwszy zetknęliśmy się w maju 2016 r., badając innego exploita dnia zerowego dla Adobe Flasha. 10 maja 2016 r. firma Adobe ostrzegła przed luką w zabezpieczeniach (CVE-2016-4117) dotyczącą oprogramowania Flash Player 21.0.0.226 oraz wcześniejszych wersji dla Windowsa, Macintosha, Linuksa i Chrome OS. Luka ta była aktywnie wykorzystywana na wolności.    

Kaspersky Lab zidentyfikował próbkę, która wykorzystywała tę lukę, gdy została dostarczona do systemu umożliwiającego przeskanowanie przy użyciu różnych skanerów 8 maja 2016 r. Próbka, w postaci dokumentu RTF, wykorzystywała lukę w zabezpieczeniach CVE-2016-4117 w celu pobierania i instalowania programu ze zdalnego serwera kontroli. Chociaż wykorzystywanej podczas ataku szkodliwej funkcji nie było już na serwerze kontroli (C&C), ten sam serwer hostował wiele pakietów instalacyjnych FinSpy.      

Na podstawie danych z Kaspersky Security Network zidentyfikowaliśmy dwa inne podobne bloki exploitów wykorzystywane przez ugrupowanie BlackOasis w czerwcu 2015 r., które stanowiły w tym czasie exploity dnia zerowego. Wykorzystywały one luki CVE-2015-5119 i CVE-2016-0984, które zostały załatane w lipcu 2015 roku i lutym 2016 r. Te bloki exploitów dostarczały również pakiety instalacyjne FinSpy.     

Od czasu wykrycia sieci exploitów BlackOasis śledzimy to ugrupowanie w celu lepszego zrozumienia jego operacji i celów i zdołaliśmy zaobserwować przez ten czas kilkadziesiąt nowych ataków. Poniżej przedstawiamy kilka dokumentów wabików wykorzystywanych w tych atakach:

2_auto.png

3_auto.pngDokumenty wabiki wykorzystywane w atakach ugrupowania BlackOasis

Podsumowując, od czerwca 2015 r. ugrupowanie BlackOasis wykorzystało co najmniej pięć exploitów dnia zerowego: 

  • CVE-2015-5119 – czerwiec 2015
  • CVE-2016-0984 – czerwiec 2015
  • CVE-2016-4117 – maj 2016
  • CVE-2017-8759 – wrzesień 2017
  • CVE-2017-11292 – październik 2017

Ataki wykorzystujące lukę w zabezpieczeniach CVE-2017-11292

Atak rozpoczyna się od dostarczenia dokumentu Office, w tym przypadku prawdopodobnie za pośrednictwem poczty e-mail. W dokumencie osadzony jest obiekt ActiveX, który zawiera exploita dla Flasha.      

4.png
5_auto.png

Obiekt Flash w pliku .docx, przechowywany w nieskompresowanym formacie

Obiekt Flash zawiera ActionScript, który odpowiada za wypakowywanie exploita przy użyciu standardowego pakera, którego widzieliśmy już w przypadku innych exploitów FinSpy.   

6_auto.png

Procedura rozpakowywania exploita SWF

Exploit ten stanowi lukę umożliwiającą uszkodzenie pamięci, która występuje w klasie „com.adobe.tvsdk.mediacore.BufferControlParameters”. W przypadku powodzenia, exploit uzyska uprawnienia do wykonywania operacji odczytu / zapisu w pamięci, co pozwoli mu na wykonanie kodu shellcode drugiego etapu.   

Shellcode pierwszego etapu zawiera interesujące instrukcje NOP sled z alternatywnymi instrukcjami, które najprawdopodobniej zostały zaprojektowane w taki sposób, aby uniknąć wykrycia przez produkty antywirusowe, które szukają dużych bloków NOP wewnątrz plików flash:

7_auto.png

Instrukcje NOP sled złożone z kodów operacji 0x90 oraz 0x91

Głównym celem pierwotnego kodu shellcode jest pobranie kodu shellcode drugiego etapu z hxxp://89.45.67[.]107/rss/5uzosoff0u.iaf.   

8_auto.png

Kod shellcode drugiego etapu

Kod shellcode drugiego etapu wykonuje następnie następujące działania:

  1. Pobieranie ostatecznej funkcji szkodliwej (FinSpy) z hxxp://89.45.67[.]107/rss/mo.exe
  2. Pobieranie dokumentu wabika w celu wyświetlenia go ofierze z tego samego adresu IP
  3. Wykonanie funkcji szkodliwej i wyświetlenie dokumentu wabika

Funkcja szkodliwa – mo.exe

Jak już wspomniano wcześniej, funkcja szkodliwa „mo.exe” (MD5: 4a49135d2ecc07085a8b7c5925a36c0a) stanowi najnowszą wersję szkodliwego oprogramowania FinSpy Gamma International, które sprzedawane jest rządom oraz organom ścigania w celu wykorzystania w legalnych operacjach inwigilacyjnych. Ten nowszy wariant znacznie utrudnił badaczom analizę szkodnika ze względu na wiele dodanych technik uniemożliwiających analizę, łącznie z niestandardowym pakerem oraz maszyną wirtualną w celu wykonania kodu.    

PCODE maszyny wirtualnej jest spakowany przy pomocy pakera aplib.

9.png

Część spakowanego PCODE maszyny wirtualnej

Po rozpakowaniu PCODE wygląda tak:

10_auto.png

Rozpakowany PCODE

Po rozpakowaniu PCODE maszyny wirtualnej zostaje odszyfrowany:

11.png

Odszyfrowany PCODE maszyny wirtualnej

Niestandardowa maszyna wirtualna obsługuje łącznie 34 instrukcje:

12_auto.png

Przykład przeanalizowanego PCODE

W tym przykładzie instrukcja “1b” odpowiada za wykonanie kodu natywnego, który został określony w polu parametra.

Po skutecznym wykonaniu szkodliwej funkcji pliki zostają skopiowane do następujących lokalizacji:

  • C:\ProgramData\ManagerApp\AdapterTroubleshooter.exe
  • C:\ProgramData\ManagerApp\15b937.cab
  • C:\ProgramData\ManagerApp\install.cab
  • C:\ProgramData\ManagerApp\msvcr90.dll
  • C:\ProgramData\ManagerApp\d3d9.dll

Plik „AdapterTroubleshooter.exe” stanowi legalny plik binarny, który jest wykorzystywany w celu zastosowania sławnej techniki przechwytywania kolejności wyszukiwania DLL. Plik „d3d9.dll” jest szkodliwy i jest ładowany do pamięci przez legalny plik binarny po wykonaniu. Po załadowaniu biblioteka DLL wstrzyknie szkodnika FinSpy do procesu Winlogon.       

13_auto.png

Część wstrzykniętego kodu do procesu winlogon

Szkodliwa funkcja łączy się z trzema serwerami kontroli (C2) w celu sprawowania dalszej kontroli i wyprowadzania danych. Dwa z nich były już wykorzystywane w przeszłości z innymi funkcjami szkodliwymi FinSpy. Niedawno jeden z tych serwerów C2 był wykorzystywany wspólnie z luką CVE-2017-8759 w atakach zgłoszonych przez FireEye we wrześniu 2017 r. Adresy IP oraz inne wcześniejsze próbki mają ścisły związek z aktywnością ugrupowania APT BlackOasis związaną z FinSpy.      

Cele ataków i ofiary

Przedmiotem zainteresowania ugrupowania BlackOasis jest między innymi szeroki wachlarz osób związanych z polityką Bliskiego Wschodu. Obejmuje on ważne osobistości w ONZ, blogerów i aktywistów opozycji, jak również regionalnych korespondentów informacyjnych. W 2016 r. zaobserwowaliśmy wzmożone zainteresowanie Angolą, o czym świadczą dokumenty wabiki wskazujące na cele posiadające podejrzane powiązania z branżą paliwową, praniem brudnych pieniędzy oraz innymi nielegalnymi działaniami. W kręgu zainteresowania ugrupowania znajdują się również międzynarodowi aktywiści i zespoły ekspertów.         

Ofiary ugrupowania BlackOasis zostały zidentyfikowane w następujących państwach: Rosji, Iraku, Afganistanie, Nigerii, Libii, Jordanii, Tunezji, Arabii Saudyjskiej, Iranie, Holandii, Bahrajnie, Wielkiej Brytanii oraz Angoli.

Zakończenie

Uważamy, że atak na HackingTeam w połowie 2015 r. pozostawił lukę na rynku narzędzi do inwigilacji, która jest obecnie wypełniana przez inne firmy. Jedną z nich jest Gamma International, która oferuje zestaw narzędzi FinFisher. Chociaż Gamma International sama została zhakowana przez Phineas Fisher w 2014 roku, włamanie nie było tak poważne jak w przypadku HackingTeam. Ponadto, Gamma miała dwa lata, aby podnieść się po ataku i nabrać rozpędu.        

Uważamy, że liczba ataków opierających się na oprogramowaniu FinFisher, wspieranych przez exploity dnia zerowego, takie jak te opisywane w tym artykule, nadal będzie wzrastać.  

Co to oznacza dla nas i jak można się bronić przed takimi atakami, łącznie z exploitami dnia zerowego?

W przypadku CVE-2017-11292 i innych podobnych luk w zabezpieczeniach, można użyć mechanizmu killbit dla Flasha w celu wyłączenia go w każdej aplikacji, która respektuje te instrukcje. Niestety, wykonanie tego w całym systemie nie jest łatwe, ponieważ obiekty Flash mogą być ładowane do aplikacji, które potencjalnie nie przestrzegają instrukcji killbit. Ponadto, może to zablokować inne niezbędne zasoby, które opierają się na Flashu, i naturalnie nie ochroni przed exploitami dla oprogramowania innych osób trzecich.     

Wdrożenie wielowarstwowego podejścia, łącznie z politykami dostępu, oprogramowaniem antywirusowym, monitorowaniem sieci oraz białą listą, może pomóc zabezpieczyć klientów przed tego rodzaju zagrożeniami. Użytkownicy produktów firmy Kaspersky Lab są chronieni przed tym zagrożeniem, wykrywanym pod jedną z poniższych nazw: 

  • PDM:Exploit.Win32.Generic
  • HEUR:Exploit.SWF.Generic
  • HEUR:Exploit.MSOffice.Generic

Więcej informacji na temat ugrupowania APT BlackOasis jest dostępnych dla klientów usługi Kaspersky Intelligence Reporting Service. Contakt: intelreports@kaspersky.com

Podziękowania

Pragniemy podziękować zespołowi Adobe Product Security Incident Response Team (PSIRT) za współpracę w celu zidentyfikowania i załatania tej luki.

Dalsze materiały

  1. Adobe Bulletin https://helpx.adobe.com/security/products/flash-player/apsb17-32.html

Oznaki włamania (IoC)

4a49135d2ecc07085a8b7c5925a36c0a
89.45.67[.]107