mirror of
https://github.com/splunk/security_content
synced 2026-06-08 17:32:49 +00:00
Merge branch 'TR_2329_AWS_Credential_Access' of github.com:splunk/security_content into TR_2329_AWS_Credential_Access
This commit is contained in:
@@ -37,6 +37,7 @@ class DetectionTags(BaseModel):
|
||||
risk_level: str = None
|
||||
observable_str: str = None
|
||||
kill_chain_phases_id: list = None
|
||||
research_site_url: str = None
|
||||
|
||||
|
||||
@validator('cis20')
|
||||
|
||||
@@ -14,6 +14,7 @@ class ObjToYmlAdapter(Adapter):
|
||||
|
||||
def writeObjectsInPlace(self, objects: list) -> None:
|
||||
for object in objects:
|
||||
|
||||
file_path = object['file_path']
|
||||
object.pop('file_path')
|
||||
object.pop('deprecated')
|
||||
@@ -28,6 +29,11 @@ class ObjToYmlAdapter(Adapter):
|
||||
file_path = os.path.join(output_path, 'complex', file_name)
|
||||
else:
|
||||
file_path = os.path.join(output_path, 'srs', file_name)
|
||||
|
||||
# add research object
|
||||
RESEARCH_SITE_BASE = 'https://research.splunk.com/'
|
||||
research_site_url = RESEARCH_SITE_BASE + obj.source + "/" + obj.id + "/"
|
||||
obj.tags.research_site_url = research_site_url
|
||||
|
||||
body = FindingReportObject.writeFindingReport(obj)
|
||||
|
||||
@@ -53,7 +59,8 @@ class ObjToYmlAdapter(Adapter):
|
||||
"risk_severity": True,
|
||||
"risk_score": True,
|
||||
"security_domain": True,
|
||||
"required_fields": True
|
||||
"required_fields": True,
|
||||
"research_site_url": True
|
||||
},
|
||||
"test":
|
||||
{
|
||||
@@ -86,7 +93,6 @@ class ObjToYmlAdapter(Adapter):
|
||||
f.write(data)
|
||||
f.close()
|
||||
|
||||
|
||||
def writeObjectNewContent(self, object: dict, type: SecurityContentType) -> None:
|
||||
if type == SecurityContentType.detections:
|
||||
file_path = os.path.join(self.input_path, 'detections', object['source'], self.convertNameToFileName(object['name'],object['tags']['product']))
|
||||
|
||||
+1
@@ -53,6 +53,7 @@ tags:
|
||||
risk_score: 42
|
||||
security_domain: endpoint
|
||||
risk_severity: low
|
||||
research_site_url: https://research.splunk.com/obj_to_yml_data/63614a58-10e2-4c6c-ae81-ea1113681439/
|
||||
test:
|
||||
name: Anomalous usage of Archive Tools Unit Test
|
||||
tests:
|
||||
|
||||
+1
@@ -53,6 +53,7 @@ tags:
|
||||
risk_score: 42
|
||||
security_domain: endpoint
|
||||
risk_severity: low
|
||||
research_site_url: https://research.splunk.com/obj_to_yml_data/63614a58-10e2-4c6c-ae81-ea1113681439/
|
||||
test:
|
||||
name: Anomalous usage of Archive Tools Unit Test
|
||||
tests:
|
||||
|
||||
@@ -6,7 +6,7 @@ author: Bhavin Patel, Splunk
|
||||
type: Anomaly
|
||||
datamodel: []
|
||||
description: This detection analytic identifies more than 10 GetPasswordData API calls made to your AWS account with a time window of 5 minutes. Attackers can retrieve the encrypted administrator password for a running Windows instance.
|
||||
search: '| `cloudtrail` eventName=GetPasswordData eventSource = ec2.amazonaws.com | bin _time span=5m | stats count values(errorCode) as errorCode dc(requestParameters.instanceId) as distinct_instance_ids values(requestParameters.instanceId) as instance_ids by aws_account_id src_ip user_arn userAgent eventName _time
|
||||
search: '`cloudtrail` eventName=GetPasswordData eventSource = ec2.amazonaws.com | bin _time span=5m | stats count values(errorCode) as errorCode dc(requestParameters.instanceId) as distinct_instance_ids values(requestParameters.instanceId) as instance_ids by aws_account_id src_ip user_arn userAgent eventName _time
|
||||
| where distinct_instance_ids > 10 | `aws_credential_access_getpassworddata_filter`'
|
||||
how_to_implement: You must install splunk AWS add on and Splunk App for AWS. This search works with AWS CloudTrail logs. We encourage the users to adjust the values of `distinct_instance_ids` and tweak the `span` value according to their environment.
|
||||
known_false_positives: Administrator tooling or automated scripts may make these calls but it is highly unlikely to make several calls in a short period of time.
|
||||
@@ -57,4 +57,4 @@ tags:
|
||||
- sourceIPAddress
|
||||
- awsRegion
|
||||
risk_score: 49
|
||||
security_domain: threat
|
||||
security_domain: threat
|
||||
|
||||
@@ -0,0 +1,68 @@
|
||||
name: Linux AWK Privilege Escalation
|
||||
id: 4510cae0-96a2-4840-9919-91d262db210a
|
||||
version: 1
|
||||
date: '2022-07-31'
|
||||
author: Gowthamaraj Rajendran, Splunk
|
||||
type: Anomaly
|
||||
datamodel:
|
||||
- Endpoint
|
||||
description: Awk is mostly used for processing and scanning patterns.
|
||||
It checks one or more files to determine whether any lines fit the specified patterns,
|
||||
and if so, it does the appropriate action. If sudo right is given to AWK binary for the user, then the user
|
||||
can run system commands as root and possibly get a root shell.
|
||||
search: '| tstats `security_content_summariesonly` count min(_time) as firstTime max(_time)
|
||||
as lastTime from datamodel=Endpoint.Processes where Processes.process="*sudo*" AND Processes.process="*awk*" AND Processes.process="*BEGIN*system*" by Processes.dest Processes.user Processes.parent_process_name
|
||||
Processes.process_name Processes.process Processes.process_id Processes.parent_process_id
|
||||
Processes.process_guid | `drop_dm_object_name(Processes)` | `security_content_ctime(firstTime)`
|
||||
| `security_content_ctime(lastTime)`| `linux_awk_privilege_escalation_filter`'
|
||||
how_to_implement: To successfully implement this search, you need to be ingesting
|
||||
logs with the process name, parent process, and command-line executions from your
|
||||
endpoints. If you are using Sysmon, you can use the Add-on for Linux Sysmon from
|
||||
Splunkbase.
|
||||
known_false_positives: False positives are present based on automated tooling or system administrative usage. Filter as needed.
|
||||
references:
|
||||
- https://www.hacknos.com/awk-privilege-escalation/
|
||||
tags:
|
||||
analytic_story:
|
||||
- Linux Privilege Escalation
|
||||
- Linux Living Off The Land
|
||||
asset_type: Endpoint
|
||||
cis20:
|
||||
- CIS 3
|
||||
- CIS 5
|
||||
- CIS 16
|
||||
confidence: 90
|
||||
context:
|
||||
- Source:Endpoint
|
||||
- Stage:Privilege Escalation
|
||||
dataset:
|
||||
- https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1548/awk/sysmon_linux.log
|
||||
impact: 80
|
||||
kill_chain_phases:
|
||||
- Exploitation
|
||||
message: A commandline $process$ with process $process_name$ on $dest$
|
||||
mitre_attack_id:
|
||||
- T1548.003
|
||||
- T1548
|
||||
nist:
|
||||
- DE.CM
|
||||
observable:
|
||||
- name: dest
|
||||
type: Hostname
|
||||
role:
|
||||
- Victim
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
- Splunk Cloud
|
||||
required_fields:
|
||||
- _time
|
||||
- Processes.dest
|
||||
- Processes.user
|
||||
- Processes.parent_process_name
|
||||
- Processes.process_name
|
||||
- Processes.process
|
||||
- Processes.process_id
|
||||
- Processes.parent_process_id
|
||||
risk_score: 72
|
||||
security_domain: endpoint
|
||||
@@ -0,0 +1,81 @@
|
||||
name: Linux Curl Upload File
|
||||
id: c1de2d9a-0c02-4bb4-a49a-510c6e9cf2bf
|
||||
version: 1
|
||||
date: '2022-07-29'
|
||||
author: Michael Haag, Splunk
|
||||
type: TTP
|
||||
datamodel:
|
||||
- Endpoint
|
||||
description: The following analytic identifies curl being utilized with the -F or --form, --upload-file, -T, -d, --data, --data-raw, -I and --head switches to upload AWS credentials or config to a remote destination.
|
||||
This enables uploading of binary files and so forth. To force the 'content' part to be a file, prefix the file name with an @ sign. To just get the content part from a file, prefix the file name with the symbol <. The difference between @ and < is then that @ makes a file get attached in the post as a file upload, while the < makes a text field and just get the contents for that text field from a file.
|
||||
This technique was utlized by the TeamTNT group to exfiltrate AWS credentials.
|
||||
search: '| tstats `security_content_summariesonly` count min(_time) as firstTime max(_time)
|
||||
as lastTime from datamodel=Endpoint.Processes where Processes.process_name=curl
|
||||
Processes.process IN ("*-F *", "*--form *","*--upload-file *","*-T *","*-d *","*--data *","*--data-raw *", "*-I *", "*--head *") AND Processes.process IN ("*.aws/credentials*". "*.aws/config*") by Processes.dest Processes.user Processes.parent_process_name 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)`
|
||||
| `linux_curl_upload_file_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: Filtering may be required. In addition to AWS credentials, add other important files and monitor. The inverse would be to look for _all_ -F behavior and tune from there.
|
||||
references:
|
||||
- https://curl.se/docs/manpage.html
|
||||
- https://www.cadosecurity.com/team-tnt-the-first-crypto-mining-worm-to-steal-aws-credentials/
|
||||
- https://gtfobins.github.io/gtfobins/curl/
|
||||
tags:
|
||||
analytic_story:
|
||||
- Linux Living Off The Land
|
||||
- Data Exfiltration
|
||||
- Ingress Tool Transfer
|
||||
asset_type: Endpoint
|
||||
cis20:
|
||||
- CIS 3
|
||||
- CIS 5
|
||||
- CIS 16
|
||||
confidence: 80
|
||||
context:
|
||||
- Source:Endpoint
|
||||
dataset:
|
||||
- https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1105/atomic_red_team/curl-linux-sysmon.log
|
||||
impact: 80
|
||||
kill_chain_phases:
|
||||
- Actions on Objectives
|
||||
message: An instance of $process_name$ was identified on endpoint $dest$ by user $user$ attempting to upload important files to a remote destination.
|
||||
mitre_attack_id:
|
||||
- T1105
|
||||
nist:
|
||||
- DE.CM
|
||||
observable:
|
||||
observable:
|
||||
- name: user
|
||||
type: User
|
||||
role:
|
||||
- Victim
|
||||
- name: dest
|
||||
type: Hostname
|
||||
role:
|
||||
- Victim
|
||||
- name: process_name
|
||||
type: Process
|
||||
role:
|
||||
- Child Process
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
- Splunk Cloud
|
||||
required_fields:
|
||||
- _time
|
||||
- Processes.dest
|
||||
- Processes.user
|
||||
- Processes.parent_process_name #parent process name
|
||||
- Processes.parent_process #parent cmdline
|
||||
- Processes.original_file_name
|
||||
- Processes.process_name #process name
|
||||
- Processes.process #process cmdline
|
||||
- Processes.process_id
|
||||
- Processes.parent_process_path
|
||||
- Processes.process_path
|
||||
- Processes.parent_process_id
|
||||
risk_score: 64
|
||||
security_domain: endpoint
|
||||
@@ -0,0 +1,68 @@
|
||||
name: Linux Docker Privilege Escalation
|
||||
id: 2e7bfb78-85f6-47b5-bc2f-15813a4ef2b3
|
||||
version: 1
|
||||
date: '2022-07-31'
|
||||
author: Gowthamaraj Rajendran, Splunk
|
||||
type: Anomaly
|
||||
datamodel:
|
||||
- Endpoint
|
||||
description: Docker is an open source containerization platform. It helps programmers to bundle applications into containers,
|
||||
which are standardized executable parts that include the application source code along with the OS libraries and dependencies needed to run
|
||||
that code in any setting. The user can add mount the root directory into a container and edit the /etc/password file to add a super user.
|
||||
This requires the user to be privileged enough to run docker, i.e. being in the docker group or being root.
|
||||
search: '| tstats `security_content_summariesonly` count min(_time) as firstTime max(_time)
|
||||
as lastTime from datamodel=Endpoint.Processes where Processes.process IN("*docker*-v*/*:*","*docker*--volume*/*:*") OR Processes.process IN("*docker*exec*sh*","*docker*exec*bash*") by Processes.dest Processes.user Processes.parent_process_name
|
||||
Processes.process_name Processes.process Processes.process_id Processes.parent_process_id
|
||||
Processes.process_guid | `drop_dm_object_name(Processes)` | `security_content_ctime(firstTime)`
|
||||
| `security_content_ctime(lastTime)` | `linux_docker_privilege_escalation_filter`'
|
||||
how_to_implement: To successfully implement this search, you need to be ingesting
|
||||
logs with the process name, parent process, and command-line executions from your
|
||||
endpoints. If you are using Sysmon, you can use the Add-on for Linux Sysmon from
|
||||
Splunkbase.
|
||||
known_false_positives: False positives are present based on automated tooling or system administrative usage. Filter as needed.
|
||||
references:
|
||||
- https://gtfobins.github.io/gtfobins/docker/
|
||||
tags:
|
||||
analytic_story:
|
||||
- Linux Privilege Escalation
|
||||
- Linux Living Off The Land
|
||||
asset_type: Endpoint
|
||||
cis20:
|
||||
- CIS 3
|
||||
- CIS 5
|
||||
- CIS 16
|
||||
confidence: 30
|
||||
context:
|
||||
- Source:Endpoint
|
||||
- Stage:Privilege Escalation
|
||||
dataset:
|
||||
- https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1548/docker/sysmon_linux.log
|
||||
impact: 80
|
||||
kill_chain_phases:
|
||||
- Exploitation
|
||||
message: A commandline $process$ with process $process_name$ on $dest$
|
||||
mitre_attack_id:
|
||||
- T1548.003
|
||||
- T1548
|
||||
nist:
|
||||
- DE.CM
|
||||
observable:
|
||||
- name: dest
|
||||
type: Hostname
|
||||
role:
|
||||
- Victim
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
- Splunk Cloud
|
||||
required_fields:
|
||||
- _time
|
||||
- Processes.dest
|
||||
- Processes.user
|
||||
- Processes.parent_process_name
|
||||
- Processes.process_name
|
||||
- Processes.process
|
||||
- Processes.process_id
|
||||
- Processes.parent_process_id
|
||||
risk_score: 24
|
||||
security_domain: endpoint
|
||||
@@ -0,0 +1,80 @@
|
||||
name: Linux Ingress Tool Transfer Hunting
|
||||
id: 52fd468b-cb6d-48f5-b16a-92f1c9bb10cf
|
||||
version: 1
|
||||
date: '2022-07-29'
|
||||
author: Michael Haag, Splunk
|
||||
type: Hunting
|
||||
datamodel:
|
||||
- Endpoint
|
||||
description: The following analytic hunts for curl and wget being utilized in the environment. This is meant to help with identifying normal usage and potentially malicious. Utilize this query to tune other curl and wget analytics.
|
||||
search: '| tstats `security_content_summariesonly` count min(_time) as firstTime max(_time)
|
||||
as lastTime from datamodel=Endpoint.Processes where (Processes.process_name=curl OR Processes.process_name=wget) by Processes.dest Processes.user Processes.parent_process_name 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)`
|
||||
| `linux_ingress_tool_transfer_hunting_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 will be present. This query is meant to help tune other curl and wget analytics.
|
||||
references:
|
||||
- https://gtfobins.github.io/gtfobins/curl/
|
||||
- https://curl.se/docs/manpage.html#-I
|
||||
- https://gtfobins.github.io/gtfobins/curl/
|
||||
- https://github.com/rapid7/metasploit-framework/search?q=curl
|
||||
tags:
|
||||
analytic_story:
|
||||
- Linux Living Off The Land
|
||||
- Ingress Tool Transfer
|
||||
asset_type: Endpoint
|
||||
cis20:
|
||||
- CIS 3
|
||||
- CIS 5
|
||||
- CIS 16
|
||||
confidence: 10
|
||||
context:
|
||||
- Source:Endpoint
|
||||
dataset:
|
||||
- https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1105/atomic_red_team/curl-linux-sysmon.log
|
||||
impact: 10
|
||||
kill_chain_phases:
|
||||
- Delivery
|
||||
- Installation
|
||||
- Actions on Objectives
|
||||
message: An instance of $process_name$ was identified
|
||||
on endpoint $dest$ by user $user$ utilizing curl or wget.
|
||||
mitre_attack_id:
|
||||
- T1105
|
||||
nist:
|
||||
- DE.CM
|
||||
observable:
|
||||
- name: user
|
||||
type: User
|
||||
role:
|
||||
- Victim
|
||||
- name: dest
|
||||
type: Hostname
|
||||
role:
|
||||
- Victim
|
||||
- name: process_name
|
||||
type: Process
|
||||
role:
|
||||
- Child Process
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
- Splunk Cloud
|
||||
required_fields:
|
||||
- _time
|
||||
- Processes.dest
|
||||
- Processes.user
|
||||
- Processes.parent_process_name #parent process name
|
||||
- Processes.parent_process #parent cmdline
|
||||
- Processes.original_file_name
|
||||
- Processes.process_name #process name
|
||||
- Processes.process #process cmdline
|
||||
- Processes.process_id
|
||||
- Processes.parent_process_path
|
||||
- Processes.process_path
|
||||
- Processes.parent_process_id
|
||||
risk_score: 1
|
||||
security_domain: endpoint
|
||||
@@ -0,0 +1,82 @@
|
||||
name: Linux Ingress Tool Transfer with Curl
|
||||
id: 8c1de57d-abc1-4b41-a727-a7a8fc5e0857
|
||||
version: 1
|
||||
date: '2022-07-29'
|
||||
author: Michael Haag, Splunk
|
||||
type: Anomaly
|
||||
datamodel:
|
||||
- Endpoint
|
||||
description: The following analytic identifies curl with the command-line switches that are commonly used to download, output, a remote script or binary.
|
||||
MetaSploit Framework will combine the -sO switch with | chmod +x to enable a simple one liner to download and set the execute bit to run the file immediately.
|
||||
During triage, review the remote domain and file being downloaded for legitimacy.
|
||||
search: '| tstats `security_content_summariesonly` count min(_time) as firstTime max(_time)
|
||||
as lastTime from datamodel=Endpoint.Processes where Processes.process_name=curl
|
||||
by Processes.dest Processes.user Processes.parent_process_name 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)`
|
||||
| where match(process, "(?i)(-O|-sO|-ksO|--output)")
|
||||
| `linux_ingress_tool_transfer_with_curl_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 will be present. Tune and then change type to TTP.
|
||||
references:
|
||||
- https://gtfobins.github.io/gtfobins/curl/
|
||||
- https://curl.se/docs/manpage.html#-I
|
||||
- https://gtfobins.github.io/gtfobins/curl/
|
||||
- https://github.com/rapid7/metasploit-framework/search?q=curl
|
||||
tags:
|
||||
analytic_story:
|
||||
- Linux Living Off The Land
|
||||
- Ingress Tool Transfer
|
||||
asset_type: Endpoint
|
||||
cis20:
|
||||
- CIS 3
|
||||
- CIS 5
|
||||
- CIS 16
|
||||
confidence: 30
|
||||
context:
|
||||
- Source:Endpoint
|
||||
dataset:
|
||||
- https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1105/atomic_red_team/curl-linux-sysmon.log
|
||||
impact: 40
|
||||
kill_chain_phases:
|
||||
- Delivery
|
||||
message: An instance of $process_name$ was identified
|
||||
on endpoint $dest$ by user $user$ to download a remote file. Review activity for further details.
|
||||
mitre_attack_id:
|
||||
- T1105
|
||||
nist:
|
||||
- DE.CM
|
||||
observable:
|
||||
- name: user
|
||||
type: User
|
||||
role:
|
||||
- Victim
|
||||
- name: dest
|
||||
type: Hostname
|
||||
role:
|
||||
- Victim
|
||||
- name: process_name
|
||||
type: Process
|
||||
role:
|
||||
- Child Process
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
- Splunk Cloud
|
||||
required_fields:
|
||||
- _time
|
||||
- Processes.dest
|
||||
- Processes.user
|
||||
- Processes.parent_process_name #parent process name
|
||||
- Processes.parent_process #parent cmdline
|
||||
- Processes.original_file_name
|
||||
- Processes.process_name #process name
|
||||
- Processes.process #process cmdline
|
||||
- Processes.process_id
|
||||
- Processes.parent_process_path
|
||||
- Processes.process_path
|
||||
- Processes.parent_process_id
|
||||
risk_score: 12
|
||||
security_domain: endpoint
|
||||
@@ -0,0 +1,68 @@
|
||||
name: Linux Node Privilege Escalation
|
||||
id: 2e58a4ff-398f-42f4-8fd0-e01ebfe2a8ce
|
||||
version: 1
|
||||
date: '2022-07-31'
|
||||
author: Gowthamaraj Rajendran, Splunk
|
||||
type: Anomaly
|
||||
datamodel:
|
||||
- Endpoint
|
||||
description: Node.js is a back-end JavaScript runtime environment that is open-source, cross-platform, runs on the V8 engine,
|
||||
and executes JavaScript code outside of a web browser. It was created to help create scalable network applications.
|
||||
If the binary is allowed to run as superuser by sudo, it does not drop the elevated privileges and may be used to access the file system,
|
||||
escalate or maintain privileged access.
|
||||
search: '| tstats `security_content_summariesonly` count min(_time) as firstTime max(_time)
|
||||
as lastTime from datamodel=Endpoint.Processes where Processes.process="*sudo*node*" AND Processes.process="*-e*" AND Processes.process="*child_process.spawn*" AND Processes.process="*stdio*" by Processes.dest Processes.user Processes.parent_process_name
|
||||
Processes.process_name Processes.process Processes.process_id Processes.parent_process_id
|
||||
Processes.process_guid | `drop_dm_object_name(Processes)` | `security_content_ctime(firstTime)`
|
||||
| `security_content_ctime(lastTime)` | `linux_node_privilege_escalation_filter`'
|
||||
how_to_implement: To successfully implement this search, you need to be ingesting
|
||||
logs with the process name, parent process, and command-line executions from your
|
||||
endpoints. If you are using Sysmon, you can use the Add-on for Linux Sysmon from
|
||||
Splunkbase.
|
||||
known_false_positives: False positives are present based on automated tooling or system administrative usage. Filter as needed.
|
||||
references:
|
||||
- https://gtfobins.github.io/gtfobins/docker/
|
||||
tags:
|
||||
analytic_story:
|
||||
- Linux Privilege Escalation
|
||||
- Linux Living Off The Land
|
||||
asset_type: Endpoint
|
||||
cis20:
|
||||
- CIS 3
|
||||
- CIS 5
|
||||
- CIS 16
|
||||
confidence: 90
|
||||
context:
|
||||
- Source:Endpoint
|
||||
- Stage:Privilege Escalation
|
||||
dataset:
|
||||
- https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1548/node/sysmon_linux.log
|
||||
impact: 80
|
||||
kill_chain_phases:
|
||||
- Exploitation
|
||||
message: A commandline $process$ with process $process_name$ on $dest$
|
||||
mitre_attack_id:
|
||||
- T1548.003
|
||||
- T1548
|
||||
nist:
|
||||
- DE.CM
|
||||
observable:
|
||||
- name: dest
|
||||
type: Hostname
|
||||
role:
|
||||
- Victim
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
- Splunk Cloud
|
||||
required_fields:
|
||||
- _time
|
||||
- Processes.dest
|
||||
- Processes.user
|
||||
- Processes.parent_process_name
|
||||
- Processes.process_name
|
||||
- Processes.process
|
||||
- Processes.process_id
|
||||
- Processes.parent_process_id
|
||||
risk_score: 72
|
||||
security_domain: endpoint
|
||||
@@ -0,0 +1,84 @@
|
||||
name: Linux Proxy Socks Curl
|
||||
id: bd596c22-ad1e-44fc-b242-817253ce8b08
|
||||
version: 1
|
||||
date: '2022-07-29'
|
||||
author: Michael Haag, Splunk
|
||||
type: TTP
|
||||
datamodel:
|
||||
- Endpoint
|
||||
description: The following analytic identifies curl being utilized with a proxy based on command-line arguments - -x, socks, --preproxy and --proxy. This behavior is built into the MetaSploit Framework as a auxiliary module. What does socks buy an adversary?
|
||||
SOCKS4a extends the SOCKS4 protocol to allow a client to specify a destination domain name rather than an IP address.
|
||||
The SOCKS5 protocol is defined in RFC 1928. It is an incompatible extension of the SOCKS4 protocol; it offers more choices for authentication and adds support for IPv6 and UDP, the latter of which can be used for DNS lookups.
|
||||
The protocols, and a proxy itself, allow an adversary to evade controls in place monitoring traffic, making it harder for the defender to identify and track activity.
|
||||
search: '| tstats `security_content_summariesonly` count min(_time) as firstTime max(_time)
|
||||
as lastTime from datamodel=Endpoint.Processes where Processes.process_name=curl
|
||||
Processes.process IN ("*-x *", "*socks4a://*", "*socks5h://*", "*socks4://*","*socks5://*", "*--preproxy *", "--proxy*") by Processes.dest Processes.user Processes.parent_process_name 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)` | `linux_proxy_socks_curl_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 based on proxy usage internally. Filter as needed.
|
||||
references:
|
||||
- https://www.offensive-security.com/metasploit-unleashed/proxytunnels/
|
||||
- https://curl.se/docs/manpage.html
|
||||
- https://en.wikipedia.org/wiki/SOCKS
|
||||
- https://oxylabs.io/blog/curl-with-proxy
|
||||
- https://reqbin.com/req/c-ddxflki5/curl-proxy-server#:~:text=To%20use%20a%20proxy%20with,be%20URL%20decoded%20by%20Curl.
|
||||
- https://gtfobins.github.io/gtfobins/curl/
|
||||
tags:
|
||||
analytic_story:
|
||||
- Linux Living Off The Land
|
||||
- Ingress Tool Transfer
|
||||
asset_type: Endpoint
|
||||
cis20:
|
||||
- CIS 3
|
||||
- CIS 5
|
||||
- CIS 16
|
||||
confidence: 80
|
||||
context:
|
||||
- Source:Endpoint
|
||||
dataset:
|
||||
- https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1105/atomic_red_team/curl-linux-sysmon.log
|
||||
impact: 70
|
||||
kill_chain_phases:
|
||||
- Delivery
|
||||
message: An instance of $process_name$ was identified
|
||||
on endpoint $dest$ by user $user$ utilizing a proxy. Review activity for further details.
|
||||
mitre_attack_id:
|
||||
- T1090
|
||||
- T1095
|
||||
nist:
|
||||
- DE.CM
|
||||
observable:
|
||||
- name: user
|
||||
type: User
|
||||
role:
|
||||
- Victim
|
||||
- name: dest
|
||||
type: Hostname
|
||||
role:
|
||||
- Victim
|
||||
- name: process_name
|
||||
type: Process
|
||||
role:
|
||||
- Child Process
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
- Splunk Cloud
|
||||
required_fields:
|
||||
- _time
|
||||
- Processes.dest
|
||||
- Processes.user
|
||||
- Processes.parent_process_name #parent process name
|
||||
- Processes.parent_process #parent cmdline
|
||||
- Processes.original_file_name
|
||||
- Processes.process_name #process name
|
||||
- Processes.process #process cmdline
|
||||
- Processes.process_id
|
||||
- Processes.parent_process_path
|
||||
- Processes.process_path
|
||||
- Processes.parent_process_id
|
||||
risk_score: 56
|
||||
security_domain: endpoint
|
||||
@@ -32,6 +32,7 @@ tags:
|
||||
- Windows Persistence Techniques
|
||||
- Living Off The Land
|
||||
- Azorult
|
||||
- DarkCrystal RAT
|
||||
asset_type: Endpoint
|
||||
cis20:
|
||||
- CIS 3
|
||||
|
||||
@@ -33,6 +33,7 @@ tags:
|
||||
- Windows Persistence Techniques
|
||||
- Living Off The Land
|
||||
- Azorult
|
||||
- DarkCrystal RAT
|
||||
confidence: 50
|
||||
context:
|
||||
- Source:Endpoint
|
||||
|
||||
@@ -6,27 +6,24 @@ author: Teoderick Contreras, Splunk
|
||||
type: TTP
|
||||
datamodel:
|
||||
- Endpoint
|
||||
description: The following analytic identifies DCRat "forkbomb" payload feature. This
|
||||
technique was seen in dark crystal RAT backdoor capabilities where it will execute
|
||||
several cmd child process executing "notepad.exe & pause". This analytic detects
|
||||
the multiple cmd.exe and child process notepad.exe execution using batch script
|
||||
in the targeted host within 30s timeframe. this TTP can be a good pivot to check
|
||||
DCRat infection.
|
||||
search: '| tstats `security_content_summariesonly` values(Processes.process) as process
|
||||
values(Processes.parent_process) as parent_process values(Processes.parent_process_id)
|
||||
as parent_process_id values(Processes.process_id) as process_id dc(Processes.parent_process_id)
|
||||
as parent_process_id_count dc(Processes.process_id) as process_id_count min(_time)
|
||||
as firstTime max(_time) as lastTime from datamodel=Endpoint.Processes where Processes.parent_process_name=
|
||||
"cmd.exe" (Processes.process_name = "notepad.exe" OR Processes.original_file_name=
|
||||
"notepad.exe") Processes.parent_process = "*.bat*" by Processes.parent_process_name
|
||||
Processes.process_name Processes.original_file_name Processes.parent_process Processes.dest
|
||||
Processes.user _time span=30s | where parent_process_id_count>= 10 AND process_id_count
|
||||
>=10 | `drop_dm_object_name(Processes)` | `security_content_ctime(firstTime)` |
|
||||
`security_content_ctime(lastTime)` | `windows_command_shell_dcrat_forkbomb_payload_filter`'
|
||||
how_to_implement: To successfully implement this search, you need to be ingesting
|
||||
logs with the process name, parent process, and command-line executions from your
|
||||
endpoints. If you are using Sysmon, you must have at least version 6.0.4 of the
|
||||
Sysmon TA. Tune and filter known instances of wermgr.exe may be used.
|
||||
description: The following analytic identifies DCRat "forkbomb" payload feature.
|
||||
This technique was seen in dark crystal RAT backdoor capabilities where it will execute several cmd child process
|
||||
executing "notepad.exe & pause". This analytic detects the multiple cmd.exe and child process notepad.exe execution using batch script
|
||||
in the targeted host within 30s timeframe. this TTP can be a good pivot to check DCRat infection.
|
||||
search: '| tstats `security_content_summariesonly` values(Processes.process) as process values(Processes.parent_process) as parent_process values(Processes.parent_process_id) as parent_process_id values(Processes.process_id) as process_id dc(Processes.parent_process_id) as parent_process_id_count dc(Processes.process_id) as process_id_count
|
||||
min(_time) as firstTime max(_time) as lastTime from datamodel=Endpoint.Processes
|
||||
where Processes.parent_process_name= "cmd.exe" (Processes.process_name = "notepad.exe" OR Processes.original_file_name= "notepad.exe") Processes.parent_process = "*.bat*"
|
||||
by Processes.parent_process_name Processes.process_name Processes.original_file_name Processes.parent_process Processes.dest Processes.user _time
|
||||
span=30s | where parent_process_id_count>= 10 AND process_id_count >=10
|
||||
| `drop_dm_object_name(Processes)`
|
||||
| `security_content_ctime(firstTime)`
|
||||
| `security_content_ctime(lastTime)`
|
||||
| `windows_command_shell_dcrat_forkbomb_payload_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: unknown
|
||||
references:
|
||||
- https://cert.gov.ua/article/405538
|
||||
|
||||
@@ -0,0 +1,84 @@
|
||||
name: Windows DLL Search Order Hijacking with iscsicpl
|
||||
id: f39ee679-3b1e-4f47-841c-5c3c580acda2
|
||||
version: 1
|
||||
date: '2022-07-29'
|
||||
author: Michael Haag, Splunk
|
||||
type: TTP
|
||||
datamodel:
|
||||
- Endpoint
|
||||
description: The following analytic identifies a recently disclosed search ordler DLL hijack in iscsicpl.exe. The malicious DLL must be in a new path and iscsicpl.exe, upon load, will execute the payload. The analytic is restricted to Windows shells.
|
||||
Two proof of concepts were identified and utilized to determine the behavior. The command-line is an option to go after, but most likely identifying a child process off iscsicpl.exe will be more effective. Monitoring for suspicious DLL loads is also an option.
|
||||
search: '| tstats `security_content_summariesonly` count min(_time) as firstTime max(_time)
|
||||
as lastTime from datamodel=Endpoint.Processes where Processes.parent_process_name=iscsicpl.exe
|
||||
`windows_shells` by Processes.dest Processes.user Processes.parent_process_name 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)`| `windows_dll_search_order_hijacking_with_iscsicpl_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, filtering may be required. Remove the Windows Shells macro to determine if other utilities are using iscsicpl.exe.
|
||||
references:
|
||||
- https://github.com/hackerhouse-opensource/iscsicpl_bypassUAC
|
||||
- https://github.com/422926799/csplugin/tree/master/bypassUAC
|
||||
tags:
|
||||
analytic_story:
|
||||
- Windows Defense Evasion Tactics
|
||||
- Living Off The Land
|
||||
asset_type: Endpoint
|
||||
cis20:
|
||||
- CIS 3
|
||||
- CIS 5
|
||||
- CIS 16
|
||||
confidence: 80
|
||||
context:
|
||||
- Source:Endpoint
|
||||
- Stage:Persistence
|
||||
- Stage:Privilege Escalation
|
||||
- Stage:Defense Evasion
|
||||
- Scope:Inbound
|
||||
dataset:
|
||||
- https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1574.001/iscsicpl/iscsicpl-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$ attempting to elevate access.
|
||||
mitre_attack_id:
|
||||
- T1574.001
|
||||
nist:
|
||||
- DE.CM
|
||||
observable:
|
||||
- name: user
|
||||
type: User
|
||||
role:
|
||||
- Victim
|
||||
- name: dest
|
||||
type: Hostname
|
||||
role:
|
||||
- Victim
|
||||
- name: parent_process_name
|
||||
type: Process
|
||||
role:
|
||||
- Parent Process
|
||||
- name: process_name
|
||||
type: Process
|
||||
role:
|
||||
- Child Process
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
- Splunk Cloud
|
||||
required_fields:
|
||||
- _time
|
||||
- Processes.dest
|
||||
- Processes.user
|
||||
- Processes.parent_process_name #parent process name
|
||||
- Processes.parent_process #parent cmdline
|
||||
- Processes.original_file_name
|
||||
- Processes.process_name #process name
|
||||
- Processes.process #process cmdline
|
||||
- Processes.process_id
|
||||
- Processes.parent_process_path
|
||||
- Processes.process_path
|
||||
- Processes.parent_process_id
|
||||
risk_score: 64
|
||||
security_domain: endpoint
|
||||
@@ -0,0 +1,68 @@
|
||||
name: Windows Gather Victim Host Information Camera
|
||||
id: e4df4676-ea41-4397-b160-3ee0140dc332
|
||||
version: 1
|
||||
date: '2022-07-28'
|
||||
author: Teoderick Contreras, Splunk
|
||||
type: Anomaly
|
||||
datamodel:
|
||||
- Endpoint
|
||||
description: The following analytic detects a powershell script that enumerate camera mounted to the targeted host.
|
||||
This technique was seen in DCRat malware, where it runs a powershell command to look for camera information that will be pass on to its
|
||||
C2 server. This anomaly detection can be a good pivot to check who and why this enumeration is needed and what parent process execute this powershell
|
||||
script command.
|
||||
search: '`powershell` EventCode=4104 ScriptBlockText= "* Win32_PnPEntity *" ScriptBlockText= "*SELECT*" ScriptBlockText= "*WHERE*" ScriptBlockText = "*PNPClass*" ScriptBlockText IN ("*Image*", "*Camera*")
|
||||
| stats count min(_time) as firstTime max(_time) as lastTime by EventCode ScriptBlockText Computer UserID
|
||||
| `security_content_ctime(firstTime)`
|
||||
| `security_content_ctime(lastTime)`
|
||||
| `windows_gather_victim_host_information_camera_filter`'
|
||||
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
|
||||
https://docs.splunk.com/Documentation/UBA/5.0.4.1/GetDataIn/AddPowerShell#Configure_module_logging_for_PowerShell.
|
||||
known_false_positives: Administrators may execute this powershell command to get hardware information related to camera.
|
||||
references:
|
||||
- https://cert.gov.ua/article/405538
|
||||
- https://malpedia.caad.fkie.fraunhofer.de/details/win.dcrat
|
||||
- https://www.mandiant.com/resources/analyzing-dark-crystal-rat-backdoor
|
||||
tags:
|
||||
analytic_story:
|
||||
- DarkCrystal RAT
|
||||
asset_type: Endpoint
|
||||
cis20:
|
||||
- CIS 3
|
||||
- CIS 5
|
||||
- CIS 16
|
||||
confidence: 70
|
||||
context:
|
||||
- Source:Endpoint
|
||||
- Stage:Execution
|
||||
dataset:
|
||||
- https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/malware/dcrat/dcrat_enum_camera/windows-powershell-xml.log
|
||||
impact: 60
|
||||
kill_chain_phases:
|
||||
- Reconnaissance
|
||||
message: powershell script $ScriptBlockText$ to enumerate camera in $Computer$
|
||||
mitre_attack_id:
|
||||
- T1592.001
|
||||
- T1592
|
||||
nist:
|
||||
- DE.CM
|
||||
observable:
|
||||
- name: Computer
|
||||
type: Hostname
|
||||
role:
|
||||
- Victim
|
||||
- name: User
|
||||
type: User
|
||||
role:
|
||||
- Victim
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
- Splunk Cloud
|
||||
required_fields:
|
||||
- _time
|
||||
- ScriptBlockText
|
||||
- Computer
|
||||
- EventCode
|
||||
risk_score: 42
|
||||
security_domain: endpoint
|
||||
@@ -17,9 +17,9 @@ search: '`sysmon` EventCode=10 TargetImage=*lsass.exe | stats count min(_time) a
|
||||
how_to_implement: To successfully implement this search, you need to be ingesting
|
||||
logs with the process name, parent process, and command-line executions from your
|
||||
endpoints. If you are using Sysmon, you must have at least version 6.0.4 of the
|
||||
Sysmon TA. Enabling EventCode 10 TargetProcess lsass.exe is required.
|
||||
Sysmon TA. Enabling EventCode 10 TargetProcess lsass.exe is required.
|
||||
known_false_positives: False positives will occur based on GrantedAccess and SourceUser,
|
||||
filter based on source image as needed.
|
||||
filter based on source image as needed. Utilize this hunting analytic to tune out false positives in TTP or anomaly analytics.
|
||||
references:
|
||||
- https://en.wikipedia.org/wiki/Local_Security_Authority_Subsystem_Service
|
||||
- https://docs.microsoft.com/en-us/windows/win32/api/minidumpapiset/nf-minidumpapiset-minidumpwritedump
|
||||
@@ -39,8 +39,7 @@ tags:
|
||||
impact: 80
|
||||
kill_chain_phases:
|
||||
- Actions on Objectives
|
||||
message: A process, $SourceImage$, has loaded $ImageLoaded$ that are typically related
|
||||
to credential dumping on $dest$. Review for further details.
|
||||
message: A process, $SourceImage$, has requested access to LSASS on $dest$. Review for further details.
|
||||
mitre_attack_id:
|
||||
- T1003.001
|
||||
- T1003
|
||||
@@ -48,18 +47,10 @@ tags:
|
||||
- DE.AE
|
||||
- DE.CM
|
||||
observable:
|
||||
- name: user
|
||||
type: User
|
||||
role:
|
||||
- Victim
|
||||
- name: dest
|
||||
type: Hostname
|
||||
role:
|
||||
- Victim
|
||||
- name: ImageLoaded
|
||||
type: Process
|
||||
role:
|
||||
- Other
|
||||
- name: SourceImage
|
||||
type: Process
|
||||
role:
|
||||
|
||||
@@ -0,0 +1,74 @@
|
||||
name: Windows Ingress Tool Transfer Using Explorer
|
||||
id: 76753bab-f116-4ea3-8fb9-89b638be58a9
|
||||
version: 1
|
||||
date: '2022-08-01'
|
||||
author: Teoderick Contreras, Splunk
|
||||
type: Anomaly
|
||||
datamodel:
|
||||
- Endpoint
|
||||
description: The following analytic detects an explorer.exe with a possible url link process command line on it.
|
||||
Explorer.exe is known windows process that handle start menu, taskbar ,desktop and file manager.
|
||||
So many threat actor abuses this process like DCRat malware, where it tries to open the url link with the default process browser application
|
||||
in the target host by putting the url link as a parameter on explorer.exe process. This anomaly detection might be a good pivot to check
|
||||
which user and how this process was executed, what is the parent process and what is the url link. This technique is not so common way to open an url link.
|
||||
search: '| tstats `security_content_summariesonly` min(_time) as firstTime max(_time) as lastTime from datamodel=Endpoint.Processes
|
||||
where (Processes.process_name = explorer.exe OR Processes.original_file_name = explorer.exe) AND NOT (Processes.parent_process_name IN("userinit.exe", "svchost.exe")) Processes.process IN ("* http://*", "* https://*")
|
||||
by Processes.parent_process_name Processes.parent_process Processes.process_name Processes.original_file_name Processes.process Processes.process_id Processes.parent_process_id Processes.dest Processes.user
|
||||
| `drop_dm_object_name(Processes)`
|
||||
| `security_content_ctime(firstTime)`
|
||||
| `security_content_ctime(lastTime)`
|
||||
| `windows_ingress_tool_transfer_using_explorer_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: unknown
|
||||
references:
|
||||
- https://www.mandiant.com/resources/analyzing-dark-crystal-rat-backdoor
|
||||
tags:
|
||||
analytic_story:
|
||||
- DarkCrystal RAT
|
||||
asset_type: Endpoint
|
||||
cis20:
|
||||
- CIS 3
|
||||
- CIS 5
|
||||
- CIS 16
|
||||
confidence: 50
|
||||
context:
|
||||
- Source:Endpoint
|
||||
- Stage:Execution
|
||||
dataset:
|
||||
- https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/malware/dcrat/dcrat_explorer_url/sysmon.log
|
||||
impact: 50
|
||||
kill_chain_phases:
|
||||
- Exploitation
|
||||
message: a explorer process with url link $process$ in $dest$
|
||||
mitre_attack_id:
|
||||
- T1105
|
||||
nist:
|
||||
- DE.CM
|
||||
observable:
|
||||
- name: dest
|
||||
type: Hostname
|
||||
role:
|
||||
- Victim
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
- Splunk Cloud
|
||||
required_fields:
|
||||
- _time
|
||||
- Processes.dest
|
||||
- Processes.user
|
||||
- Processes.parent_process_name
|
||||
- Processes.parent_process
|
||||
- Processes.original_file_name
|
||||
- Processes.process_name
|
||||
- Processes.process
|
||||
- Processes.process_id
|
||||
- Processes.parent_process_path
|
||||
- Processes.process_path
|
||||
- Processes.parent_process_id
|
||||
risk_score: 25
|
||||
security_domain: endpoint
|
||||
@@ -1,7 +1,7 @@
|
||||
name: Windows Non-System Account Targeting Lsass
|
||||
id: b1ce9a72-73cf-11ec-981b-acde48001122
|
||||
version: 1
|
||||
date: '2022-01-12'
|
||||
version: 2
|
||||
date: '2022-07-30'
|
||||
author: Michael Haag, Splunk
|
||||
type: TTP
|
||||
datamodel: []
|
||||
@@ -10,7 +10,7 @@ description: The following analytic identifies non SYSTEM accounts requesting ac
|
||||
requiring access to credentials. Triaging this event will require understanding
|
||||
the GrantedAccess from the SourceImage. In addition, whether the account is privileged
|
||||
or not. Review the process requesting permissions and review parallel processes.
|
||||
search: '`sysmon` EventCode=10 TargetImage=*lsass.exe SourceUser!="NT AUTHORITY\\*"
|
||||
search: '`sysmon` EventCode=10 TargetImage=*lsass.exe NOT (SourceUser="NT AUTHORITY\\*")
|
||||
| stats count min(_time) as firstTime max(_time) as lastTime by Computer, TargetImage,
|
||||
GrantedAccess, SourceImage, SourceProcessId, SourceUser, TargetUser | rename Computer
|
||||
as dest | `security_content_ctime(firstTime)`| `security_content_ctime(lastTime)`
|
||||
|
||||
@@ -6,26 +6,23 @@ author: Teoderick Contreras, Splunk
|
||||
type: Anomaly
|
||||
datamodel:
|
||||
- Endpoint
|
||||
description: The following analytic identifies Windows commandlined to logoff a windows
|
||||
host machine. This technique was seen in several APT, RAT like dcrat and other commodity
|
||||
malware to shutdown the machine to add more impact, interrupt access, aid destruction
|
||||
of the system like wiping disk or inhibit system recovery. This TTP is a good pivot
|
||||
to check why application trigger this commandline which is not so common way to
|
||||
logoff a machine.
|
||||
search: '| tstats `security_content_summariesonly` values(Processes.process) as process
|
||||
min(_time) as firstTime max(_time) as lastTime from datamodel=Endpoint.Processes
|
||||
where (Processes.process_name = shutdown.exe OR Processes.original_file_name = shutdown.exe)
|
||||
Processes.process="*shutdown*" Processes.process="* /l*" Processes.process="* /t*"
|
||||
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)`
|
||||
description: The following analytic identifies Windows commandline to logoff a windows host machine.
|
||||
This technique was seen in several APT, RAT like dcrat and other commodity malware to shutdown the machine to add more impact,
|
||||
interrupt access, aid destruction of the system like wiping disk or inhibit system recovery.
|
||||
This TTP is a good pivot to check why application trigger this commandline which is not so common way to logoff a machine.
|
||||
search: '| tstats `security_content_summariesonly` values(Processes.process) as process min(_time) as firstTime max(_time) as lastTime from datamodel=Endpoint.Processes
|
||||
where (Processes.process_name = shutdown.exe OR Processes.original_file_name = shutdown.exe) Processes.process="*shutdown*" Processes.process="* /l*" Processes.process="* /t*"
|
||||
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)`
|
||||
| `windows_system_logoff_commandline_filter`'
|
||||
how_to_implement: To successfully implement this search, you need to be ingesting
|
||||
logs with the process name, parent process, and command-line executions from your
|
||||
endpoints. If you are using Sysmon, you must have at least version 6.0.4 of the
|
||||
Sysmon TA.
|
||||
known_false_positives: Administrator may execute this commandline to trigger shutdown,
|
||||
logoff or restart the host machine.
|
||||
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: Administrator may execute this commandline to trigger shutdown, logoff or restart the host machine.
|
||||
references:
|
||||
- https://attack.mitre.org/techniques/T1529/
|
||||
- https://www.mandiant.com/resources/analyzing-dark-crystal-rat-backdoor
|
||||
|
||||
@@ -6,27 +6,24 @@ author: Teoderick Contreras, Splunk
|
||||
type: Anomaly
|
||||
datamodel:
|
||||
- Endpoint
|
||||
description: The following analytic identifies Windows commandlined to reboot a windows
|
||||
host machine. This technique was seen in several APT, RAT like dcrat and other commodity
|
||||
malware to shutdown the machine to add more impact, interrupt access, aid destruction
|
||||
of the system like wiping disk or inhibit system recovery. This TTP is a good pivot
|
||||
to check why application trigger this commandline which is not so common way to
|
||||
reboot a machine. Compare to shutdown and logoff shutdown.exe feature, reboot seen
|
||||
in some automation script like ansible to reboot the machine.
|
||||
search: '| tstats `security_content_summariesonly` values(Processes.process) as process
|
||||
min(_time) as firstTime max(_time) as lastTime from datamodel=Endpoint.Processes
|
||||
where (Processes.process_name = shutdown.exe OR Processes.original_file_name = shutdown.exe)
|
||||
Processes.process="*shutdown*" Processes.process="* /r*" Processes.process="* /t*"
|
||||
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)`
|
||||
description: The following analytic identifies Windows commandline to reboot a windows host machine.
|
||||
This technique was seen in several APT, RAT like dcrat and other commodity malware to shutdown the machine to add more impact,
|
||||
interrupt access, aid destruction of the system like wiping disk or inhibit system recovery.
|
||||
This TTP is a good pivot to check why application trigger this commandline which is not so common way to reboot a machine.
|
||||
Compare to shutdown and logoff shutdown.exe feature, reboot seen in some automation script like ansible to reboot the machine.
|
||||
search: '| tstats `security_content_summariesonly` values(Processes.process) as process min(_time) as firstTime max(_time) as lastTime from datamodel=Endpoint.Processes
|
||||
where (Processes.process_name = shutdown.exe OR Processes.original_file_name = shutdown.exe) Processes.process="*shutdown*" Processes.process="* /r*" Processes.process="* /t*"
|
||||
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)`
|
||||
| `windows_system_reboot_commandline_filter`'
|
||||
how_to_implement: To successfully implement this search, you need to be ingesting
|
||||
logs with the process name, parent process, and command-line executions from your
|
||||
endpoints. If you are using Sysmon, you must have at least version 6.0.4 of the
|
||||
Sysmon TA.
|
||||
known_false_positives: Administrator may execute this commandline to trigger shutdown
|
||||
or restart the host machine.
|
||||
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: Administrator may execute this commandline to trigger shutdown or restart the host machine.
|
||||
references:
|
||||
- https://attack.mitre.org/techniques/T1529/
|
||||
- https://www.mandiant.com/resources/analyzing-dark-crystal-rat-backdoor
|
||||
|
||||
@@ -6,26 +6,23 @@ author: Teoderick Contreras, Splunk
|
||||
type: Anomaly
|
||||
datamodel:
|
||||
- Endpoint
|
||||
description: The following analytic identifies Windows commandlined to shutdown a
|
||||
windows host machine. This technique was seen in several APT, RAT like dcrat and
|
||||
other commodity malware to shutdown the machine to add more impact, interrupt access,
|
||||
aid destruction of the system like wiping disk or inhibit system recovery. This
|
||||
TTP is a good pivot to check why application trigger this commandline which is not
|
||||
so common way to shutdown a machine.
|
||||
search: '| tstats `security_content_summariesonly` values(Processes.process) as process
|
||||
min(_time) as firstTime max(_time) as lastTime from datamodel=Endpoint.Processes
|
||||
where (Processes.process_name = shutdown.exe OR Processes.original_file_name = shutdown.exe)
|
||||
Processes.process="*shutdown*" Processes.process="* /s*" Processes.process="* /t*"
|
||||
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)`
|
||||
description: The following analytic identifies Windows commandline to shutdown a windows host machine.
|
||||
This technique was seen in several APT, RAT like dcrat and other commodity malware to shutdown the machine to add more impact,
|
||||
interrupt access, aid destruction of the system like wiping disk or inhibit system recovery.
|
||||
This TTP is a good pivot to check why application trigger this commandline which is not so common way to shutdown a machine.
|
||||
search: '| tstats `security_content_summariesonly` values(Processes.process) as process min(_time) as firstTime max(_time) as lastTime from datamodel=Endpoint.Processes
|
||||
where (Processes.process_name = shutdown.exe OR Processes.original_file_name = shutdown.exe) Processes.process="*shutdown*" Processes.process="* /s*" Processes.process="* /t*"
|
||||
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)`
|
||||
| `windows_system_shutdown_commandline_filter`'
|
||||
how_to_implement: To successfully implement this search, you need to be ingesting
|
||||
logs with the process name, parent process, and command-line executions from your
|
||||
endpoints. If you are using Sysmon, you must have at least version 6.0.4 of the
|
||||
Sysmon TA.
|
||||
known_false_positives: Administrator may execute this commandline to trigger shutdown
|
||||
or restart the host machine.
|
||||
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: Administrator may execute this commandline to trigger shutdown or restart the host machine.
|
||||
references:
|
||||
- https://attack.mitre.org/techniques/T1529/
|
||||
- https://www.mandiant.com/resources/analyzing-dark-crystal-rat-backdoor
|
||||
|
||||
@@ -6,23 +6,24 @@ author: Teoderick Contreras, Splunk
|
||||
type: Anomaly
|
||||
datamodel:
|
||||
- Endpoint
|
||||
description: The following analytic identifies DCRat delay time tactics using w32tm.
|
||||
This technique was seen in DCRAT malware where it uses stripchart function of w32tm.exe
|
||||
application to delay the execution of its payload like c2 communication , beaconing
|
||||
and execution. This anomaly detection may help the analyst to check other possible
|
||||
event like the process who execute this command that may lead to DCRat attack.
|
||||
search: '| tstats `security_content_summariesonly` values(Processes.process) as process
|
||||
min(_time) as firstTime max(_time) as lastTime from datamodel=Endpoint.Processes
|
||||
where Processes.process_name = w32tm.exe Processes.process= "* /stripchart *" Processes.process=
|
||||
"* /computer:localhost *" Processes.process= "* /period:*" Processes.process= "*
|
||||
/dataonly *" Processes.process= "* /samples:*" by Processes.parent_process Processes.process_name
|
||||
Processes.original_file_name Processes.process Processes.process_id Processes.parent_process_id
|
||||
Processes.dest Processes.user | `drop_dm_object_name(Processes)` | `security_content_ctime(firstTime)`
|
||||
| `security_content_ctime(lastTime)` | `windows_system_time_discovery_w32tm_delay_filter`'
|
||||
how_to_implement: To successfully implement this search, you need to be ingesting
|
||||
logs with the process name, parent process, and command-line executions from your
|
||||
endpoints. If you are using Sysmon, you must have at least version 6.0.4 of the
|
||||
Sysmon TA. Tune and filter known instances of wermgr.exe may be used.
|
||||
description: The following analytic identifies DCRat delay time tactics using w32tm.
|
||||
This technique was seen in DCRAT malware where it uses stripchart function of w32tm.exe application to delay the execution of its payload like
|
||||
c2 communication , beaconing and execution. This anomaly detection may help the analyst to check other possible event like the process who
|
||||
execute this command that may lead to DCRat attack.
|
||||
search: '| tstats `security_content_summariesonly` values(Processes.process) as process min(_time) as firstTime max(_time) as lastTime from datamodel=Endpoint.Processes
|
||||
where Processes.process_name = w32tm.exe Processes.process= "* /stripchart *" Processes.process= "* /computer:localhost *"
|
||||
Processes.process= "* /period:*" Processes.process= "* /dataonly *" Processes.process= "* /samples:*"
|
||||
by Processes.parent_process Processes.process_name Processes.original_file_name Processes.process
|
||||
Processes.process_id Processes.parent_process_id Processes.dest Processes.user
|
||||
| `drop_dm_object_name(Processes)`
|
||||
| `security_content_ctime(firstTime)`
|
||||
| `security_content_ctime(lastTime)`
|
||||
| `windows_system_time_discovery_w32tm_delay_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: unknown
|
||||
references:
|
||||
- https://cert.gov.ua/article/405538
|
||||
|
||||
@@ -32,6 +32,7 @@ tags:
|
||||
- IcedID
|
||||
- Windows Persistence Techniques
|
||||
- Industroyer2
|
||||
- DarkCrystal RAT
|
||||
confidence: 100
|
||||
context:
|
||||
- Source:Endpoint
|
||||
|
||||
@@ -46,6 +46,7 @@ tags:
|
||||
risk_score: 42
|
||||
security_domain: endpoint
|
||||
risk_severity: low
|
||||
research_site_url: https://research.splunk.com/endpoint/63614a58-10e2-4c6c-ae81-ea1113681439/
|
||||
test:
|
||||
name: Anomalous usage of Archive Tools Unit Test
|
||||
tests:
|
||||
|
||||
@@ -55,6 +55,7 @@ tags:
|
||||
risk_score: 36
|
||||
security_domain: endpoint
|
||||
risk_severity: low
|
||||
research_site_url: https://research.splunk.com/endpoint/a0c8c292-d01a-11eb-aa18-acde48001122/
|
||||
test:
|
||||
name: Attempt To Delete Services Unit Test
|
||||
tests:
|
||||
|
||||
@@ -54,6 +54,7 @@ tags:
|
||||
risk_score: 36
|
||||
security_domain: endpoint
|
||||
risk_severity: low
|
||||
research_site_url: https://research.splunk.com/endpoint/afb31de4-d023-11eb-98d5-acde48001122/
|
||||
test:
|
||||
name: Attempt To Disable Services Unit Test
|
||||
tests:
|
||||
|
||||
@@ -50,6 +50,7 @@ tags:
|
||||
risk_score: 63
|
||||
security_domain: endpoint
|
||||
risk_severity: medium
|
||||
research_site_url: https://research.splunk.com/endpoint/14038953-e5f2-4daf-acff-5452062baf03/
|
||||
test:
|
||||
name: Attempted Credential Dump From Registry via Reg exe Unit Test
|
||||
tests:
|
||||
|
||||
@@ -47,6 +47,7 @@ tags:
|
||||
risk_score: 80
|
||||
security_domain: endpoint
|
||||
risk_severity: high
|
||||
research_site_url: https://research.splunk.com/endpoint/76d79d6e-25bb-40f6-b3b2-e0a6b7e5ea13/
|
||||
test:
|
||||
name: BCDEdit Failure Recovery Modification Unit Test
|
||||
tests:
|
||||
|
||||
@@ -54,6 +54,7 @@ tags:
|
||||
risk_score: 90
|
||||
security_domain: endpoint
|
||||
risk_severity: high
|
||||
research_site_url: https://research.splunk.com/endpoint/8f907d90-6173-11ec-9c23-acde48001122/
|
||||
test:
|
||||
name: Clear Unallocated Sector Using Cipher - SSA Unit test
|
||||
tests:
|
||||
|
||||
+1
@@ -53,6 +53,7 @@ tags:
|
||||
risk_score: 49
|
||||
security_domain: endpoint
|
||||
risk_severity: low
|
||||
research_site_url: https://research.splunk.com/endpoint/8776d79c-d26e-11eb-9a56-acde48001122/
|
||||
test:
|
||||
name: Delete A Net User Unit Test
|
||||
tests:
|
||||
|
||||
@@ -50,6 +50,7 @@ tags:
|
||||
risk_score: 35
|
||||
security_domain: endpoint
|
||||
risk_severity: low
|
||||
research_site_url: https://research.splunk.com/endpoint/b76eae28-cd25-11eb-9c92-acde48001122/
|
||||
test:
|
||||
name: Deny Permission using Cacls Utility Unit Test
|
||||
tests:
|
||||
|
||||
@@ -52,6 +52,7 @@ tags:
|
||||
risk_score: 35
|
||||
security_domain: endpoint
|
||||
risk_severity: low
|
||||
research_site_url: https://research.splunk.com/endpoint/c10a18cb-fd80-4ffa-a844-25026e0a0c94/
|
||||
test:
|
||||
name: Detect Prohibited Applications Spawning cmd exe Unit Test
|
||||
tests:
|
||||
|
||||
@@ -57,6 +57,7 @@ tags:
|
||||
risk_score: 35
|
||||
security_domain: endpoint
|
||||
risk_severity: low
|
||||
research_site_url: https://research.splunk.com/endpoint/e8b74268-5454-11ec-a799-acde48001122/
|
||||
test:
|
||||
name: Detect RClone Command-Line Usage Unit Test
|
||||
tests:
|
||||
|
||||
@@ -54,6 +54,7 @@ tags:
|
||||
risk_score: 49
|
||||
security_domain: endpoint
|
||||
risk_severity: low
|
||||
research_site_url: https://research.splunk.com/endpoint/ba858b08-d26c-11eb-af9b-acde48001122/
|
||||
test:
|
||||
name: Disable Net User Account Unit Test
|
||||
tests:
|
||||
|
||||
@@ -54,6 +54,7 @@ tags:
|
||||
risk_score: 72
|
||||
security_domain: endpoint
|
||||
risk_severity: medium
|
||||
research_site_url: https://research.splunk.com/endpoint/2452e632-9e0d-11eb-34ba-acde48001122/
|
||||
test:
|
||||
name: DNS Exfiltration Using Nslookup App Unit Test
|
||||
tests:
|
||||
|
||||
+1
@@ -46,6 +46,7 @@ tags:
|
||||
risk_score: 54
|
||||
security_domain: endpoint
|
||||
risk_severity: medium
|
||||
research_site_url: https://research.splunk.com/endpoint/f792cdc9-43ee-4429-a3c0-ffce4fed1a85/
|
||||
test:
|
||||
name: Fsutil Zeroing File Unit Test
|
||||
tests:
|
||||
|
||||
@@ -50,6 +50,7 @@ tags:
|
||||
risk_score: 35
|
||||
security_domain: endpoint
|
||||
risk_severity: low
|
||||
research_site_url: https://research.splunk.com/endpoint/c6da561a-cd29-11eb-ae65-acde48001122/
|
||||
test:
|
||||
name: Grant Permission Using Cacls Utility Unit Test
|
||||
tests:
|
||||
|
||||
@@ -47,6 +47,7 @@ tags:
|
||||
risk_score: 72
|
||||
security_domain: endpoint
|
||||
risk_severity: medium
|
||||
research_site_url: https://research.splunk.com/endpoint/028e4406-6176-11ec-aec2-acde48001122/
|
||||
test:
|
||||
name: Hiding Files And Directories With Attrib exe - SSA Unit test
|
||||
tests:
|
||||
|
||||
@@ -54,6 +54,7 @@ tags:
|
||||
risk_score: 35
|
||||
security_domain: endpoint
|
||||
risk_severity: low
|
||||
research_site_url: https://research.splunk.com/endpoint/9ae9a48a-cdbe-11eb-875a-acde48001122/
|
||||
test:
|
||||
name: Modify ACLs Permission Of Files Or Folders Unit Test
|
||||
tests:
|
||||
|
||||
@@ -53,6 +53,7 @@ tags:
|
||||
risk_score: 64
|
||||
security_domain: endpoint
|
||||
risk_severity: medium
|
||||
research_site_url: https://research.splunk.com/endpoint/dbc30554-d27e-11eb-9e5e-acde48001122/
|
||||
test:
|
||||
name: Resize Shadowstorage Volume Unit Test
|
||||
tests:
|
||||
|
||||
@@ -63,6 +63,7 @@ tags:
|
||||
risk_score: 42
|
||||
security_domain: endpoint
|
||||
risk_severity: low
|
||||
research_site_url: https://research.splunk.com/endpoint/fcc52b9a-4616-11ec-8454-acde48001122/
|
||||
test:
|
||||
name: Sdelete Application Execution Unit Test
|
||||
tests:
|
||||
|
||||
@@ -249,6 +249,7 @@ tags:
|
||||
risk_score: 56
|
||||
security_domain: endpoint
|
||||
risk_severity: medium
|
||||
research_site_url: https://research.splunk.com/endpoint/28179107-099a-464a-94d3-08301e6c055f/
|
||||
test:
|
||||
name: System Process Running from Unexpected Location Unit Test
|
||||
tests:
|
||||
|
||||
@@ -51,6 +51,7 @@ tags:
|
||||
risk_score: 15
|
||||
security_domain: endpoint
|
||||
risk_severity: low
|
||||
research_site_url: https://research.splunk.com/endpoint/71efbf52-4dbb-4c00-a520-306aa546cbb7/
|
||||
test:
|
||||
name: WBAdmin Delete System Backups Unit Test
|
||||
tests:
|
||||
|
||||
@@ -55,6 +55,7 @@ tags:
|
||||
risk_score: 63
|
||||
security_domain: endpoint
|
||||
risk_severity: medium
|
||||
research_site_url: https://research.splunk.com/endpoint/5438113c-cdd9-11eb-93b8-acde48001122/
|
||||
test:
|
||||
name: WevtUtil Usage To Clear Logs Unit Test
|
||||
tests:
|
||||
|
||||
@@ -51,6 +51,7 @@ tags:
|
||||
risk_score: 63
|
||||
security_domain: endpoint
|
||||
risk_severity: medium
|
||||
research_site_url: https://research.splunk.com/endpoint/a4bdc944-cdd9-11eb-ac97-acde48001122/
|
||||
test:
|
||||
name: Wevtutil Usage To Disable Logs Unit Test
|
||||
tests:
|
||||
|
||||
@@ -58,6 +58,7 @@ tags:
|
||||
risk_score: 56
|
||||
security_domain: endpoint
|
||||
risk_severity: medium
|
||||
research_site_url: https://research.splunk.com/endpoint/1e25e97a-8ea4-11ec-9767-acde48001122/
|
||||
test:
|
||||
name: Windows Bits Job Persistence Unit Test
|
||||
tests:
|
||||
|
||||
@@ -65,6 +65,7 @@ tags:
|
||||
risk_score: 49
|
||||
security_domain: endpoint
|
||||
risk_severity: low
|
||||
research_site_url: https://research.splunk.com/endpoint/d76e8188-8f5a-11ec-ace4-acde48001122/
|
||||
test:
|
||||
name: Windows Bitsadmin Download File Unit Test
|
||||
tests:
|
||||
|
||||
@@ -59,6 +59,7 @@ tags:
|
||||
risk_score: 40
|
||||
security_domain: endpoint
|
||||
risk_severity: low
|
||||
research_site_url: https://research.splunk.com/endpoint/b06983f4-8f72-11ec-ab50-acde48001122/
|
||||
test:
|
||||
name: Windows CertUtil Decode File Unit Test
|
||||
tests:
|
||||
|
||||
@@ -56,6 +56,7 @@ tags:
|
||||
risk_score: 90
|
||||
security_domain: endpoint
|
||||
risk_severity: high
|
||||
research_site_url: https://research.splunk.com/endpoint/8cb1ad38-8f6d-11ec-87a3-acde48001122/
|
||||
test:
|
||||
name: Windows CertUtil URLCache Download Unit Test
|
||||
tests:
|
||||
|
||||
@@ -57,6 +57,7 @@ tags:
|
||||
risk_score: 90
|
||||
security_domain: endpoint
|
||||
risk_severity: high
|
||||
research_site_url: https://research.splunk.com/endpoint/9ac29c40-8f6b-11ec-b19a-acde48001122/
|
||||
test:
|
||||
name: Windows CertUtil VerifyCtl Download Unit Test
|
||||
tests:
|
||||
|
||||
@@ -65,6 +65,7 @@ tags:
|
||||
risk_score: 80
|
||||
security_domain: endpoint
|
||||
risk_severity: high
|
||||
research_site_url: https://research.splunk.com/endpoint/cc8d046a-543b-11ec-b864-acde48001122/
|
||||
test:
|
||||
name: Windows Curl Upload to Remote Destination Unit Test
|
||||
tests:
|
||||
|
||||
@@ -45,6 +45,7 @@ tags:
|
||||
risk_score: 56
|
||||
security_domain: endpoint
|
||||
risk_severity: medium
|
||||
research_site_url: https://research.splunk.com/endpoint/c205bd2e-cd5b-4224-8510-578a2a1f83d7/
|
||||
test:
|
||||
name: Windows Defender Tools in Non Standard Path Unit Test
|
||||
tests:
|
||||
|
||||
@@ -50,6 +50,7 @@ tags:
|
||||
risk_score: 49
|
||||
security_domain: endpoint
|
||||
risk_severity: low
|
||||
research_site_url: https://research.splunk.com/endpoint/aa502688-9037-11ec-842d-acde48001122/
|
||||
test:
|
||||
name: BA Windows Diskshadow Proxy Execution Unit Test
|
||||
tests:
|
||||
|
||||
@@ -77,6 +77,7 @@ tags:
|
||||
risk_score: 49
|
||||
security_domain: endpoint
|
||||
risk_severity: low
|
||||
research_site_url: https://research.splunk.com/endpoint/21179107-099a-324a-94d3-08301e6c065f/
|
||||
test:
|
||||
name: Windows DotNet Binary in Non Standard Path Unit Test
|
||||
tests:
|
||||
|
||||
@@ -59,6 +59,7 @@ tags:
|
||||
risk_score: 80
|
||||
security_domain: endpoint
|
||||
risk_severity: high
|
||||
research_site_url: https://research.splunk.com/endpoint/66adff66-90d9-11ec-aba7-acde48001122/
|
||||
test:
|
||||
name: Windows Eventvwr UAC Bypass Unit Test
|
||||
tests:
|
||||
|
||||
@@ -88,6 +88,7 @@ tags:
|
||||
risk_score: 49
|
||||
security_domain: endpoint
|
||||
risk_severity: low
|
||||
research_site_url: https://research.splunk.com/endpoint/25689101-012a-324a-94d3-08301e6c065a/
|
||||
test:
|
||||
name: Windows LOLBin Binary in Non Standard Path Unit Test
|
||||
tests:
|
||||
|
||||
@@ -56,6 +56,7 @@ tags:
|
||||
risk_score: 80
|
||||
security_domain: endpoint
|
||||
risk_severity: high
|
||||
research_site_url: https://research.splunk.com/endpoint/f63f7e9c-9526-11ec-9fc7-acde48001122/
|
||||
test:
|
||||
name: Windows MSHTA Child Process Unit Test
|
||||
tests:
|
||||
|
||||
@@ -58,6 +58,7 @@ tags:
|
||||
risk_score: 80
|
||||
security_domain: endpoint
|
||||
risk_severity: high
|
||||
research_site_url: https://research.splunk.com/endpoint/9b35c538-94ef-11ec-9439-acde48001122/
|
||||
test:
|
||||
name: Windows MSHTA Command-Line URL Unit Test
|
||||
tests:
|
||||
|
||||
@@ -56,6 +56,7 @@ tags:
|
||||
risk_score: 80
|
||||
security_domain: endpoint
|
||||
risk_severity: high
|
||||
research_site_url: https://research.splunk.com/endpoint/24962154-9524-11ec-9333-acde48001122/
|
||||
test:
|
||||
name: Windows MSHTA Inline HTA Execution Unit Test
|
||||
tests:
|
||||
|
||||
+1
@@ -64,6 +64,7 @@ tags:
|
||||
risk_score: 35
|
||||
security_domain: endpoint
|
||||
risk_severity: low
|
||||
research_site_url: https://research.splunk.com/endpoint/477e068e-8b6d-11ec-b6c1-81af21670352/
|
||||
test:
|
||||
name: Windows Powershell Connect to Internet With Hidden Window Unit Test
|
||||
tests:
|
||||
|
||||
@@ -58,6 +58,7 @@ tags:
|
||||
risk_score: 35
|
||||
security_domain: endpoint
|
||||
risk_severity: low
|
||||
research_site_url: https://research.splunk.com/endpoint/46440222-81d5-44b1-a376-19dcd70d1b08/
|
||||
test:
|
||||
name: Windows Powershell DownloadFile Unit Test
|
||||
tests:
|
||||
|
||||
@@ -57,6 +57,7 @@ tags:
|
||||
risk_score: 49
|
||||
security_domain: endpoint
|
||||
risk_severity: low
|
||||
research_site_url: https://research.splunk.com/endpoint/0bafd086-8f61-11ec-996e-acde48001122/
|
||||
test:
|
||||
name: Windows PowerShell Start-BitsTransfer Unit Test
|
||||
tests:
|
||||
|
||||
@@ -57,6 +57,7 @@ tags:
|
||||
risk_score: 80
|
||||
security_domain: endpoint
|
||||
risk_severity: high
|
||||
research_site_url: https://research.splunk.com/endpoint/6f42b8ce-1e15-11ec-ad5a-acde48001122/
|
||||
test:
|
||||
name: Windows Rasautou DLL Execution Unit Test
|
||||
tests:
|
||||
|
||||
@@ -45,6 +45,7 @@ tags:
|
||||
risk_score: 40
|
||||
security_domain: endpoint
|
||||
risk_severity: low
|
||||
research_site_url: https://research.splunk.com/endpoint/76bb9e35-f314-4c3d-a385-83c72a13ce4e/
|
||||
test:
|
||||
name: Windows Rundll32 Comsvcs Memory Dump Unit Test
|
||||
tests:
|
||||
|
||||
@@ -59,6 +59,7 @@ tags:
|
||||
risk_score: 56
|
||||
security_domain: endpoint
|
||||
risk_severity: medium
|
||||
research_site_url: https://research.splunk.com/endpoint/0caa1dd6-94f5-11ec-9786-acde48001122/
|
||||
test:
|
||||
name: Windows Rundll32 Inline HTA Execution Unit Test
|
||||
tests:
|
||||
|
||||
@@ -56,6 +56,7 @@ tags:
|
||||
risk_score: 80
|
||||
security_domain: endpoint
|
||||
risk_severity: high
|
||||
research_site_url: https://research.splunk.com/endpoint/92886f1c-9b11-11ec-848a-acde48001122/
|
||||
test:
|
||||
name: Windows Script Host Spawn MSBuild Unit Test
|
||||
tests:
|
||||
|
||||
@@ -57,6 +57,7 @@ tags:
|
||||
risk_score: 80
|
||||
security_domain: endpoint
|
||||
risk_severity: high
|
||||
research_site_url: https://research.splunk.com/endpoint/76b3b290-9b31-11ec-a934-acde48001122/
|
||||
test:
|
||||
name: Windows WMIPrvse Spawn MSBuild Unit Test
|
||||
tests:
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
name: Linux AWK Privilege Escalation Unit Test
|
||||
tests:
|
||||
- name: Linux AWK Privilege Escalation
|
||||
file: endpoint/linux_awk_privilege_escalation.yml
|
||||
pass_condition: '| stats count | where count > 0'
|
||||
earliest_time: -24h
|
||||
latest_time: now
|
||||
attack_data:
|
||||
- file_name: sysmon_linux.log
|
||||
data: https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1548/awk/sysmon_linux.log
|
||||
source: Syslog:Linux-Sysmon/Operational
|
||||
sourcetype: sysmon_linux
|
||||
update_timestamp: true
|
||||
@@ -0,0 +1,13 @@
|
||||
name: Linux Curl Upload File Unit Test
|
||||
tests:
|
||||
- name: Linux Curl Upload File
|
||||
file: endpoint/linux_curl_upload_file.yml
|
||||
pass_condition: '| stats count | where count > 0'
|
||||
earliest_time: -24h
|
||||
latest_time: now
|
||||
attack_data:
|
||||
- file_name: curl-linux-sysmon.log
|
||||
data: https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1105/atomic_red_team/curl-linux-sysmon.log
|
||||
source: Syslog:Linux-Sysmon/Operational
|
||||
sourcetype: sysmon_linux
|
||||
update_timestamp: true
|
||||
@@ -0,0 +1,13 @@
|
||||
name: Linux Docker Privilege Escalation Unit Test
|
||||
tests:
|
||||
- name: Linux Docker Privilege Escalation
|
||||
file: endpoint/linux_docker_privilege_escalation.yml
|
||||
pass_condition: '| stats count | where count > 0'
|
||||
earliest_time: -24h
|
||||
latest_time: now
|
||||
attack_data:
|
||||
- file_name: sysmon_linux.log
|
||||
data: https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1548/docker/sysmon_linux.log
|
||||
source: Syslog:Linux-Sysmon/Operational
|
||||
sourcetype: sysmon_linux
|
||||
update_timestamp: true
|
||||
@@ -0,0 +1,13 @@
|
||||
name: Linux Ingress Tool Transfer Hunting Unit Test
|
||||
tests:
|
||||
- name: Linux Ingress Tool Transfer Hunting
|
||||
file: endpoint/linux_ingress_tool_transfer_hunting.yml
|
||||
pass_condition: '| stats count | where count > 0'
|
||||
earliest_time: -24h
|
||||
latest_time: now
|
||||
attack_data:
|
||||
- file_name: curl-linux-sysmon.log
|
||||
data: https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1105/atomic_red_team/curl-linux-sysmon.log
|
||||
source: Syslog:Linux-Sysmon/Operational
|
||||
sourcetype: sysmon_linux
|
||||
update_timestamp: true
|
||||
@@ -0,0 +1,13 @@
|
||||
name: Linux Ingress Tool Transfer With Curl Unit Test
|
||||
tests:
|
||||
- name: Linux Ingress Tool Transfer With Curl
|
||||
file: endpoint/linux_ingress_tool_transfer_with_curl.yml
|
||||
pass_condition: '| stats count | where count > 0'
|
||||
earliest_time: -24h
|
||||
latest_time: now
|
||||
attack_data:
|
||||
- file_name: curl-linux-sysmon.log
|
||||
data: https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1105/atomic_red_team/curl-linux-sysmon.log
|
||||
source: Syslog:Linux-Sysmon/Operational
|
||||
sourcetype: sysmon_linux
|
||||
update_timestamp: true
|
||||
@@ -0,0 +1,13 @@
|
||||
name: Linux Node Privilege Escalation Unit Test
|
||||
tests:
|
||||
- name: Linux Node Privilege Escalation
|
||||
file: endpoint/linux_node_privilege_escalation.yml
|
||||
pass_condition: '| stats count | where count > 0'
|
||||
earliest_time: -24h
|
||||
latest_time: now
|
||||
attack_data:
|
||||
- file_name: sysmon_linux.log
|
||||
data: https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1548/node/sysmon_linux.log
|
||||
source: Syslog:Linux-Sysmon/Operational
|
||||
sourcetype: sysmon_linux
|
||||
update_timestamp: true
|
||||
@@ -0,0 +1,13 @@
|
||||
name: Linux Proxy Socks Curl Unit Test
|
||||
tests:
|
||||
- name: Linux Proxy Socks Curl
|
||||
file: endpoint/linux_proxy_socks_curl.yml
|
||||
pass_condition: '| stats count | where count > 0'
|
||||
earliest_time: -24h
|
||||
latest_time: now
|
||||
attack_data:
|
||||
- file_name: curl-linux-sysmon.log
|
||||
data: https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1105/atomic_red_team/curl-linux-sysmon.log
|
||||
source: Syslog:Linux-Sysmon/Operational
|
||||
sourcetype: sysmon_linux
|
||||
update_timestamp: true
|
||||
@@ -0,0 +1,13 @@
|
||||
name: Windows DLL Search Order Hijacking with iscsicpl Unit Test
|
||||
tests:
|
||||
- name: Windows DLL Search Order Hijacking with iscsicpl
|
||||
file: endpoint/windows_dll_search_order_hijacking_with_iscsicpl.yml
|
||||
pass_condition: '| stats count | where count > 0'
|
||||
earliest_time: -24h
|
||||
latest_time: now
|
||||
attack_data:
|
||||
- file_name: iscsicpl-windows-sysmon.log
|
||||
data: https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1574.001/iscsicpl/iscsicpl-windows-sysmon.log
|
||||
source: XmlWinEventLog:Microsoft-Windows-Sysmon/Operational
|
||||
sourcetype: xmlwineventlog
|
||||
update_timestamp: true
|
||||
@@ -0,0 +1,13 @@
|
||||
name: Windows Gather Victim Host Information Camera Unit Test
|
||||
tests:
|
||||
- name: Windows Gather Victim Host Information Camera
|
||||
file: endpoint/windows_gather_victim_host_information_camera.yml
|
||||
pass_condition: '| stats count | where count > 0'
|
||||
earliest_time: -24h
|
||||
latest_time: now
|
||||
attack_data:
|
||||
- file_name: windows-powershell-xml.log
|
||||
data: https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/malware/dcrat/dcrat_enum_camera/windows-powershell-xml.log
|
||||
source: XmlWinEventLog:Microsoft-Windows-PowerShell/Operational
|
||||
sourcetype: xmlwineventlog
|
||||
update_timestamp: true
|
||||
@@ -0,0 +1,13 @@
|
||||
name: Windows Ingress Tool Transfer Using Explorer Unit Test
|
||||
tests:
|
||||
- name: Windows Ingress Tool Transfer Using Explorer
|
||||
file: endpoint/windows_ingress_tool_transfer_using_explorer.yml
|
||||
pass_condition: '| stats count | where count > 0'
|
||||
earliest_time: -24h
|
||||
latest_time: now
|
||||
attack_data:
|
||||
- file_name: sysmon.log
|
||||
data: https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/malware/dcrat/dcrat_explorer_url/sysmon.log
|
||||
source: XmlWinEventLog:Microsoft-Windows-Sysmon/Operational
|
||||
sourcetype: xmlwineventlog
|
||||
update_timestamp: true
|
||||
Reference in New Issue
Block a user