Emotet — Office (OLE) malware analysis

Static analysis result for SHA-256 9b96dba4aec1e1d0…

MALICIOUS

Office (OLE)

229.0 KB Created: 2015-06-05 18:19:34 Authoring application: Microsoft Excel First seen: 2021-11-02
MD5: a02365c50a38cc42fa47b2045e22423c SHA-1: 3a68ee07286f13e9fd7f7b333fa5dce3f52201fc SHA-256: 9b96dba4aec1e1d051a02e545a1cd7ea77512951d4253f64cd34feea559ac914
262 Risk Score

Malware Insights

Emotet · confidence 95%

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

The file contains Excel 4.0 macros, including an Auto_Open entry, which is a strong indicator of malicious intent. These macros are designed to execute and download payloads from the three provided URLs. ClamAV also detected this file as 'Xls.Downloader.Emotet-MSOLE2-af43432fbcb8603c-9980047-0', further supporting the Emotet family attribution.

Heuristics 6

  • ClamAV: Xls.Downloader.Emotet-MSOLE2-af43432fbcb8603c-9980047-0 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Xls.Downloader.Emotet-MSOLE2-af43432fbcb8603c-9980047-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 (3 URLs) 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://pvplglobal.com/G3Sc73WpcSo5/211021.gif Referenced by macro
    • https://ivyfashion.in/9EzVsRwPKml/211021.gifReferenced by macro
    • https://m2autopartsindia.com/Ho2EjThhAmw/211021.gifReferenced 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) 10823 bytes
SHA-256: 3da0d9813b47f00eb907c60ebde00ad0aa62499521c60e811eb27eb62be73fd0
Preview script
First 1,000 lines of the extracted script
' 0085     13 BOUNDSHEET : Sheet Information - worksheet or dialog sheet, visible -  Shee
' 0085     13 BOUNDSHEET : Sheet Information - worksheet or dialog sheet, hidden -  Sbur
' 0085     13 BOUNDSHEET : Sheet Information - worksheet or dialog sheet, hidden -  Sbur
' 0085     13 BOUNDSHEET : Sheet Information - worksheet or dialog sheet, hidden -  Sbur
' 0085     11 BOUNDSHEET : Sheet Information - Excel 4.0 macro sheet, hidden -  Ko
' 0085     13 BOUNDSHEET : Sheet Information - Excel 4.0 macro sheet, hidden -  DEFW
' 0085     13 BOUNDSHEET : Sheet Information - Excel 4.0 macro sheet, hidden -  DEFW
' 0085     12 BOUNDSHEET : Sheet Information - Excel 4.0 macro sheet, hidden -  DEF
' 0085     13 BOUNDSHEET : Sheet Information - Excel 4.0 macro sheet, hidden -  Beff
' 0085     13 BOUNDSHEET : Sheet Information - Excel 4.0 macro sheet, hidden -  Beff
' 0085     13 BOUNDSHEET : Sheet Information - Excel 4.0 macro sheet, hidden -  Beff
' 0085     13 BOUNDSHEET : Sheet Information - Excel 4.0 macro sheet, hidden -  Beff
' 0085     13 BOUNDSHEET : Sheet Information - Excel 4.0 macro sheet, hidden -  Beff
' 0085     13 BOUNDSHEET : Sheet Information - Excel 4.0 macro sheet, hidden -  Beff
' 0085     13 BOUNDSHEET : Sheet Information - Excel 4.0 macro sheet, hidden -  Beff
' 0085     13 BOUNDSHEET : Sheet Information - Excel 4.0 macro sheet, hidden -  Beff
' 0018     29 LABEL : Cell Value, String Constant - _xlfn.ARABIC hidden len=2 ptgErr  *INCOMPLETE FORMULA PARSING* Remaining, unparsed expression: b'\x1d'
' 0018     26 LABEL : Cell Value, String Constant - EFEF len=7 ptgRef3d  Beff!D3 
' 0018     26 LABEL : Cell Value, String Constant - GRRG len=7 ptgRef3d  Shee!G14 
' 0018     26 LABEL : Cell Value, String Constant - RFWF len=7 ptgRef3d  Beff!C4 
' 0018     26 LABEL : Cell Value, String Constant - RTWE len=7 ptgRef3d  Beff!C4 
' 0018     23 LABEL : Cell Value, String Constant - built-in-name 1 Auto_Open len=7 ptgRef3d  Shee!G1 
' 002a      2 PRINTHEADERS : Print Row/Column Labels
' 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
' 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
' 002a      2 PRINTHEADERS : Print Row/Column Labels
' 002a      2 PRINTHEADERS : Print Row/Column Labels
' 002a      2 PRINTHEADERS : Print Row/Column Labels
' 002a      2 PRINTHEADERS : Print Row/Column Labels
' 002a      2 PRINTHEADERS : Print Row/Column Labels
' 002a      2 PRINTHEADERS : Print Row/Column Labels
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 002a      2 PRINTHEADERS : Print Row/Column Labels
' 00fd     10 LABELSST : Cell Value, String Constant/ SST
' 002a      2 PRINTHEADERS : Print Row/Column Labels
' 002a      2 PRINTHEADERS : Print Row/Column Labels
' 00fd     10 LABELSST : Cell Value, String Const
... (truncated)