Malicious Office (OOXML) / .DOC — malware analysis report

Static analysis result for SHA-256 78c296d80214d887…

MALICIOUS

Office (OOXML) / .DOC

2.19 MB Created: 2022-08-11 14:33:00 UTC Authoring application: Microsoft Office Word 14.0000 First seen: 2022-08-11
MD5: 84904f679048e45c43210c22f8fcc5df SHA-1: 7e23ee02e2543e51a2ad97b2ede96c441d34e6eb SHA-256: 78c296d80214d887820a3c55bc06fbc42b17db90fb01aef0766365b383f1e7f1
362 Risk Score

Malware Insights

MITRE ATT&CK
T1059.005 Visual Basic T1204.002 Malicious File T1059.001 PowerShell T1140 Deobfuscate or Obfuscate Malicious Code

The sample is an OOXML document containing a VBA project with a renamed VBA project part to evade detection. The presence of a Document_Open macro, GetObject, CallByName, and a VBA property-stored shellcode loader indicates a malicious intent to execute code upon opening. The document body explicitly instructs the user to 'Enable editing' and 'Enable content', a common lure for macro-based malware.

Heuristics 10

  • VBA property-stored shellcode loader critical OLE_VBA_PROPERTY_SHELLCODE_LOADER
    VBA auto-exec macro takes the address (VarPtr) of a byte buffer decoded from a document property, marks memory executable (VirtualProtect/VirtualAlloc), and transfers control through a callback API (e.g. SetTimer/EnumWindows). The payload is hidden in the document properties rather than the macro source — the SVCReady loader pattern, a native shellcode runner rather than a parser CVE.
  • ClamAV: Doc.Downloader.af2f0393915c6ce8-OOXML-9981526-0 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Doc.Downloader.af2f0393915c6ce8-OOXML-9981526-0
  • VBA project part renamed to evade filename detection high OOXML_VBA_PROJECT_RENAMED
    The VBA project is bound through the OOXML relationship/content type but its part is not named vbaProject.bin. Legitimate Office producers always emit vbaProject.bin; renaming it hides the macros from path-only scanners (observed in the SVCReady loader).
  • Document_Open macro high OLE_VBA_DOCOPEN
    Document_Open macro
  • GetObject call high OLE_VBA_GETOBJ
    GetObject call
  • CallByName call high OLE_VBA_CALLBYNAME
    CallByName call
  • VBA reads reversed config from document properties high OLE_VBA_REVERSED_DOCPROP_CONFIG
    VBA applies StrReverse to values read from the document's custom/built-in properties. Storing reversed configuration (URLs, CLSIDs, env-var names, payload names) in document properties keeps indicators out of the macro source — an obfuscation technique used by the SVCReady loader.
  • VBA project inside OOXML medium OOXML_VBA
    Document contains a VBA project — VBA macros present (project part renamed away from vbaProject.bin: word/NjvISpDlNc.bin)
  • Macro/content-enable lure medium SE_ENABLE_LURE
    Document instructs the user to enable macros or editing — a common technique used by malware droppers to bypass Office macro security settings
  • 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
    • http://schemas.openxmlformats.org/markup-compatibility/2006
    • http://schemas.openxmlformats.org/officeDocument/2006/relationships
    • http://schemas.openxmlformats.org/officeDocument/2006/math
    • http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing
    • http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing
    • http://schemas.openxmlformats.org/wordprocessingml/2006/main
    • http://schemas.microsoft.com/office/word/2010/wordml
    • http://schemas.microsoft.com/office/word/2010/wordprocessingGroup
    • http://schemas.microsoft.com/office/word/2010/wordprocessingInk
    • http://schemas.microsoft.com/office/word/2006/wordml
    • http://schemas.microsoft.com/office/word/2010/wordprocessingShape

Extracted artifacts 2

Files carved from inside the sample during analysis.

FilenameKindSourceSize
macros.bas
4fcfdb46691d8742631ff20afc9e17c629485c8b389630648c3f5da8f27af4b0
vba-macro oletools.olevba.extract_macros (decoded VBA source from OOXML) 20271 bytes
vbaProject_00.bin
2f366059d45e7399c8a9fed519944e0457c43a4dae42783f374ef15d53327133
vba-project OOXML VBA project: word/NjvISpDlNc.bin 14848 bytes