Try in Splunk Security Cloud


The following analytic identifies suspicious PowerShell script execution via EventCode 4104 that is using memory stream as new object backstore. The malicious PowerShell script will contain stream flate data and will be decompressed in memory to run or drop the actual payload. During triage, review parallel processes within the same timeframe. Review the full script block to identify other related artifacts.

  • Type: TTP
  • Product: Splunk Enterprise, Splunk Enterprise Security, Splunk Cloud
  • Datamodel:
  • Last Updated: 2021-06-10
  • Author: Teoderick Contreras, Splunk
  • ID: c396a0c4-c9f2-11eb-b4f5-acde48001122


ID Technique Tactic
T1140 Deobfuscate/Decode Files or Information Defense Evasion
`powershell` EventCode=4104 Message = "*New-Object IO.MemoryStream*" 
| stats count min(_time) as firstTime max(_time) as lastTime by EventCode Message ComputerName User 
| `security_content_ctime(firstTime)` 
| `security_content_ctime(lastTime)` 
| `powershell_using_memory_as_backing_store_filter`

Associated Analytic Story

How To Implement

To successfully implement this analytic, you will need to enable PowerShell Script Block Logging on some or all endpoints. Additional setup here

Required field

  • _time
  • EventCode
  • Message
  • ComputerName
  • User

Kill Chain Phase

  • Exploitation

Known False Positives

powershell may used this function to store out object into memory.


Risk Score Impact Confidence Message
40.0 50 80 A suspicious powershell script contains memorystream command in $Message$ as new object backstore with EventCode $EventCode$ in host $ComputerName$


Test Dataset

Replay any dataset to Splunk Enterprise by using our tool or the UI. Alternatively you can replay a dataset into a Splunk Attack Range

source | version: 1