Files
splunk-security_content/detections/endpoint/any_powershell_downloadfile.yml

90 lines
3.4 KiB
YAML

name: Any Powershell DownloadFile
id: 1a93b7ea-7af7-11eb-adb5-acde48001122
version: 2
date: '2021-03-01'
author: Michael Haag, Splunk
type: TTP
datamodel:
- Endpoint.Processes
description: The following analytic identifies the use of PowerShell downloading a
file using `DownloadFile` 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 `process_powershell` Processes.process=*DownloadFile*
by Processes.dest Processes.user Processes.parent_process Processes.process_name
Processes.original_file_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_downloadfile_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. In addition,
confirm the latest CIM App 4.20 or higher is installed and the latest TA for the
endpoint product.
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.downloadfile?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
- Ingress Tool Transfer
- Log4Shell CVE-2021-44228
automated_detection_testing: passed
confidence: 70
context:
- Source:Endpoint
- Stage:Exploitation
cve:
- CVE-2021-44228
dataset:
- https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1059.001/atomic_red_team/windows-sysmon.log
impact: 80
kill_chain_phases:
- Exploitation
message: An instance of $parent_process_name$ spawning $process_name$ was identified
on endpoint $dest$ by user $user$. This behavior identifies the use of DownloadFile
within PowerShell.
mitre_attack_id:
- T1059
- T1059.001
observable:
- name: user
type: User
role:
- Victim
- name: dest
type: Hostname
role:
- Victim
- name: parent_process_name
type: Parent Process
role:
- Parent Process
- name: process_name
type: Process
role:
- Child Process
product:
- Splunk Enterprise
- Splunk Enterprise Security
- Splunk Cloud
required_fields:
- Endpoint.Processes.dest
- Endpoint.Processes.original_file_name
- Endpoint.Processes.parent_process
- Endpoint.Processes.parent_process_id
- Endpoint.Processes.process
- Endpoint.Processes.process_id
- Endpoint.Processes.process_name
- Endpoint.Processes.user
- _time
risk_score: 56
security_domain: endpoint
supported_tas:
- Splunk_TA_microsoft_sysmon