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

Static analysis result for SHA-256 70f57cd6a864de8c…

MALICIOUS

Office (OLE) / .DOC

7.5 KB First seen: 2022-11-23
MD5: a7d29057a1659859c9d10b0f145be181 SHA-1: b02b4210f8da577dcdaaa2c417d5ec43215a84f6 SHA-256: 70f57cd6a864de8cfe7a14ada43bf8c5c66f24db00f41075aa129dc345874ea5
220 Risk Score

Malware Insights

MITRE ATT&CK
T1059.005 Visual Basic T1059.001 PowerShell T1204.002 Malicious File T1105 Ingress Tool Transfer T1027 Obfuscated Files or Information

The critical heuristic 'OLE_VBA_PROPERTY_SHELLCODE_LOADER' indicates that the VBA macro is designed to load and execute shellcode stored within a document property. The 'OLE_VBA_GETOBJECT_CLSID_DANGEROUS' heuristic further confirms the use of 'WScript.Shell' to facilitate this execution. The 'Document_Open' macro is triggered automatically, suggesting an attempt to immediately run the malicious payload upon opening the document. The shellcode likely acts as a downloader for a second-stage payload.

Heuristics 5

  • 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.
  • VBA instantiates a dangerous COM class by CLSID critical OLE_VBA_GETOBJECT_CLSID_DANGEROUS
    VBA uses GetObject("new:{CLSID}") to instantiate an execution/scripting-capable COM class by its raw CLSID, avoiding the CreateObject ProgID that name-based detection keys on.
  • Document_Open macro high OLE_VBA_DOCOPEN
    Document_Open macro
  • GetObject call high OLE_VBA_GETOBJ
    GetObject call
  • VBA macros detected medium OLE_VBA_MACROS
    Document contains VBA macro code

Extracted artifacts 1

Files carved from inside the sample during analysis.

FilenameKindSourceSize
macros.bas
d0b1c607d130dd9ea378f347ee405dca0bd6af2ce39240378d3358ee32c2dc7b
vba-macro oletools.olevba.extract_macros (decoded VBA source) 3114 bytes