Malicious Office (OLE) — malware analysis report

Static analysis result for SHA-256 9f37caa92098dc9f…

MALICIOUS

Office (OLE)

254.5 KB Created: 2020-08-05 10:03:52 Authoring application: Microsoft Excel First seen: 2020-09-15
MD5: 4aada7ac819bbd82251067c28ba45d1e SHA-1: ab6fb72a843c58c9043d1eb1efc1da52cb0b0f09 SHA-256: 9f37caa92098dc9f215c7577edc7f0ed1905c0c59f0384834e8a19789f7c9c77
180 Risk Score

Malware Insights

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

The sample is an Excel 4.0 macro sheet containing an Auto_Open macro, which is a known technique for executing malicious code upon opening the workbook. The document body explicitly instructs the user to "Enable Editing" and "Enable Content", a common social engineering tactic to bypass security warnings and trigger the macro. The presence of dangerous formula APIs and environment evasion techniques further indicates malicious intent.

Heuristics 4

  • Excel 4.0 Auto_Open defined name critical OLE_XLM_AUTOOPEN_DEFINEDNAME
    oletools recovered an Auto_Open / Auto_Close entry from an Excel 4.0 macro sheet. The raw BIFF name can be tokenized or partially opaque to byte-string checks, but the recovered macro listing confirms the workbook has an XLM auto-execution entry.
  • XLM Auto_Open with dangerous formula APIs critical OLE_XLM_DANGEROUS_FN
    Excel 4.0 macro sheet contains an Auto_Open / Auto_Close entry and dangerous XLM formula APIs that can invoke programs, write files, or transfer control without VBA.
  • XLM Auto_Open environment-evasion HALT gate high OLE_XLM_ENVIRONMENT_EVASION_HALT
    Excel 4.0 macro sheet auto-executes multiple GET.WORKSPACE / GET.WINDOW environment checks and halts execution when the host does not match the expected user environment. This is a common sandbox-evasion pattern in XLM malware and is stronger than a bare XLM macro-sheet indicator.
  • Excel 4.0 (XLM) macro sheet present medium OLE_XLM_AUTOOPEN
    Workbook contains an Excel 4.0 macro sheet sub-stream — XLM is rarely seen in modern legitimate workbooks and was a major Office malware vector during 2020-2022.

Extracted artifacts 1

Files carved from inside the sample during analysis.

FilenameKindSourceSize
xlm_macros.txt xlm-macro oletools.olevba.extract_all_macros (XLM macro listing) 267955 bytes
SHA-256: f7ae7355af55161c3be86416b96692f4524cac8540ec5d4a19ba5bf82faf54c2
Preview script
First 1,000 lines of the extracted script
' 0085     14 BOUNDSHEET : Sheet Information - worksheet or dialog sheet, visible -  Sheet
' 0085     15 BOUNDSHEET : Sheet Information - Excel 4.0 macro sheet, visible -  i9m1Ry
' 0018     23 LABEL : Cell Value, String Constant - built-in-name 1 Auto_Open hidden len=7 ptgNameX  NAMEIDX 16 
' 0018     21 LABEL : Cell Value, String Constant - bOKCyb len=0 
' 0018     25 LABEL : Cell Value, String Constant - cUWITcYXtb len=0 
' 0018     24 LABEL : Cell Value, String Constant - HdjCjsKwi len=0 
' 0018     24 LABEL : Cell Value, String Constant - IoxpUaYcy len=0 
' 0018     27 LABEL : Cell Value, String Constant - kbYgsCeeWJQU len=0 
' 0018     22 LABEL : Cell Value, String Constant - kpPMaoY len=0 
' 0018     27 LABEL : Cell Value, String Constant - oGcrClLebtvp len=0 
' 0018     21 LABEL : Cell Value, String Constant - PqXPNF len=0 
' 0018     24 LABEL : Cell Value, String Constant - QVqSyFQqP len=0 
' 0018     25 LABEL : Cell Value, String Constant - SKlPAFIMlV len=0 
' 0018     26 LABEL : Cell Value, String Constant - tHgajPQrwNl len=0 
' 0018     24 LABEL : Cell Value, String Constant - tSmFDmLsg len=0 
' 0018     25 LABEL : Cell Value, String Constant - xGuNgjQRje len=0 
' 0018     25 LABEL : Cell Value, String Constant - yGnGKThUAu len=0 
' 0018     30 LABEL : Cell Value, String Constant -          hidden len=7 ptgRef3d  Sheet!FM3079 
' 0018     20 LABEL : Cell Value, String Constant - ZQikW len=0 
' 002a      2 PRINTHEADERS : Print Row/Column Labels
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 00fd  
... (truncated)