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

Static analysis result for SHA-256 74031c183472d12e…

MALICIOUS

Office (OOXML) / .XLSX

61.3 KB Created: 2021-10-27 10:31:49 UTC Authoring application: Microsoft Excel 12.0000
MD5: e2b9ffc3b0077930d8bab930ad1ca547 SHA-1: 2d4c569068843d349f2e6c7758902878ecadf066 SHA-256: 74031c183472d12e1ab2c5a61c06801004cc19c2f4932cfd398e3f973196bbf4
182 Risk Score

Malware Insights

MITRE ATT&CK
T1059.005 Visual Basic T1203 Exploitation for Client Execution T1566.001 Spearphishing Attachment

The sample contains Excel 4.0 macros that are designed to execute a command to download and run a payload from a provided URL. The macro reassembles a command string that ultimately uses 'mshta' to execute a file from the path 'C:\ProgramData\excel.rtf', which is likely the second-stage payload. The URLs extracted point to executable files hosted on Discord's CDN.

Heuristics 4

  • 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. The macro sheet is stored as XLSB/BIFF12 binary content, which many XML-only OOXML scanners miss.
  • XLM payload reassembled from CHAR()/split formulas critical OOXML_XLM_REASSEMBLED_PAYLOAD
    An Excel 4.0 macro sheet builds its payload inside the formula token stream by concatenating per-character CHAR() calls and string fragments, so no WinAPI name, shell command, or URL is ever contiguous in the .bin for a literal-bytes scan to find. Reassembling the formulas recovered download/execute API names, LOLBin commands (regsvr32/rundll32/mshta/wmic/powershell), or a payload URL — the de-obfuscated download-and-run kill chain.
  • URL reconstructed from XLM cell array (3 URLs) critical OOXML_XLM_CELL_ARRAY_URL
    Excel 4.0 macro sheet stages its payload URL across individual numeric cells (one ASCII charcode per cell) or inside an embedded HTA that uses VBScript Chr()/&-concat obfuscation. The reconstructed URL is invisible to literal-bytes URL extraction because it is never contiguous in the workbook stream. URLs were recovered by walking the BIFF12 record stream of every worksheet and macrosheet part and decoding RK/inline-string cells in both row-major and column-major order.
  • 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 https://cdn.discordapp.com/attachments/905044663310884887/905079360539729940/ogcAaOvOQWVXq.mp3
    • https://cdn.discordapp.com/attachments/905044663310884887/905079720142594068/LHoEkUXjxvCOdCR.mp3
    • https://cdn.discordapp.com/attachments/905044663310884887/905080990530162728/PZoRQ.mp3

Extracted artifacts 1

Files carved from inside the sample during analysis.

FilenameKindSourceSize
xlm_sheet_00.bin
acc26df08e13610989b97d4b2f3602709b0e25e8df9716c356a6d4d629b33c47
xlm-macrosheet OOXML XLM macro sheet: xl/macrosheets/sheet1.bin 155152 bytes