Malicious Office (OOXML) / .XLSM — malware analysis report

Static analysis result for SHA-256 fa2c2ec137b588ed…

MALICIOUS

Office (OOXML) / .XLSM

45.4 KB Created: 2020-12-07 12:26:56 UTC Authoring application: 16.0300
MD5: 9e93520c336497b327556f7b7c36d49a SHA-1: 5d8c990400a9d86d0e4c60a6c14cff14f065045f SHA-256: fa2c2ec137b588edf286ad4f4b35f509256499debeb854a20c89e5c80da41b72
210 Risk Score

Malware Insights

MITRE ATT&CK
T1059.005 Visual Basic for Applications T1059.001 PowerShell T1059.003 Windows Command Shell T1204.002 Malicious File

This XLSM file contains Excel 4.0 macros, indicated by the 'OOXML_XLM_MACROSHEET' and 'OOXML_XLM_DANGEROUS_FN' heuristics. The 'VBA ActiveX event runs worksheet-decoded XLM formulas' heuristic suggests that the VBA code is used to trigger the XLM macros. The XLM macro sheet contains a dangerous `RETURN()` function, which can be used to execute arbitrary code. The VBA script attempts to decode and execute content, and the `MsgBox(Run(...))` line within the `VDecso` function is highly suspicious and likely used to execute the decoded XLM payload. The presence of a hidden sheet further supports the concealment of malicious activity.

Heuristics 6

  • VBA ActiveX event runs worksheet-decoded XLM formulas critical OLE_VBA_ACTIVEX_XLM_CELL_STAGER
    VBA code attached to an ActiveX/UserForm event reconstructs formula text from worksheet constants using Split/Replace/Mid or character shifting, then executes it through ExecuteExcel4Macro or Run. This is a high-confidence malware stager that hides XLM formula execution in sheet cells; it is not a document-parser CVE.
  • 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.
  • Dangerous XLM formula APIs: RETURN critical OOXML_XLM_DANGEROUS_FN
    Excel 4.0 macro sheet uses formula APIs that call directly into Win32 (=CALL/=EXEC/=REGISTER/=FORMULA). These are the primitives used to download payloads, write files, and start processes from an XLM macro without invoking VBA.
  • VBA project inside OOXML medium OOXML_VBA
    Document contains vbaProject.bin — VBA macros present
  • 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://schemas.openxmlformats.org/spreadsheetml/2006/main
    • http://schemas.microsoft.com/office/excel/2006/main
    • http://schemas.openxmlformats.org/officeDocument/2006/relationships
    • http://schemas.openxmlformats.org/markup-compatibility/2006
    • http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac

Extracted artifacts 4

Files carved from inside the sample during analysis.

FilenameKindSourceSize
macros.bas
0ed9b61384fd84f7ec6edaeeb5c9792ddf894c42248678b8191b53a8f9852b3b
vba-macro oletools.olevba.extract_macros (decoded VBA source from OOXML) 1758 bytes
vbaProject_00.bin
fa1dc8ae18343d6ef2f429ac66dbfcc8c22090eebe818fe5b655839a29a39b68
vba-project OOXML VBA project: xl/vbaProject.bin 18432 bytes
emf_00.emf
18442f66fc184308368fb113b1c28494dce7331a052469405fcf94f2ee8085b5
ooxml-emf OOXML EMF part: xl/media/image1.emf 2024 bytes
xlm_sheet_00.xml
bc9c6ebf0fd320628e241812b20c7929365b4e65eb917fa20596b9adfe330f8f
xlm-macrosheet OOXML XLM macro sheet: xl/macrosheets/sheet1.xml 957 bytes