name: Any Powershell DownloadString
id: 4d015ef2-7adf-11eb-95da-acde48001122
version: 1
date: '2021-03-01'
author: Michael Haag, Splunk
type: batch
datamodel:
- Endpoint
description: The following analytic identifies the use of PowerShell downloading a
  file using `DownloadString` method. This particular method is utilized in many different
  PowerShell frameworks to download files and output to disk. Identify the source
  (IP/domain) and destination file and triage appropriately. If AMSI logging or PowerShell
  transaction logs are available, review for further details of the implant.
search: '| tstats `security_content_summariesonly` count min(_time) as firstTime max(_time)
  as lastTime from datamodel=Endpoint.Processes where Processes.process_name=powershell.exe
  OR Processes.process_name=pwsh.exe OR Processes.process_name=PowerShell_ISE.exe
  Processes.process=*.DownloadString*  by Processes.dest Processes.user Processes.parent_process
  Processes.process_name Processes.process Processes.process_id Processes.parent_process_id
  | `drop_dm_object_name(Processes)` | `security_content_ctime(firstTime)`| `security_content_ctime(lastTime)`|
  `any_powershell_downloadstring_filter`'
how_to_implement: To successfully implement this search you need to be ingesting information
  on process that include the name of the process responsible for the changes from
  your endpoints into the `Endpoint` datamodel in the `Processes` node.
known_false_positives: False positives may be present and filtering will need to occur
  by parent process or command line argument. It may be required to modify this query
  to an EDR product for more granular coverage.
references:
- https://docs.microsoft.com/en-us/dotnet/api/system.net.webclient.downloadstring?view=net-5.0
- https://blog.malwarebytes.com/malwarebytes-news/2021/02/lazyscripter-from-empire-to-double-rat/
- https://github.com/redcanaryco/atomic-red-team/blob/master/atomics/T1059.001/T1059.001.md
tags:
  analytic_story:
  - Malicious PowerShell
  - HAFNIUM Group
  automated_detection_testing: passed
  dataset:
  - https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1059.001/atomic_red_team/windows-sysmon.log
  kill_chain_phases:
  - Exploitation
  mitre_attack_id:
  - T1059.001
  product:
  - Splunk Enterprise
  - Splunk Enterprise Security
  - Splunk Cloud
  required_fields:
  - _time
  - Processes.process_name
  - Processes.process
  - Processes.dest
  - Processes.user
  - Processes.parent_process
  - Processes.process_name
  - Processes.process_id
  - Processes.parent_process_id
  security_domain: endpoint
