mirror of
https://github.com/splunk/security_content
synced 2026-06-08 17:32:49 +00:00
Branch was auto-updated.
This commit is contained in:
@@ -1,21 +1,22 @@
|
||||
author: Rod Soto, Splunk
|
||||
datamodel: []
|
||||
name: Amazon EKS Kubernetes activity by src ip
|
||||
id: a636cca4-7434-4a15-a278-c70734938e39
|
||||
version: 1
|
||||
date: '2020-04-13'
|
||||
author: Rod Soto, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search provides investigation data about requests via user agent,
|
||||
authentication request URI, verb and cluster name data against Kubernetes cluster
|
||||
from a specific IP address
|
||||
search: '`aws_cloudwatchlogs_eks` |rename sourceIPs{} as src_ip |search src_ip=$src_ip$
|
||||
| stats count min(_time) as firstTime max(_time) as lastTime values(user.username)
|
||||
values(requestURI) values(verb) values(userAgent) by source annotations.authorization.k8s.io/decision
|
||||
src_ip'
|
||||
how_to_implement: You must install the AWS App for Splunk (version 5.1.0 or later)
|
||||
and Splunk Add-on for AWS (version 4.4.0 or later), then configure your Cloud Watch
|
||||
EKS inputs.
|
||||
id: a636cca4-7434-4a15-a278-c70734938e39
|
||||
inputs:
|
||||
- src_ip
|
||||
known_false_positives: ''
|
||||
name: Amazon EKS Kubernetes activity by src ip
|
||||
search: '`aws_cloudwatchlogs_eks` |rename sourceIPs{} as src_ip |search
|
||||
src_ip=$src_ip$ | stats count min(_time) as firstTime max(_time) as lastTime values(user.username)
|
||||
values(requestURI) values(verb) values(userAgent) by source annotations.authorization.k8s.io/decision
|
||||
src_ip'
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Kubernetes Scanning Activity
|
||||
@@ -31,5 +32,3 @@ tags:
|
||||
- userAgent
|
||||
- annotations.authorization.k8s.io/decision
|
||||
security_domain: network
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -5,16 +5,17 @@ date: '2021-08-17'
|
||||
author: Patrick Bareiss, Splunk
|
||||
type: TTP
|
||||
datamodel: []
|
||||
description: This search looks for AWS CloudTrail events from AWS Elastic Container Service (ECR).
|
||||
You need to activate image scanning in order to get the event DescribeImageScanFindings with the results.
|
||||
search: '`cloudtrail` eventSource=ecr.amazonaws.com eventName=DescribeImageScanFindings
|
||||
| spath path=responseElements.imageScanFindings.findings{} output=findings
|
||||
| mvexpand findings | spath input=findings| search severity=HIGH
|
||||
| rename name as finding_name, description as finding_description,
|
||||
requestParameters.imageId.imageDigest as imageDigest, requestParameters.repositoryName as repositoryName
|
||||
| eval finding = finding_name.", ".finding_description
|
||||
| stats min(_time) as firstTime max(_time) as lastTime by awsRegion, eventName, eventSource, imageDigest, repositoryName, user, userName, src_ip, finding
|
||||
| `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)`
|
||||
description: This search looks for AWS CloudTrail events from AWS Elastic Container
|
||||
Service (ECR). You need to activate image scanning in order to get the event DescribeImageScanFindings
|
||||
with the results.
|
||||
search: '`cloudtrail` eventSource=ecr.amazonaws.com eventName=DescribeImageScanFindings
|
||||
| spath path=responseElements.imageScanFindings.findings{} output=findings | mvexpand
|
||||
findings | spath input=findings| search severity=HIGH | rename name as finding_name,
|
||||
description as finding_description, requestParameters.imageId.imageDigest as imageDigest,
|
||||
requestParameters.repositoryName as repositoryName | eval finding = finding_name.",
|
||||
".finding_description | stats min(_time) as firstTime max(_time) as lastTime by
|
||||
awsRegion, eventName, eventSource, imageDigest, repositoryName, user, userName,
|
||||
src_ip, finding | `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)`
|
||||
| `aws_ecr_container_scanning_findings_high_filter`'
|
||||
how_to_implement: You must install splunk AWS add on and Splunk App for AWS. This
|
||||
search works with AWS CloudTrail logs.
|
||||
|
||||
+11
-10
@@ -5,16 +5,17 @@ date: '2021-08-17'
|
||||
author: Patrick Bareiss, Splunk
|
||||
type: Hunting
|
||||
datamodel: []
|
||||
description: This search looks for AWS CloudTrail events from AWS Elastic Container Service (ECR).
|
||||
You need to activate image scanning in order to get the event DescribeImageScanFindings with the results.
|
||||
search: '`cloudtrail` eventSource=ecr.amazonaws.com eventName=DescribeImageScanFindings
|
||||
| spath path=responseElements.imageScanFindings.findings{} output=findings
|
||||
| mvexpand findings | spath input=findings| search severity IN (LOW, INFORMATIONAL, UNKNWON)
|
||||
| rename name as finding_name, description as finding_description,
|
||||
requestParameters.imageId.imageDigest as imageDigest, requestParameters.repositoryName as repositoryName
|
||||
| eval finding = finding_name.", ".finding_description
|
||||
| stats min(_time) as firstTime max(_time) as lastTime by awsRegion, eventName, eventSource, imageDigest, repositoryName, user, userName, src_ip, finding
|
||||
| `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)`
|
||||
description: This search looks for AWS CloudTrail events from AWS Elastic Container
|
||||
Service (ECR). You need to activate image scanning in order to get the event DescribeImageScanFindings
|
||||
with the results.
|
||||
search: '`cloudtrail` eventSource=ecr.amazonaws.com eventName=DescribeImageScanFindings
|
||||
| spath path=responseElements.imageScanFindings.findings{} output=findings | mvexpand
|
||||
findings | spath input=findings| search severity IN (LOW, INFORMATIONAL, UNKNWON)
|
||||
| rename name as finding_name, description as finding_description, requestParameters.imageId.imageDigest
|
||||
as imageDigest, requestParameters.repositoryName as repositoryName | eval finding
|
||||
= finding_name.", ".finding_description | stats min(_time) as firstTime max(_time)
|
||||
as lastTime by awsRegion, eventName, eventSource, imageDigest, repositoryName, user,
|
||||
userName, src_ip, finding | `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)`
|
||||
| `aws_ecr_container_scanning_findings_low_informational_unknown_filter`'
|
||||
how_to_implement: You must install splunk AWS add on and Splunk App for AWS. This
|
||||
search works with AWS CloudTrail logs.
|
||||
|
||||
@@ -5,16 +5,17 @@ date: '2021-08-17'
|
||||
author: Patrick Bareiss, Splunk
|
||||
type: Anomaly
|
||||
datamodel: []
|
||||
description: This search looks for AWS CloudTrail events from AWS Elastic Container Service (ECR).
|
||||
You need to activate image scanning in order to get the event DescribeImageScanFindings with the results.
|
||||
search: '`cloudtrail` eventSource=ecr.amazonaws.com eventName=DescribeImageScanFindings
|
||||
| spath path=responseElements.imageScanFindings.findings{} output=findings
|
||||
| mvexpand findings | spath input=findings| search severity=MEDIUM
|
||||
| rename name as finding_name, description as finding_description,
|
||||
requestParameters.imageId.imageDigest as imageDigest, requestParameters.repositoryName as repositoryName
|
||||
| eval finding = finding_name.", ".finding_description
|
||||
| stats min(_time) as firstTime max(_time) as lastTime by awsRegion, eventName, eventSource, imageDigest, repositoryName, user, userName, src_ip, finding
|
||||
| `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)`
|
||||
description: This search looks for AWS CloudTrail events from AWS Elastic Container
|
||||
Service (ECR). You need to activate image scanning in order to get the event DescribeImageScanFindings
|
||||
with the results.
|
||||
search: '`cloudtrail` eventSource=ecr.amazonaws.com eventName=DescribeImageScanFindings
|
||||
| spath path=responseElements.imageScanFindings.findings{} output=findings | mvexpand
|
||||
findings | spath input=findings| search severity=MEDIUM | rename name as finding_name,
|
||||
description as finding_description, requestParameters.imageId.imageDigest as imageDigest,
|
||||
requestParameters.repositoryName as repositoryName | eval finding = finding_name.",
|
||||
".finding_description | stats min(_time) as firstTime max(_time) as lastTime by
|
||||
awsRegion, eventName, eventSource, imageDigest, repositoryName, user, userName,
|
||||
src_ip, finding | `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)`
|
||||
| `aws_ecr_container_scanning_findings_medium_filter`'
|
||||
how_to_implement: You must install splunk AWS add on and Splunk App for AWS. This
|
||||
search works with AWS CloudTrail logs.
|
||||
|
||||
@@ -1,21 +1,22 @@
|
||||
author: Bhavin Patel, Splunk
|
||||
datamodel: []
|
||||
name: AWS Investigate Security Hub alerts by dest
|
||||
id: b0d2e6a8-75fa-4b1b-9486-3d32acadf822
|
||||
version: 1
|
||||
date: '2020-06-08'
|
||||
author: Bhavin Patel, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search retrieves the all the alerts created by AWS Security Hub
|
||||
for a specific dest(instance_id).
|
||||
how_to_implement: You must install the AWS App for Splunk (version 5.1.0 or later)
|
||||
and Splunk Add-on for AWS (version 4.4.0 or later), then configure your CloudTrail
|
||||
inputs.
|
||||
id: b0d2e6a8-75fa-4b1b-9486-3d32acadf822
|
||||
inputs:
|
||||
- dest
|
||||
known_false_positives: ''
|
||||
name: AWS Investigate Security Hub alerts by dest
|
||||
search: '`aws_securityhub_firehose` "findings{}.Resources{}.Type"=AWSEC2Instance
|
||||
| rex field=findings{}.Resources{}.Id .*instance/(?<instance>.*)| rename instance
|
||||
search: '`aws_securityhub_firehose` "findings{}.Resources{}.Type"=AWSEC2Instance |
|
||||
rex field=findings{}.Resources{}.Id .*instance/(?<instance>.*)| rename instance
|
||||
as dest| search dest = $dest$ |rename findings{}.* as * | rename Remediation.Recommendation.Text
|
||||
as Remediation | table dest Title ProductArn Description FirstObservedAt RecordState
|
||||
Remediation'
|
||||
how_to_implement: You must install the AWS App for Splunk (version 5.1.0 or later)
|
||||
and Splunk Add-on for AWS (version 4.4.0 or later), then configure your CloudTrail
|
||||
inputs.
|
||||
known_false_positives: ''
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Cloud Compute Instance
|
||||
@@ -37,5 +38,3 @@ tags:
|
||||
- FirstObservedAt
|
||||
- RecordState
|
||||
security_domain: network
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -1,20 +1,20 @@
|
||||
author: David Dorsey, Splunk
|
||||
datamodel: []
|
||||
name: AWS Investigate User Activities By AccessKeyId
|
||||
id: 703b65a4-a0ae-4171-965d-45507506c64f
|
||||
version: 1
|
||||
date: '2018-06-08'
|
||||
author: David Dorsey, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search retrieves the times, ARN, source IPs, AWS regions, event
|
||||
names, and the result of the event for specific credentials.
|
||||
search: '`cloudtrail` | rename userIdentity.accessKeyId as accessKeyId| search accessKeyId=$accessKeyId$
|
||||
| spath output=user path=userIdentity.arn | rename sourceIPAddress as src_ip |
|
||||
table _time, user, src_ip, awsRegion, eventName, errorCode, errorMessage'
|
||||
how_to_implement: You must install the AWS App for Splunk (version 5.1.0 or later)
|
||||
and Splunk Add-on for AWS (version 4.4.0 or later), then configure your CloudTrail
|
||||
inputs.
|
||||
id: 703b65a4-a0ae-4171-965d-45507506c64f
|
||||
inputs:
|
||||
- accessKeyId
|
||||
known_false_positives: ''
|
||||
name: AWS Investigate User Activities By AccessKeyId
|
||||
search: '`cloudtrail` | rename userIdentity.accessKeyId as accessKeyId|
|
||||
search accessKeyId=$accessKeyId$ | spath output=user path=userIdentity.arn | rename
|
||||
sourceIPAddress as src_ip | table _time, user, src_ip, awsRegion, eventName, errorCode,
|
||||
errorMessage'
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- AWS Cross Account Activity
|
||||
@@ -32,5 +32,3 @@ tags:
|
||||
- errorCode
|
||||
- errorMessage
|
||||
security_domain: network
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -1,20 +1,21 @@
|
||||
author: Bhavin Patel, Splunk
|
||||
datamodel: []
|
||||
name: AWS Investigate User Activities By ARN
|
||||
id: bc91a8cd-35e7-4bb2-6140-e756cc46fd72
|
||||
version: 2
|
||||
date: '2019-04-30'
|
||||
author: Bhavin Patel, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search lists all the logged CloudTrail activities by a specific
|
||||
user ARN and will create a table containing the source of the user, the region of
|
||||
the activity, the name and type of the event, the action taken, and all the user's
|
||||
identity information.
|
||||
search: '`cloudtrail` | search user=$user$| table _time userIdentity.type userIdentity.userName
|
||||
userIdentity.arn aws_account_id src awsRegion eventName eventType'
|
||||
how_to_implement: You must install the AWS App for Splunk (version 5.1.0 or later)
|
||||
and Splunk Add-on for AWS (version 4.4.0 or later), then configure your CloudTrail
|
||||
inputs.
|
||||
id: bc91a8cd-35e7-4bb2-6140-e756cc46fd72
|
||||
inputs:
|
||||
- user
|
||||
known_false_positives: ''
|
||||
name: AWS Investigate User Activities By ARN
|
||||
search: '`cloudtrail` | search user=$user$| table _time userIdentity.type
|
||||
userIdentity.userName userIdentity.arn aws_account_id src awsRegion eventName eventType'
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- AWS Cryptomining
|
||||
@@ -45,5 +46,3 @@ tags:
|
||||
- eventName
|
||||
- eventType
|
||||
security_domain: network
|
||||
type: Investigation
|
||||
version: 2
|
||||
|
||||
@@ -1,18 +1,19 @@
|
||||
author: Bhavin Patel, Splunk
|
||||
datamodel: []
|
||||
name: AWS Network ACL Details from ID
|
||||
id: f3fb4d1b-5f33-4b01-b541-c7ah9534c242
|
||||
version: 1
|
||||
date: '2017-01-22'
|
||||
author: Bhavin Patel, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search queries AWS description logs and returns all the information
|
||||
about a specific network ACL via network ACL ID
|
||||
search: '`aws_description` | rename id as networkAclId | search networkAclId=$networkAclId$
|
||||
| table id account_id vpc_id network_acl_entries{}.*'
|
||||
how_to_implement: In order to implement this search, you must install the AWS App
|
||||
for Splunk (version 5.1.0 or later) and Splunk Add-on for AWS(version 4.4.0 or later)
|
||||
and configure your AWS description inputs.
|
||||
id: f3fb4d1b-5f33-4b01-b541-c7ah9534c242
|
||||
inputs:
|
||||
- networkAclId
|
||||
known_false_positives: ''
|
||||
name: AWS Network ACL Details from ID
|
||||
search: '`aws_description` | rename id as networkAclId | search networkAclId=$networkAclId$
|
||||
| table id account_id vpc_id network_acl_entries{}.*'
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- AWS Network ACL Activity
|
||||
@@ -28,5 +29,3 @@ tags:
|
||||
- vpc_id
|
||||
- network_acl_entries{}.*
|
||||
security_domain: network
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -1,21 +1,22 @@
|
||||
author: Bhavin Patel, Splunk
|
||||
datamodel: []
|
||||
name: AWS Network Interface details via resourceId
|
||||
id: f3fb4d1c-5f33-4b01-b541-c3ah9534c241
|
||||
version: 1
|
||||
date: '2018-05-07'
|
||||
author: Bhavin Patel, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search queries AWS configuration logs and returns the information
|
||||
about a specific network interface via network interface ID. The information will
|
||||
include the ARN of the network interface, its relationships with other AWS resources,
|
||||
the public and the private IP associated with the network interface.
|
||||
search: '`aws_config` resourceId=$resourceId$ | table _time ARN relationships{}.resourceType
|
||||
relationships{}.name relationships{}.resourceId configuration.privateIpAddresses{}.privateIpAddress
|
||||
configuration.privateIpAddresses{}.association.publicIp'
|
||||
how_to_implement: In order to implement this search, you must install the AWS App
|
||||
for Splunk (version 5.1.0 or later) and Splunk Add-on for AWS(version 4.4.0 or later)
|
||||
and configure your AWS configuration inputs
|
||||
id: f3fb4d1c-5f33-4b01-b541-c3ah9534c241
|
||||
inputs:
|
||||
- resourceId
|
||||
known_false_positives: ''
|
||||
name: AWS Network Interface details via resourceId
|
||||
search: '`aws_config` resourceId=$resourceId$ | table _time ARN
|
||||
relationships{}.resourceType relationships{}.name relationships{}.resourceId configuration.privateIpAddresses{}.privateIpAddress
|
||||
configuration.privateIpAddresses{}.association.publicIp'
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- AWS Network ACL Activity
|
||||
@@ -34,5 +35,3 @@ tags:
|
||||
- configuration.privateIpAddresses{}.privateIpAddress
|
||||
- configuration.privateIpAddresses{}.association.publicIp
|
||||
security_domain: network
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
author: Bhavin Patel, Splunk
|
||||
datamodel: []
|
||||
name: AWS S3 Bucket details via bucketName
|
||||
id: f3fb2q1c-5f33-4b01-b541-c2ah9534c242
|
||||
version: 1
|
||||
date: '2018-06-26'
|
||||
author: Bhavin Patel, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search queries AWS configuration logs and returns the information
|
||||
about a specific S3 bucket. The information returned includes the time the S3 bucket
|
||||
was created, the resource ID, the region it belongs to, the value of action performed,
|
||||
AWS account ID, and configuration values of the access-control lists associated
|
||||
with the bucket.
|
||||
search: '`aws_config` | rename resourceId as bucketName |search bucketName=$bucketName$
|
||||
| table resourceCreationTime bucketName vendor_region action aws_account_id supplementaryConfiguration.AccessControlList'
|
||||
how_to_implement: To implement this search, you must install the AWS App for Splunk
|
||||
(version 5.1.0 or later) and Splunk Add-on for AWS (version 4.4.0 or later) and
|
||||
configure your AWS inputs.
|
||||
id: f3fb2q1c-5f33-4b01-b541-c2ah9534c242
|
||||
inputs:
|
||||
- bucketName
|
||||
known_false_positives: ''
|
||||
name: AWS S3 Bucket details via bucketName
|
||||
search: '`aws_config` | rename resourceId as bucketName |search
|
||||
bucketName=$bucketName$ | table resourceCreationTime bucketName vendor_region action
|
||||
aws_account_id supplementaryConfiguration.AccessControlList'
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Suspicious AWS S3 Activities
|
||||
@@ -33,5 +33,3 @@ tags:
|
||||
- aws_account_id
|
||||
- supplementaryConfiguration.AccessControlList
|
||||
security_domain: network
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -22,10 +22,10 @@ references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- AWS User Monitoring
|
||||
detections:
|
||||
- Detect Spike in AWS API Activity
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
detections:
|
||||
- Detect Spike in AWS API Activity
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
|
||||
@@ -28,10 +28,10 @@ tags:
|
||||
- AWS Network ACL Activity
|
||||
- Command and Control
|
||||
- Suspicious AWS Traffic
|
||||
detections:
|
||||
- Detect Spike in blocked Outbound Traffic from your AWS
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
detections:
|
||||
- Detect Spike in blocked Outbound Traffic from your AWS
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
@@ -41,4 +41,4 @@ tags:
|
||||
- action
|
||||
- src_ip
|
||||
- dest_ip
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -47,4 +47,4 @@ tags:
|
||||
- _time
|
||||
- All_Changes.user
|
||||
- All_Changes.status
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -51,4 +51,4 @@ tags:
|
||||
- All_Changes.action
|
||||
- All_Changes.status
|
||||
- All_Changes.object_category
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -51,4 +51,4 @@ tags:
|
||||
- All_Changes.action
|
||||
- All_Changes.status
|
||||
- All_Changes.object_category
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -47,4 +47,4 @@ tags:
|
||||
- All_Changes.user
|
||||
- All_Changes.status
|
||||
- All_Changes.object_category
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -33,10 +33,10 @@ tags:
|
||||
analytic_story:
|
||||
- AWS Cryptomining
|
||||
- Suspicious AWS EC2 Activities
|
||||
detections:
|
||||
- Abnormally High AWS Instances Launched by User - MLTK
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
detections:
|
||||
- Abnormally High AWS Instances Launched by User - MLTK
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
@@ -46,4 +46,4 @@ tags:
|
||||
- eventName
|
||||
- errorCode
|
||||
- src_user
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -33,10 +33,10 @@ references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Suspicious AWS EC2 Activities
|
||||
detections:
|
||||
- Abnormally High AWS Instances Terminated by User - MLTK
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
detections:
|
||||
- Abnormally High AWS Instances Terminated by User - MLTK
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
@@ -46,4 +46,4 @@ tags:
|
||||
- eventName
|
||||
- errorCode
|
||||
- src_user
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -23,10 +23,10 @@ references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- AWS Network ACL Activity
|
||||
detections:
|
||||
- Detect Spike in Network ACL Activity
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
detections:
|
||||
- Detect Spike in Network ACL Activity
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
@@ -34,4 +34,4 @@ tags:
|
||||
required_fields:
|
||||
- _time
|
||||
- userIdentity.arn
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -22,10 +22,10 @@ references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Suspicious AWS S3 Activities
|
||||
detections:
|
||||
- Detect Spike in S3 Bucket deletion
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
detections:
|
||||
- Detect Spike in S3 Bucket deletion
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
@@ -33,4 +33,4 @@ tags:
|
||||
required_fields:
|
||||
- _time
|
||||
- userIdentity.arn
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -23,10 +23,10 @@ references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- AWS User Monitoring
|
||||
detections:
|
||||
- Detect Spike in Security Group Activity
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
detections:
|
||||
- Detect Spike in Security Group Activity
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
@@ -34,4 +34,4 @@ tags:
|
||||
required_fields:
|
||||
- _time
|
||||
- userIdentity.arn
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -21,10 +21,10 @@ references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- AWS User Monitoring
|
||||
detections:
|
||||
- Detect AWS API Activities From Unapproved Accounts
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
detections:
|
||||
- Detect AWS API Activities From Unapproved Accounts
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
@@ -33,4 +33,4 @@ tags:
|
||||
- _time
|
||||
- errorCode
|
||||
- userName
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -1,18 +1,13 @@
|
||||
author: Rod Soto, Splunk
|
||||
datamodel: []
|
||||
name: GCP Kubernetes activity by src ip
|
||||
id: c00e7626-92cc-4e06-9a51-b6db0a50bd1f
|
||||
version: 1
|
||||
date: '2020-04-13'
|
||||
author: Rod Soto, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search provides investigation data about requests via user agent,
|
||||
authentication request URI, resource path and cluster name data against Kubernetes
|
||||
cluster from a specific IP address
|
||||
how_to_implement: You must install the GCP App for Splunk (version 2.0.0 or later),
|
||||
then configure stackdriver and set a Pub/Sub subscription to be imported to Splunk.
|
||||
You must also install Cloud Infrastructure data model.Customize the macro kubernetes_gcp_scan_fingerprint_attack_detection
|
||||
to filter out FPs.
|
||||
id: c00e7626-92cc-4e06-9a51-b6db0a50bd1f
|
||||
inputs:
|
||||
- src_ip
|
||||
known_false_positives: ''
|
||||
name: GCP Kubernetes activity by src ip
|
||||
search: '`google_gcp_pubsub_message` | rename data.protoPayload.requestMetadata.callerIp
|
||||
as src_ip | search src_ip =$src_ip$ | stats count min(_time) as firstTime max(_time)
|
||||
as lastTime values(data.protoPayload.methodName) as method_names values(data.protoPayload.resourceName)
|
||||
@@ -20,6 +15,12 @@ search: '`google_gcp_pubsub_message` | rename data.protoPayload.requestMetadata.
|
||||
as http_user_agent values(data.protoPayload.authenticationInfo.principalEmail) as
|
||||
user values(data.protoPayload.status.message) by src_ip data.resource.labels.cluster_name
|
||||
data.resource.type'
|
||||
how_to_implement: You must install the GCP App for Splunk (version 2.0.0 or later),
|
||||
then configure stackdriver and set a Pub/Sub subscription to be imported to Splunk.
|
||||
You must also install Cloud Infrastructure data model.Customize the macro kubernetes_gcp_scan_fingerprint_attack_detection
|
||||
to filter out FPs.
|
||||
known_false_positives: ''
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Kubernetes Scanning Activity
|
||||
@@ -36,5 +37,3 @@ tags:
|
||||
- data.resource.labels.cluster_name
|
||||
- data.resource.type
|
||||
security_domain: network
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -1,23 +1,23 @@
|
||||
author: David Dorsey, Splunk
|
||||
datamodel: []
|
||||
name: Get All AWS Activity From City
|
||||
id: 0abeeb40-1255-4b68-91d1-7a7eb410c4b8
|
||||
version: 1
|
||||
date: '2018-03-19'
|
||||
author: David Dorsey, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search retrieves all the activity from a specific city and will
|
||||
create a table containing the time, city, ARN, username, the type of user, the source
|
||||
IP address, the AWS region the activity was in, the API called, and whether or not
|
||||
the API call was successful.
|
||||
search: '`cloudtrail` | iplocation sourceIPAddress | search City=$City$ | spath output=user
|
||||
path=userIdentity.arn | spath output=awsUserName path=userIdentity.userName | spath
|
||||
output=userType path=userIdentity.type | rename sourceIPAddress as src_ip | table
|
||||
_time, City, user, userName, userType, src_ip, awsRegion, eventName, errorCode'
|
||||
how_to_implement: You must install the AWS App for Splunk (version 5.1.0 or later)
|
||||
and Splunk Add-on for AWS (version 4.4.0 or later), then configure your CloudTrail
|
||||
inputs.
|
||||
id: 0abeeb40-1255-4b68-91d1-7a7eb410c4b8
|
||||
inputs:
|
||||
- City
|
||||
known_false_positives: ''
|
||||
name: Get All AWS Activity From City
|
||||
search: '`cloudtrail` | iplocation sourceIPAddress | search
|
||||
City=$City$ | spath output=user path=userIdentity.arn | spath output=awsUserName
|
||||
path=userIdentity.userName | spath output=userType path=userIdentity.type | rename
|
||||
sourceIPAddress as src_ip | table _time, City, user, userName, userType, src_ip,
|
||||
awsRegion, eventName, errorCode'
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- AWS Suspicious Provisioning Activities
|
||||
@@ -34,5 +34,3 @@ tags:
|
||||
- eventName
|
||||
- errorCode
|
||||
security_domain: network
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -1,23 +1,24 @@
|
||||
author: David Dorsey, Splunk
|
||||
datamodel: []
|
||||
name: Get All AWS Activity From Country
|
||||
id: e763cdb9-00da-41e0-9bda-444debc9501a
|
||||
version: 1
|
||||
date: '2018-03-19'
|
||||
author: David Dorsey, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search retrieves all the activity from a specific country and will
|
||||
create a table containing the time, country, ARN, username, the type of user, the
|
||||
source IP address, the AWS region the activity was in, the API called, and whether
|
||||
or not the API call was successful.
|
||||
search: '`cloudtrail` | iplocation sourceIPAddress | search Country=$Country$ | spath
|
||||
output=user path=userIdentity.arn | spath output=awsUserName path=userIdentity.userName
|
||||
| spath output=userType path=userIdentity.type | rename sourceIPAddress as src_ip
|
||||
| table _time, Country, user, userName, userType, src_ip, awsRegion, eventName,
|
||||
errorCode'
|
||||
how_to_implement: You must install the AWS App for Splunk (version 5.1.0 or later)
|
||||
and Splunk Add-on for AWS (version 4.4.0 or later), then configure your CloudTrail
|
||||
inputs.
|
||||
id: e763cdb9-00da-41e0-9bda-444debc9501a
|
||||
inputs:
|
||||
- Country
|
||||
known_false_positives: ''
|
||||
name: Get All AWS Activity From Country
|
||||
search: '`cloudtrail` | iplocation sourceIPAddress | search
|
||||
Country=$Country$ | spath output=user path=userIdentity.arn | spath output=awsUserName
|
||||
path=userIdentity.userName | spath output=userType path=userIdentity.type | rename
|
||||
sourceIPAddress as src_ip | table _time, Country, user, userName, userType, src_ip,
|
||||
awsRegion, eventName, errorCode'
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- AWS Suspicious Provisioning Activities
|
||||
@@ -34,5 +35,3 @@ tags:
|
||||
- eventName
|
||||
- errorCode
|
||||
security_domain: network
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -1,23 +1,23 @@
|
||||
author: David Dorsey, Splunk
|
||||
datamodel: []
|
||||
name: Get All AWS Activity From IP Address
|
||||
id: 446ec87a-85c6-40d4-b060-bea4498281d6
|
||||
version: 1
|
||||
date: '2018-03-19'
|
||||
author: David Dorsey, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search retrieves all the activity from a specific IP address and
|
||||
will create a table containing the time, ARN, username, the type of user, the IP
|
||||
address, the AWS region the activity was in, the API called, and whether or not
|
||||
the API call was successful.
|
||||
search: '`cloudtrail` | iplocation sourceIPAddress | search src_ip=$src_ip$ | spath
|
||||
output=user path=userIdentity.arn | spath output=awsUserName path=userIdentity.userName
|
||||
| spath output=userType path=userIdentity.type | rename sourceIPAddress as src_ip
|
||||
| table _time, user, userName, userType, src_ip, awsRegion, eventName, errorCode'
|
||||
how_to_implement: You must install the AWS App for Splunk (version 5.1.0 or later)
|
||||
and Splunk Add-on for AWS (version 4.4.0 or later), then configure your CloudTrail
|
||||
inputs.
|
||||
id: 446ec87a-85c6-40d4-b060-bea4498281d6
|
||||
inputs:
|
||||
- src_ip
|
||||
known_false_positives: ''
|
||||
name: Get All AWS Activity From IP Address
|
||||
search: '`cloudtrail` | iplocation sourceIPAddress | search
|
||||
src_ip=$src_ip$ | spath output=user path=userIdentity.arn | spath output=awsUserName
|
||||
path=userIdentity.userName | spath output=userType path=userIdentity.type | rename
|
||||
sourceIPAddress as src_ip | table _time, user, userName, userType, src_ip, awsRegion,
|
||||
eventName, errorCode'
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- AWS Network ACL Activity
|
||||
@@ -39,5 +39,3 @@ tags:
|
||||
- eventName
|
||||
- errorCode
|
||||
security_domain: network
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -1,23 +1,23 @@
|
||||
author: David Dorsey, Splunk
|
||||
datamodel: []
|
||||
name: Get All AWS Activity From Region
|
||||
id: 5b794bef-1743-4f6f-804a-43915a2702ff
|
||||
version: 1
|
||||
date: '2018-03-19'
|
||||
author: David Dorsey, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search retrieves all the activity from a specific geographic region
|
||||
and will create a table containing the time, geographic region, ARN, username, the
|
||||
type of user, the source IP address, the AWS region the activity was in, the API
|
||||
called, and whether or not the API call was successful.
|
||||
search: '`cloudtrail` | iplocation sourceIPAddress | search Region=$Region$ | spath
|
||||
output=user path=userIdentity.arn | spath output=awsUserName path=userIdentity.userName
|
||||
| spath output=userType path=userIdentity.type | rename sourceIPAddress as src_ip
|
||||
| table _time, Region, user, userName, userType, src_ip, awsRegion, eventName, errorCode'
|
||||
how_to_implement: You must install the AWS App for Splunk (version 5.1.0 or later)
|
||||
and Splunk Add-on for AWS (version 4.4.0 or later), then configure your CloudTrail
|
||||
inputs.
|
||||
id: 5b794bef-1743-4f6f-804a-43915a2702ff
|
||||
inputs:
|
||||
- Region
|
||||
known_false_positives: ''
|
||||
name: Get All AWS Activity From Region
|
||||
search: '`cloudtrail` | iplocation sourceIPAddress | search
|
||||
Region=$Region$ | spath output=user path=userIdentity.arn | spath output=awsUserName
|
||||
path=userIdentity.userName | spath output=userType path=userIdentity.type | rename
|
||||
sourceIPAddress as src_ip | table _time, Region, user, userName, userType, src_ip,
|
||||
awsRegion, eventName, errorCode'
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- AWS Suspicious Provisioning Activities
|
||||
@@ -34,5 +34,3 @@ tags:
|
||||
- eventName
|
||||
- errorCode
|
||||
security_domain: network
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -1,25 +1,25 @@
|
||||
author: Bhavin Patel, Splunk
|
||||
datamodel: []
|
||||
name: Get EC2 Instance Details by instanceId
|
||||
id: f3db4d1b-5f33-4b01-c541-c7ah9514c242
|
||||
version: 1
|
||||
date: '2018-02-12'
|
||||
author: Bhavin Patel, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search queries AWS description logs and returns all the information
|
||||
about a specific instance via the instanceId field
|
||||
search: '`aws_description` | dedup id sortby -_time |rename id as instanceId| search
|
||||
instanceId=$instanceId$ | spath output=tags path=tags | eval tags=mvzip(key,value,"
|
||||
= "), ip_address=if((ip_address == "null"),private_ip_address,ip_address) | table
|
||||
id, tags.Name, aws_account_id, placement, instance_type, key_name, ip_address, launch_time,
|
||||
state, vpc_id, subnet_id, tags | rename aws_account_id as "Account ID", id as ID,
|
||||
instance_type as Type, ip_address as "IP Address", key_name as "Key Pair", launch_time
|
||||
as "Launch Time", placement as "Availability Zone", state as State, subnet_id as
|
||||
Subnet, "tags.Name" as Name, vpc_id as VPC'
|
||||
how_to_implement: In order to implement this search, you must install the AWS App
|
||||
for Splunk (version 5.1.0 or later) and Splunk Add-on for AWS(version 4.4.0 or later)
|
||||
and configure your AWS description inputs.
|
||||
id: f3db4d1b-5f33-4b01-c541-c7ah9514c242
|
||||
inputs:
|
||||
- instanceId
|
||||
known_false_positives: ''
|
||||
name: Get EC2 Instance Details by instanceId
|
||||
search: '`aws_description` | dedup id
|
||||
sortby -_time |rename id as instanceId| search instanceId=$instanceId$ | spath
|
||||
output=tags path=tags | eval tags=mvzip(key,value," = "), ip_address=if((ip_address
|
||||
== "null"),private_ip_address,ip_address) | table id, tags.Name, aws_account_id,
|
||||
placement, instance_type, key_name, ip_address, launch_time, state, vpc_id, subnet_id,
|
||||
tags | rename aws_account_id as "Account ID", id as ID, instance_type as Type, ip_address
|
||||
as "IP Address", key_name as "Key Pair", launch_time as "Launch Time", placement
|
||||
as "Availability Zone", state as State, subnet_id as Subnet, "tags.Name" as Name,
|
||||
vpc_id as VPC'
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- AWS Cryptomining
|
||||
@@ -44,5 +44,3 @@ tags:
|
||||
- vpc_id
|
||||
- subnet_id
|
||||
security_domain: network
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -1,20 +1,21 @@
|
||||
author: Bhavin Patel, Splunk
|
||||
datamodel: []
|
||||
name: Get EC2 Launch Details
|
||||
id: 0e40fe83-3edb-4d86-8206-8fed36529ca6
|
||||
version: 1
|
||||
date: '2018-03-12'
|
||||
author: Bhavin Patel, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search returns some of the launch details for a EC2 instance.
|
||||
search: '`cloudtrail` dest=$dest$ |rename userIdentity.arn as arn, responseElements.instancesSet.items{}.instanceId
|
||||
as dest, responseElements.instancesSet.items{}.privateIpAddress as privateIpAddress,
|
||||
responseElements.instancesSet.items{}.imageId as amiID, responseElements.instancesSet.items{}.architecture
|
||||
as architecture, responseElements.instancesSet.items{}.keyName as keyName | table
|
||||
arn, awsRegion, dest, architecture, privateIpAddress, amiID, keyName'
|
||||
how_to_implement: In order to implement this search, you must install the AWS App
|
||||
for Splunk (version 5.1.0 or later) and Splunk Add-on for AWS(version 4.4.0 or later)
|
||||
and configure your AWS description inputs.
|
||||
id: 0e40fe83-3edb-4d86-8206-8fed36529ca6
|
||||
inputs:
|
||||
- dest
|
||||
known_false_positives: ''
|
||||
name: Get EC2 Launch Details
|
||||
search: '`cloudtrail` dest=$dest$ |rename userIdentity.arn as
|
||||
arn, responseElements.instancesSet.items{}.instanceId as dest, responseElements.instancesSet.items{}.privateIpAddress
|
||||
as privateIpAddress, responseElements.instancesSet.items{}.imageId as amiID, responseElements.instancesSet.items{}.architecture
|
||||
as architecture, responseElements.instancesSet.items{}.keyName as keyName | table
|
||||
arn, awsRegion, dest, architecture, privateIpAddress, amiID, keyName'
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- AWS Cryptomining
|
||||
@@ -26,7 +27,7 @@ tags:
|
||||
- Splunk Security Analytics for AWS
|
||||
required_fields:
|
||||
- _time
|
||||
- dest
|
||||
- dest
|
||||
- userIdentity.arn
|
||||
- responseElements.instancesSet.items{}.instanceId
|
||||
- responseElements.instancesSet.items{}.privateIpAddress
|
||||
@@ -34,5 +35,3 @@ tags:
|
||||
- responseElements.instancesSet.items{}.architecture
|
||||
- responseElements.instancesSet.items{}.keyName
|
||||
security_domain: network
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -1,20 +1,20 @@
|
||||
author: Bhavin Patel, Splunk
|
||||
datamodel: []
|
||||
name: Investigate AWS activities via region name
|
||||
id: bc91a8cd-35e7-4bb2-6140-e756cc46fd11
|
||||
version: 1
|
||||
date: '2018-02-09'
|
||||
author: Bhavin Patel, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search lists all the user activities logged by CloudTrail for a
|
||||
specific region in question and will create a table of the values of parameters
|
||||
requested, the type of the event and the response from the AWS API by each user
|
||||
search: '`cloudtrail` vendor_region=$vendor_region$| rename requestParameters.instancesSet.items{}.instanceId
|
||||
as instanceId | stats values(eventName) by user instanceId vendor_region'
|
||||
how_to_implement: You must install the AWS App for Splunk (version 5.1.0 or later)
|
||||
and Splunk Add-on for AWS (version 4.4.0 or later), then configure your CloudTrail
|
||||
inputs.
|
||||
id: bc91a8cd-35e7-4bb2-6140-e756cc46fd11
|
||||
inputs:
|
||||
- vendor_region
|
||||
known_false_positives: ''
|
||||
name: Investigate AWS activities via region name
|
||||
search: '`cloudtrail` vendor_region=$vendor_region$| rename
|
||||
requestParameters.instancesSet.items{}.instanceId as instanceId | stats values(eventName)
|
||||
by user instanceId vendor_region'
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- AWS Cryptomining
|
||||
@@ -31,5 +31,3 @@ tags:
|
||||
- eventName
|
||||
- user
|
||||
security_domain: network
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -1,20 +1,21 @@
|
||||
author: Bhavin Patel, Splunk
|
||||
datamodel: []
|
||||
name: Investigate AWS User Activities by user field
|
||||
id: bc91a8cd-35e7-4bb2-6140-e756cc46fd76
|
||||
version: 1
|
||||
date: '2018-03-12'
|
||||
author: Bhavin Patel, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search lists all the logged CloudTrail activities by a specific
|
||||
user and will create a table containing the source of the user, the region of the
|
||||
activity, the name and type of the event, the action taken, and the user's identity
|
||||
information.
|
||||
search: '`cloudtrail` user=$user$ | table _time userIdentity.type userIdentity.userName
|
||||
userIdentity.arn aws_account_id src awsRegion eventName eventType '
|
||||
how_to_implement: You must install the AWS App for Splunk (version 5.1.0 or later)
|
||||
and Splunk Add-on for AWS (version 4.4.0 or later), then configure your CloudTrail
|
||||
inputs.
|
||||
id: bc91a8cd-35e7-4bb2-6140-e756cc46fd76
|
||||
inputs:
|
||||
- user
|
||||
known_false_positives: ''
|
||||
name: Investigate AWS User Activities by user field
|
||||
search: '`cloudtrail` user=$user$ | table _time userIdentity.type
|
||||
userIdentity.userName userIdentity.arn aws_account_id src awsRegion eventName eventType '
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- AWS User Monitoring
|
||||
@@ -34,5 +35,3 @@ tags:
|
||||
- eventName
|
||||
- eventType
|
||||
security_domain: network
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -1,16 +1,17 @@
|
||||
author: Rico Valdez, Splunk
|
||||
datamodel: []
|
||||
date: '2020-04-02'
|
||||
description: This search returns all okta events associated with a specific app
|
||||
how_to_implement: You must be ingesting Okta logs
|
||||
id: 420eb1b8-2992-45d1-80cf-0b1b2759524d
|
||||
inputs:
|
||||
- app
|
||||
known_false_positives: ''
|
||||
name: Investigate Okta Activity by app
|
||||
search: '`okta` app=$app$ | rename client.geographicalContext.country as
|
||||
country, client.geographicalContext.state as state, client.geographicalContext.city
|
||||
as city | table _time, user, displayMessage, app, src_ip, state, city, result, outcome.reason'
|
||||
id: 420eb1b8-2992-45d1-80cf-0b1b2759524d
|
||||
version: 1
|
||||
date: '2020-04-02'
|
||||
author: Rico Valdez, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search returns all okta events associated with a specific app
|
||||
search: '`okta` app=$app$ | rename client.geographicalContext.country as country,
|
||||
client.geographicalContext.state as state, client.geographicalContext.city as city
|
||||
| table _time, user, displayMessage, app, src_ip, state, city, result, outcome.reason'
|
||||
how_to_implement: You must be ingesting Okta logs
|
||||
known_false_positives: ''
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Suspicious Okta Activity
|
||||
@@ -28,5 +29,3 @@ tags:
|
||||
- result
|
||||
- outcome.reason
|
||||
security_domain: network
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -1,16 +1,17 @@
|
||||
author: Rico Valdez, Splunk
|
||||
datamodel: []
|
||||
date: '2020-04-02'
|
||||
description: This search returns all okta events from a specific IP address.
|
||||
how_to_implement: You must be ingesting Okta logs
|
||||
id: 56aae066-d619-477c-93e3-3fb83b2d23c3
|
||||
inputs:
|
||||
- user
|
||||
known_false_positives: ''
|
||||
name: Investigate Okta Activity by IP Address
|
||||
search: '`okta` src_ip={src_ip} | rename client.geographicalContext.country
|
||||
as country, client.geographicalContext.state as state, client.geographicalContext.city
|
||||
as city | table _time, user, displayMessage, app, src_ip, state, city, result, outcome.reason'
|
||||
id: 56aae066-d619-477c-93e3-3fb83b2d23c3
|
||||
version: 1
|
||||
date: '2020-04-02'
|
||||
author: Rico Valdez, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search returns all okta events from a specific IP address.
|
||||
search: '`okta` src_ip={src_ip} | rename client.geographicalContext.country as country,
|
||||
client.geographicalContext.state as state, client.geographicalContext.city as city
|
||||
| table _time, user, displayMessage, app, src_ip, state, city, result, outcome.reason'
|
||||
how_to_implement: You must be ingesting Okta logs
|
||||
known_false_positives: ''
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Suspicious Okta Activity
|
||||
@@ -28,5 +29,3 @@ tags:
|
||||
- result
|
||||
- outcome.reason
|
||||
security_domain: network
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -1,16 +1,17 @@
|
||||
author: Rico Valdez, Splunk
|
||||
datamodel: []
|
||||
date: '2020-04-02'
|
||||
description: This search returns all okta events by a specific user
|
||||
how_to_implement: You must be ingesting Okta logs
|
||||
id: 24ff145d-4d16-420a-b047-480f2a51c403
|
||||
inputs:
|
||||
- user
|
||||
known_false_positives: ''
|
||||
name: Investigate User Activities In Okta
|
||||
search: '`okta` user=$user$ | rename client.geographicalContext.country
|
||||
as country, client.geographicalContext.state as state, client.geographicalContext.city
|
||||
as city | table _time, user, displayMessage, app, src_ip, state, city, result, outcome.reason'
|
||||
id: 24ff145d-4d16-420a-b047-480f2a51c403
|
||||
version: 1
|
||||
date: '2020-04-02'
|
||||
author: Rico Valdez, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search returns all okta events by a specific user
|
||||
search: '`okta` user=$user$ | rename client.geographicalContext.country as country,
|
||||
client.geographicalContext.state as state, client.geographicalContext.city as city
|
||||
| table _time, user, displayMessage, app, src_ip, state, city, result, outcome.reason'
|
||||
how_to_implement: You must be ingesting Okta logs
|
||||
known_false_positives: ''
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Suspicious Okta Activity
|
||||
@@ -27,5 +28,3 @@ tags:
|
||||
- result
|
||||
- outcome.reason
|
||||
security_domain: network
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -22,10 +22,10 @@ references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- AWS User Monitoring
|
||||
detections:
|
||||
- Detect new API calls from user roles
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
detections:
|
||||
- Detect new API calls from user roles
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
@@ -37,4 +37,4 @@ tags:
|
||||
- userIdentity.type
|
||||
- userName
|
||||
- eventName
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -22,10 +22,10 @@ references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- AWS Cross Account Activity
|
||||
detections:
|
||||
- AWS Cross Account Activity From Previously Unseen Account
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
detections:
|
||||
- AWS Cross Account Activity From Previously Unseen Account
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
@@ -35,4 +35,4 @@ tags:
|
||||
- eventName
|
||||
- userIdentity.accountId
|
||||
- resources{}.accountId
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -42,4 +42,4 @@ tags:
|
||||
- Authentication.user
|
||||
- Authentication.src
|
||||
- Authentication.user_role
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -43,4 +43,4 @@ tags:
|
||||
- Authentication.user
|
||||
- Authentication.src
|
||||
- Authentication.user_role
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -20,13 +20,13 @@ references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- AWS Suspicious Provisioning Activities
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
detections:
|
||||
- AWS Cloud Provisioning From Previously Unseen IP Address
|
||||
- AWS Cloud Provisioning From Previously Unseen City
|
||||
- AWS Cloud Provisioning From Previously Unseen Country
|
||||
- AWS Cloud Provisioning From Previously Unseen Region
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
@@ -35,4 +35,4 @@ tags:
|
||||
- _time
|
||||
- eventName
|
||||
- sourceIPAddress
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -20,10 +20,10 @@ tags:
|
||||
analytic_story:
|
||||
- AWS Cryptomining
|
||||
- Suspicious AWS EC2 Activities
|
||||
detections:
|
||||
- EC2 Instance Started In Previously Unseen Region
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
detections:
|
||||
- EC2 Instance Started In Previously Unseen Region
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
@@ -31,4 +31,4 @@ tags:
|
||||
required_fields:
|
||||
- _time
|
||||
- awsRegion
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -37,4 +37,4 @@ tags:
|
||||
- All_Changes.status
|
||||
- All_Changes.user
|
||||
- All_Changes.command
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -39,4 +39,4 @@ tags:
|
||||
- All_Changes.status
|
||||
- All_Changes.user
|
||||
- All_Changes.command
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -33,4 +33,4 @@ tags:
|
||||
- All_Changes.action
|
||||
- All_Changes.object_category
|
||||
- All_Changes.user
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -36,4 +36,4 @@ tags:
|
||||
- All_Changes.action
|
||||
- All_Changes.object_category
|
||||
- All_Changes.user
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -34,4 +34,4 @@ tags:
|
||||
- _time
|
||||
- All_Changes.action
|
||||
- All_Changes.Instance_Changes.image_id
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -35,4 +35,4 @@ tags:
|
||||
- _time
|
||||
- All_Changes.action
|
||||
- All_Changes.Instance_Changes.image_id
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -33,4 +33,4 @@ tags:
|
||||
- _time
|
||||
- All_Changes.action
|
||||
- All_Changes.Instance_Changes.instance_type
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -35,4 +35,4 @@ tags:
|
||||
- _time
|
||||
- All_Changes.action
|
||||
- All_Changes.Instance_Changes.instance_type
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -10,9 +10,9 @@ description: This search builds a table of previously seen users that have modif
|
||||
a cloud instance.
|
||||
search: '| tstats earliest(_time) as firstTimeSeen, latest(_time) as lastTimeSeen
|
||||
from datamodel=Change where All_Changes.action=modified All_Changes.change_type=EC2
|
||||
c=success by All_Changes.user | `drop_dm_object_name("All_Changes")`
|
||||
| eventstats min(firstTimeSeen) as globalFirstTime | eval enough_data = if(globalFirstTime
|
||||
<= relative_time(now(), "-7d@d"), 1, 0) | outputlookup previously_seen_cloud_instance_modifications_by_user'
|
||||
c=success by All_Changes.user | `drop_dm_object_name("All_Changes")` | eventstats
|
||||
min(firstTimeSeen) as globalFirstTime | eval enough_data = if(globalFirstTime <=
|
||||
relative_time(now(), "-7d@d"), 1, 0) | outputlookup previously_seen_cloud_instance_modifications_by_user'
|
||||
how_to_implement: You must be ingesting the approrpiate cloud infrastructure logs
|
||||
and have the latest Change Datamodel accelerated.
|
||||
known_false_positives: none
|
||||
@@ -35,4 +35,4 @@ tags:
|
||||
- All_Changes.change_type
|
||||
- All_Changes.status
|
||||
- All_Changes.user
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -39,4 +39,4 @@ tags:
|
||||
- All_Changes.change_type
|
||||
- All_Changes.status
|
||||
- All_Changes.user
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -41,4 +41,4 @@ tags:
|
||||
- All_Changes.action
|
||||
- All_Changes.src
|
||||
- All_Changes.status
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -46,4 +46,4 @@ tags:
|
||||
- All_Changes.action
|
||||
- All_Changes.src
|
||||
- All_Changes.status
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -35,4 +35,4 @@ tags:
|
||||
- _time
|
||||
- All_Changes.action
|
||||
- All_Changes.vendor_region
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -38,4 +38,4 @@ tags:
|
||||
- _time
|
||||
- All_Changes.action
|
||||
- All_Changes.vendor_region
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -18,10 +18,10 @@ references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- AWS Cryptomining
|
||||
detections:
|
||||
- EC2 Instance Started With Previously Unseen AMI
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
detections:
|
||||
- EC2 Instance Started With Previously Unseen AMI
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
@@ -31,4 +31,4 @@ tags:
|
||||
- eventName
|
||||
- errorCode
|
||||
- requestParameters.instancesSet.items{}.imageId
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -18,10 +18,10 @@ references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- AWS Cryptomining
|
||||
detections:
|
||||
- EC2 Instance Started With Previously Unseen Instance Type
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
detections:
|
||||
- EC2 Instance Started With Previously Unseen Instance Type
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
@@ -31,4 +31,4 @@ tags:
|
||||
- eventName
|
||||
- errorCode
|
||||
- requestParameters.instanceType
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -19,10 +19,10 @@ tags:
|
||||
analytic_story:
|
||||
- AWS Cryptomining
|
||||
- Suspicious AWS EC2 Activities
|
||||
detections:
|
||||
- EC2 Instance Started With Previously Unseen User
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
detections:
|
||||
- EC2 Instance Started With Previously Unseen User
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
@@ -32,4 +32,4 @@ tags:
|
||||
- eventName
|
||||
- errorCode
|
||||
- requestParameters.instanceType
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -18,10 +18,10 @@ references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Unusual AWS EC2 Modifications
|
||||
detections:
|
||||
- EC2 Instance Modified With Previously Unseen User
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
detections:
|
||||
- EC2 Instance Modified With Previously Unseen User
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
@@ -30,4 +30,4 @@ tags:
|
||||
- _time
|
||||
- userIdentity.arn
|
||||
- errorCode
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -21,10 +21,10 @@ references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Suspicious AWS S3 Activities
|
||||
detections:
|
||||
- Detect S3 access from a new IP
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
detections:
|
||||
- Detect S3 access from a new IP
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
@@ -34,4 +34,4 @@ tags:
|
||||
- http_status
|
||||
- bucket_name
|
||||
- remote_ip
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -23,13 +23,13 @@ references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Suspicious AWS Login Activities
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
detections:
|
||||
- Detect AWS Console Login by User from New Country
|
||||
- Detect AWS Console Login by User from New Region
|
||||
- Detect AWS Console Login by User from New City
|
||||
- Detect new user AWS Console Login
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
@@ -39,4 +39,4 @@ tags:
|
||||
- eventName
|
||||
- userIdentity.arn
|
||||
- src
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -42,4 +42,4 @@ tags:
|
||||
- Authentication.signature
|
||||
- Authentication.user
|
||||
- Authentication.src
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -42,4 +42,4 @@ tags:
|
||||
- Authentication.signature
|
||||
- Authentication.user
|
||||
- Authentication.src
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -25,13 +25,13 @@ references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Suspicious AWS Login Activities
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
detections:
|
||||
- Detect AWS Console Login by User from New Country
|
||||
- Detect AWS Console Login by User from New Region
|
||||
- Detect AWS Console Login by User from New City
|
||||
- Detect new user AWS Console Login
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
@@ -41,4 +41,4 @@ tags:
|
||||
- eventName
|
||||
- userIdentity.arn
|
||||
- src
|
||||
security_domain: network
|
||||
security_domain: network
|
||||
|
||||
@@ -20,14 +20,14 @@ tags:
|
||||
- 'Emotet Malware DHS Report TA18-201A '
|
||||
- Monitor for Unauthorized Software
|
||||
- SamSam Ransomware
|
||||
detections:
|
||||
- Prohibited Software On Endpoint
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
detections:
|
||||
- Prohibited Software On Endpoint
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
- Splunk Cloud
|
||||
required_fields:
|
||||
- _time
|
||||
security_domain: endpoint
|
||||
security_domain: endpoint
|
||||
|
||||
@@ -0,0 +1,71 @@
|
||||
name: 7zip CommandLine To SMB Share Path
|
||||
id: 01d29b48-ff6f-11eb-b81e-acde48001122
|
||||
version: 1
|
||||
date: '2021-08-17'
|
||||
author: Teoderick Contreras, Splunk
|
||||
type: Hunting
|
||||
datamodel:
|
||||
- Endpoint
|
||||
description: This search is to detect a suspicious 7z process with commandline pointing
|
||||
to SMB network share. This technique was seen in CONTI LEAK tools where it use 7z
|
||||
to archive a sensitive files and place it in network share tmp folder. This search
|
||||
is a good hunting query that may give analyst a hint why specific user try to archive
|
||||
a file pointing to SMB user which is un usual.
|
||||
search: '| tstats `security_content_summariesonly` count min(_time) as firstTime max(_time)
|
||||
as lastTime from datamodel=Endpoint.Processes where (Processes.process_name ="7z.exe"
|
||||
OR Processes.process_name = "7za.exe" OR Processes.original_file_name = "7z.exe"
|
||||
OR Processes.original_file_name = "7za.exe") AND (Processes.process="*\\C$\\*"
|
||||
OR Processes.process="*\\Admin$\\*" OR Processes.process="*\\IPC$\\*") by Processes.original_file_name
|
||||
Processes.parent_process_name Processes.parent_process Processes.process_name Processes.process
|
||||
Processes.parent_process_id Processes.process_id Processes.dest Processes.user
|
||||
| `drop_dm_object_name(Processes)` | `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)`
|
||||
| `7zip_commandline_to_smb_share_path_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 where renamed 7z.exe may be used.
|
||||
known_false_positives: unknown
|
||||
references:
|
||||
- https://threadreaderapp.com/thread/1423361119926816776.html
|
||||
tags:
|
||||
analytic_story:
|
||||
- Ransomware
|
||||
dataset:
|
||||
- https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/malware/conti/conti_leak/windows-sysmon_7z.log
|
||||
kill_chain_phases:
|
||||
- Exploitation
|
||||
mitre_attack_id:
|
||||
- T1560.001
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
- Splunk Cloud
|
||||
required_fields:
|
||||
- _time
|
||||
- Processes.dest
|
||||
- Processes.user
|
||||
- Processes.parent_process
|
||||
- Processes.parent_process_name
|
||||
- Processes.process_name
|
||||
- Processes.process
|
||||
- Processes.process_id
|
||||
- Processes.parent_process_id
|
||||
security_domain: endpoint
|
||||
impact: 50
|
||||
confidence: 50
|
||||
risk_score: 25
|
||||
context:
|
||||
- Source:Endpoint
|
||||
- Stage:Execution
|
||||
message: archive process $process_name$ with suspicious cmdline $process$ in host
|
||||
$dest$
|
||||
observable:
|
||||
- name: dest
|
||||
type: Hostname
|
||||
role:
|
||||
- Victim
|
||||
- name: SourceImage
|
||||
type: process name
|
||||
role:
|
||||
- Attacker
|
||||
automated_detection_testing: passed
|
||||
@@ -1,16 +1,17 @@
|
||||
author: Rico Valdez, Splunk
|
||||
datamodel: []
|
||||
name: All backup logs for host
|
||||
id: bc91a8cf-aaaa-4bb2-8140-e756cc06fd72
|
||||
version: 1
|
||||
date: '2017-09-12'
|
||||
author: Rico Valdez, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: Retrieve the backup logs for the last 2 weeks for a specific host in
|
||||
order to investigate why backups are not completing successfully.
|
||||
search: '| search `netbackup` dest=$dest$'
|
||||
how_to_implement: The successfully implement this search you must first send your
|
||||
backup logs to Splunk.
|
||||
id: bc91a8cf-aaaa-4bb2-8140-e756cc06fd72
|
||||
inputs:
|
||||
- dest
|
||||
known_false_positives: none
|
||||
name: All backup logs for host
|
||||
search: '| search `netbackup` dest=$dest$'
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Monitor Backup Solution
|
||||
@@ -20,5 +21,3 @@ tags:
|
||||
- _time
|
||||
- dest
|
||||
security_domain: endpoint
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -10,10 +10,11 @@ description: The following analytic identifies suspicious PowerShell command to
|
||||
inbound traffic inbound to a specific local port within the public profile. This
|
||||
technique was seen in some attacker want to have a remote access to a machine by
|
||||
allowing the traffic in firewall rule.
|
||||
search: '`powershell` EventCode=4104 Message = "*firewall*" Message = "*Public*" Message
|
||||
= "*Inbound*" Message = "*Allow*" Message = "*-LocalPort*" | stats count min(_time)
|
||||
as firstTime max(_time) as lastTime by EventCode Message ComputerName User | `security_content_ctime(firstTime)`
|
||||
| `security_content_ctime(lastTime)` | `allow_inbound_traffic_in_firewall_rule_filter`'
|
||||
search: '`powershell` EventCode=4104 Message = "*firewall*" Message = "*Inbound*" Message = "*Allow*" Message = "*-LocalPort*"
|
||||
| stats count min(_time) as firstTime max(_time) as lastTime by EventCode Message ComputerName User
|
||||
| `security_content_ctime(firstTime)`
|
||||
| `security_content_ctime(lastTime)`
|
||||
| `allow_inbound_traffic_in_firewall_rule_filter`'
|
||||
how_to_implement: To successfully implement this search, you need to be ingesting
|
||||
logs with the powershell logs from your endpoints. make sure you enable needed
|
||||
registry to monitor this event.
|
||||
|
||||
@@ -34,11 +34,11 @@ tags:
|
||||
- Suspicious Command-Line Executions
|
||||
- Suspicious MSHTA Activity
|
||||
- Unusual Processes
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
detections:
|
||||
- Detect Prohibited Applications Spawning cmd.exe
|
||||
- Unusually Long Command Line - MLTK
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
@@ -49,4 +49,4 @@ tags:
|
||||
- Processes.dest
|
||||
- Processes.process_name
|
||||
- Processes.process
|
||||
security_domain: endpoint
|
||||
security_domain: endpoint
|
||||
|
||||
@@ -19,10 +19,10 @@ references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Asset Tracking
|
||||
detections:
|
||||
- Detect Unauthorized Assets by MAC address
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
detections:
|
||||
- Detect Unauthorized Assets by MAC address
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
@@ -31,4 +31,4 @@ tags:
|
||||
- _time
|
||||
- Identity_Management.All_Assets
|
||||
- category
|
||||
security_domain: endpoint
|
||||
security_domain: endpoint
|
||||
|
||||
@@ -0,0 +1,59 @@
|
||||
name: Fsutil Zeroing File
|
||||
id: 4e5e024e-fabb-11eb-8b8f-acde48001122
|
||||
version: 1
|
||||
date: '2021-08-11'
|
||||
author: Teoderick Contreras, Splunk
|
||||
type: TTP
|
||||
datamodel:
|
||||
- Endpoint
|
||||
description: This search is to detect a suspicious fsutil process to zeroing a target
|
||||
file. This technique was seen in lockbit ransomware where it tries to zero out its
|
||||
malware path as part of its defense evasion after encrypting the compromised host.
|
||||
search: '| tstats `security_content_summariesonly` count values(Processes.process)
|
||||
as process values(Processes.parent_process) as parent_process min(_time) as firstTime
|
||||
max(_time) as lastTime from datamodel=Endpoint.Processes where Processes.process_name=fsutil.exe
|
||||
Processes.process="*setzerodata*" by Processes.user Processes.process_name Processes.parent_process_name
|
||||
Processes.dest Processes.process Processes.parent_process | `drop_dm_object_name(Processes)`
|
||||
| `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)` | `fsutil_zeroing_file_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: unknown
|
||||
references:
|
||||
- https://app.any.run/tasks/e0ac072d-58c9-4f53-8a3b-3e491c7ac5db/
|
||||
tags:
|
||||
analytic_story:
|
||||
- Ransomware
|
||||
dataset:
|
||||
- https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1070/fsutil_file_zero/windows-sysmon.log
|
||||
kill_chain_phases:
|
||||
- Exploitation
|
||||
mitre_attack_id:
|
||||
- T1070
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
- Splunk Cloud
|
||||
required_fields:
|
||||
- _time
|
||||
- Processes.user
|
||||
- Processes.process_name
|
||||
- Processes.parent_process_name
|
||||
- Processes.dest
|
||||
- Processes.process
|
||||
- Processes.parent_process
|
||||
security_domain: endpoint
|
||||
impact: 60
|
||||
confidence: 90
|
||||
risk_score: 54
|
||||
context:
|
||||
- Source:Endpoint
|
||||
- Stage:Defense Evasion
|
||||
message: Possible file data deletion on $dest$ using $process$
|
||||
observable:
|
||||
- name: dest
|
||||
type: Endpoint
|
||||
role:
|
||||
- Victim
|
||||
automated_detection_testing: passed
|
||||
@@ -1,16 +1,17 @@
|
||||
author: David Dorsey, Splunk
|
||||
datamodel: []
|
||||
name: Get Backup Logs For Endpoint
|
||||
id: fdcfb369-1725-4c24-824a-22972d7f0d44
|
||||
version: 1
|
||||
date: '2017-09-14'
|
||||
author: David Dorsey, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search will tell you the backup status from your netbackup_logs
|
||||
of a specific endpoint for the last week.
|
||||
search: '`netbackup` COMPUTERNAME=$dest$ | rename COMPUTERNAME as dest, MESSAGE as
|
||||
signature | table _time, dest, signature'
|
||||
how_to_implement: You must be ingesting your backup logs.
|
||||
id: fdcfb369-1725-4c24-824a-22972d7f0d44
|
||||
inputs:
|
||||
- dest
|
||||
known_false_positives: ''
|
||||
name: Get Backup Logs For Endpoint
|
||||
search: '`netbackup` COMPUTERNAME=$dest$ | rename COMPUTERNAME
|
||||
as dest, MESSAGE as signature | table _time, dest, signature'
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Ransomware
|
||||
@@ -22,5 +23,3 @@ tags:
|
||||
- COMPUTERNAME
|
||||
- MESSAGE
|
||||
security_domain: endpoint
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -1,18 +1,19 @@
|
||||
author: David Dorsey, Splunk
|
||||
datamodel: []
|
||||
name: Get Logon Rights Modifications For Endpoint
|
||||
id: 03bffe94-ec7a-4cbe-b677-6af40d1c4505
|
||||
version: 2
|
||||
date: '2017-09-12'
|
||||
author: David Dorsey, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search allows you to retrieve any modifications to logon rights
|
||||
associated with a specific host.
|
||||
search: '`wineventlog_security` (signature_id=4718 OR signature_id=4717) dest=$dest$
|
||||
| rename user as "Account Modified" | table _time, dest, "Account Modified", Access_Right,
|
||||
signature'
|
||||
how_to_implement: To successfully implement this search you must be ingesting your
|
||||
Windows event logs
|
||||
id: 03bffe94-ec7a-4cbe-b677-6af40d1c4505
|
||||
inputs:
|
||||
- dest
|
||||
known_false_positives: ''
|
||||
name: Get Logon Rights Modifications For Endpoint
|
||||
search: '`wineventlog_security` (signature_id=4718 OR signature_id=4717)
|
||||
dest=$dest$ | rename user as "Account Modified" | table _time, dest, "Account Modified",
|
||||
Access_Right, signature'
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Account Monitoring and Controls
|
||||
@@ -24,5 +25,3 @@ tags:
|
||||
- dest
|
||||
- user
|
||||
security_domain: endpoint
|
||||
type: Investigation
|
||||
version: 2
|
||||
|
||||
@@ -1,18 +1,19 @@
|
||||
author: David Dorsey, Splunk
|
||||
datamodel: []
|
||||
name: Get Logon Rights Modifications For User
|
||||
id: 552bc86c-f72c-4d44-b3f2-06ede13af7bb
|
||||
version: 2
|
||||
date: '2019-02-27'
|
||||
author: David Dorsey, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search allows you to retrieve any modifications to logon rights
|
||||
for a specific user account.
|
||||
search: '`wineventlog_security` (signature_id=4718 OR signature_id=4717) user=$user$
|
||||
| rename user as "Account Modified" | table _time, dest, "Account Modified", Access_Right,
|
||||
signature'
|
||||
how_to_implement: To successfully implement this search you must be ingesting your
|
||||
Windows event logs
|
||||
id: 552bc86c-f72c-4d44-b3f2-06ede13af7bb
|
||||
inputs:
|
||||
- user
|
||||
known_false_positives: ''
|
||||
name: Get Logon Rights Modifications For User
|
||||
search: '`wineventlog_security` (signature_id=4718 OR signature_id=4717)
|
||||
user=$user$ | rename user as "Account Modified" | table _time, dest, "Account Modified",
|
||||
Access_Right, signature'
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Account Monitoring and Controls
|
||||
@@ -24,5 +25,3 @@ tags:
|
||||
- dest
|
||||
- user
|
||||
security_domain: endpoint
|
||||
type: Investigation
|
||||
version: 2
|
||||
|
||||
@@ -1,18 +1,19 @@
|
||||
author: Bhavin Patel, Splunk
|
||||
datamodel: []
|
||||
name: Get Notable History
|
||||
id: 3d6c3213-5fff-4a1e-b57d-b24c262171e7
|
||||
version: 2
|
||||
date: '2017-09-20'
|
||||
author: Bhavin Patel, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search queries the notable index and returns all the Notable Events
|
||||
for the particular destination host, giving the analyst an overview of the incidents
|
||||
that may have occurred with the host under investigation.
|
||||
how_to_implement: If you are using Enterprise Security you are likely already creating
|
||||
notable events with your correlation rules. No additional configuration is necessary.
|
||||
id: 3d6c3213-5fff-4a1e-b57d-b24c262171e7
|
||||
inputs:
|
||||
- dest
|
||||
known_false_positives: ''
|
||||
name: Get Notable History
|
||||
search: '| search `notable` | search dest=$dest$ | table _time, dest, rule_name, owner,
|
||||
priority, severity, status_description'
|
||||
how_to_implement: If you are using Enterprise Security you are likely already creating
|
||||
notable events with your correlation rules. No additional configuration is necessary.
|
||||
known_false_positives: ''
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- AWS Cross Account Activity
|
||||
@@ -89,5 +90,3 @@ tags:
|
||||
required_fields:
|
||||
- _time
|
||||
security_domain: endpoint
|
||||
type: Investigation
|
||||
version: 2
|
||||
|
||||
@@ -1,25 +1,25 @@
|
||||
author: Bhavin Patel, Splunk
|
||||
datamodel:
|
||||
- Endpoint
|
||||
name: Get Parent Process Info
|
||||
id: fecf2918-670d-4f1c-872b-3d7317a41bf9
|
||||
version: 2
|
||||
date: '2019-02-28'
|
||||
author: Bhavin Patel, Splunk
|
||||
type: Investigation
|
||||
datamodel:
|
||||
- Endpoint
|
||||
description: This search queries the Endpoint data model to give you details about
|
||||
the parent process of a process running on a host which is under investigation.
|
||||
Enter the values of the process name in question and the dest
|
||||
search: '| tstats `security_content_summariesonly` count values(Processes.process)
|
||||
as process min(_time) as firstTime max(_time) as lastTime FROM datamodel=Endpoint.Processes
|
||||
by Processes.user Processes.parent_process_name Processes.process_name Processes.dest
|
||||
| `drop_dm_object_name("Processes")` | search parent_process_name= $parent_process_name$
|
||||
|search dest = $dest$ | `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)`'
|
||||
how_to_implement: You must be ingesting endpoint data that tracks process activity,
|
||||
including parent-child relationships from your endpoints to populate the Endpoint
|
||||
data model in the Processes node. The command-line arguments are mapped to the "process"
|
||||
field in the Endpoint data model.
|
||||
id: fecf2918-670d-4f1c-872b-3d7317a41bf9
|
||||
inputs:
|
||||
- parent_process_name
|
||||
- dest
|
||||
known_false_positives: ''
|
||||
name: Get Parent Process Info
|
||||
search: '| tstats `security_content_summariesonly` count values(Processes.process) as process min(_time)
|
||||
as firstTime max(_time) as lastTime FROM datamodel=Endpoint.Processes by Processes.user
|
||||
Processes.parent_process_name Processes.process_name Processes.dest | `drop_dm_object_name("Processes")`
|
||||
| search parent_process_name= $parent_process_name$ |search dest = $dest$ | `security_content_ctime(firstTime)`
|
||||
| `security_content_ctime(lastTime)`'
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Collection and Staging
|
||||
@@ -59,5 +59,3 @@ tags:
|
||||
- Processes.process_name
|
||||
- Processes.dest
|
||||
security_domain: endpoint
|
||||
type: Investigation
|
||||
version: 2
|
||||
|
||||
@@ -1,23 +1,23 @@
|
||||
author: David Dorsey, Splunk
|
||||
datamodel:
|
||||
- Endpoint
|
||||
name: Get Process File Activity
|
||||
id: 6a9ad4d9-6ef2-4b85-953f-a37ab256acd5
|
||||
version: 2
|
||||
date: '2019-11-06'
|
||||
author: David Dorsey, Splunk
|
||||
type: Investigation
|
||||
datamodel:
|
||||
- Endpoint
|
||||
description: This search returns the file activity for a specific process on a specific
|
||||
endpoint
|
||||
how_to_implement: To successfully implement this search you must be ingesting endpoint
|
||||
data and populating the Endpoint data model.
|
||||
id: 6a9ad4d9-6ef2-4b85-953f-a37ab256acd5
|
||||
inputs:
|
||||
- process_name
|
||||
- dest
|
||||
known_false_positives: ''
|
||||
name: Get Process File Activity
|
||||
search: '| tstats `security_content_summariesonly` values(Filesystem.file_name) as
|
||||
file_name values(Filesystem.dest) as dest, values(Filesystem.process_name) as process_name
|
||||
from datamodel=Endpoint.Filesystem by Filesystem.dest Filesystem.process_name Filesystem.file_path,
|
||||
Filesystem.action, _time | `drop_dm_object_name(Filesystem)` | search dest=$dest$ |
|
||||
search process_name=$process_name$ | table _time, process_name, dest, action, file_name,
|
||||
file_path'
|
||||
how_to_implement: To successfully implement this search you must be ingesting endpoint
|
||||
data and populating the Endpoint data model.
|
||||
known_false_positives: ''
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- DHS Report TA18-074A
|
||||
@@ -32,5 +32,3 @@ tags:
|
||||
- Filesystem.file_path
|
||||
- Filesystem.action
|
||||
security_domain: endpoint
|
||||
type: Investigation
|
||||
version: 2
|
||||
|
||||
@@ -1,23 +1,23 @@
|
||||
author: Bhavin Patel, Splunk
|
||||
datamodel:
|
||||
- Endpoint
|
||||
name: Get Process Info
|
||||
id: bc91a8cf-35e7-4bb2-8140-e756cc06fd71
|
||||
version: 2
|
||||
date: '2019-04-01'
|
||||
author: Bhavin Patel, Splunk
|
||||
type: Investigation
|
||||
datamodel:
|
||||
- Endpoint
|
||||
description: This search queries the Endpoint data model to give you details about
|
||||
the process running on a host which is under investigation. To gather the process
|
||||
info, enter the values for the process name in question and the destination IP address.
|
||||
search: '| tstats `security_content_summariesonly` count values(Processes.process)
|
||||
as process min(_time) as firstTime max(_time) as lastTime FROM datamodel=Endpoint.Processes
|
||||
by Processes.user Processes.parent_process_name Processes.process_name Processes.dest
|
||||
| `drop_dm_object_name("Processes")` | search process_name= $process_name$ | search
|
||||
dest = $dest$ | `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)`'
|
||||
how_to_implement: To successfully implement this search you must be ingesting endpoint
|
||||
data and populating the Endpoint data model.
|
||||
id: bc91a8cf-35e7-4bb2-8140-e756cc06fd71
|
||||
inputs:
|
||||
- process_name
|
||||
- dest
|
||||
known_false_positives: ''
|
||||
name: Get Process Info
|
||||
search: '| tstats `security_content_summariesonly` count values(Processes.process) as process min(_time)
|
||||
as firstTime max(_time) as lastTime FROM datamodel=Endpoint.Processes by Processes.user
|
||||
Processes.parent_process_name Processes.process_name Processes.dest | `drop_dm_object_name("Processes")`
|
||||
| search process_name= $process_name$ | search dest = $dest$ | `security_content_ctime(firstTime)`
|
||||
| `security_content_ctime(lastTime)`'
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- AWS Network ACL Activity
|
||||
@@ -59,5 +59,3 @@ tags:
|
||||
- Processes.process_name
|
||||
- Processes.dest
|
||||
security_domain: endpoint
|
||||
type: Investigation
|
||||
version: 2
|
||||
|
||||
@@ -1,17 +1,13 @@
|
||||
author: Bhavin Patel, Splunk
|
||||
datamodel:
|
||||
- Endpoint
|
||||
name: Get Process Information For Port Activity
|
||||
id: 9925d08f-561e-4faa-8912-e3888a842341
|
||||
version: 2
|
||||
date: '2019-04-01'
|
||||
author: Bhavin Patel, Splunk
|
||||
type: Investigation
|
||||
datamodel:
|
||||
- Endpoint
|
||||
description: This search will return information about the process associated with
|
||||
observed network traffic to a specific destination port from a specific host.
|
||||
how_to_implement: To successfully implement this search you must be ingesting endpoint
|
||||
data that associates processes with network events and populate the Endpoint Datamodel
|
||||
id: 9925d08f-561e-4faa-8912-e3888a842341
|
||||
inputs:
|
||||
- dest_port
|
||||
- dest
|
||||
known_false_positives: ''
|
||||
name: Get Process Information For Port Activity
|
||||
search: '| tstats `security_content_summariesonly` count min(_time) max(_time) as
|
||||
lastTime from datamodel=Endpoint.Processes by Processes.process_name Processes.user
|
||||
Processes.dest Processes.process_id | `drop_dm_object_name(Processes)` | `security_content_ctime(firstTime)`
|
||||
@@ -19,6 +15,10 @@ search: '| tstats `security_content_summariesonly` count min(_time) max(_time) a
|
||||
[| tstats `security_content_summariesonly` count from datamodel=Endpoint.Ports by
|
||||
Ports.process_id Ports.src Ports.dest_port | `drop_dm_object_name(Ports)` | search
|
||||
dest_port=$dest_port$ | rename src as dest]'
|
||||
how_to_implement: To successfully implement this search you must be ingesting endpoint
|
||||
data that associates processes with network events and populate the Endpoint Datamodel
|
||||
known_false_positives: ''
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- AWS Network ACL Activity
|
||||
@@ -44,5 +44,3 @@ tags:
|
||||
- Ports.src
|
||||
- Ports.dest_port
|
||||
security_domain: endpoint
|
||||
type: Investigation
|
||||
version: 2
|
||||
|
||||
@@ -1,19 +1,15 @@
|
||||
author: Bhavin Patel, Splunk
|
||||
datamodel:
|
||||
- Endpoint
|
||||
name: Get Process Responsible For The DNS Traffic
|
||||
id: 910e6512-edc9-4f93-ba24-5b786f47a672
|
||||
version: 2
|
||||
date: '2019-04-01'
|
||||
author: Bhavin Patel, Splunk
|
||||
type: Investigation
|
||||
datamodel:
|
||||
- Endpoint
|
||||
description: While investigating, an analyst will want to know what process and parent_process
|
||||
is responsible for generating suspicious DNS traffic. Use the following search and
|
||||
enter the value of `dest` in the search to get specific details on the process responsible
|
||||
for creating the DNS traffic.
|
||||
how_to_implement: You must be ingesting endpoint data that associates processes with
|
||||
network events into the Endpoint datamodel. This can come from endpoint protection
|
||||
products such as carbon black, or endpoint data sources such as Sysmon.
|
||||
id: 910e6512-edc9-4f93-ba24-5b786f47a672
|
||||
inputs:
|
||||
- dest
|
||||
known_false_positives: ''
|
||||
name: Get Process Responsible For The DNS Traffic
|
||||
search: '| tstats `security_content_summariesonly` count min(_time) max(_time) as
|
||||
lastTime from datamodel=Endpoint.Processes by Processes.parent_process Processes.process_name
|
||||
Processes.user Processes.dest Processes.process_id | `drop_dm_object_name(Processes)`
|
||||
@@ -21,6 +17,11 @@ search: '| tstats `security_content_summariesonly` count min(_time) max(_time) a
|
||||
dest = $dest$ | join dest type=inner [| tstats `security_content_summariesonly`
|
||||
count from datamodel=Endpoint.Ports where Ports.dest_port=53 by Ports.process_id
|
||||
Ports.src | `drop_dm_object_name(Ports)` | rename src as dest]'
|
||||
how_to_implement: You must be ingesting endpoint data that associates processes with
|
||||
network events into the Endpoint datamodel. This can come from endpoint protection
|
||||
products such as carbon black, or endpoint data sources such as Sysmon.
|
||||
known_false_positives: ''
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- AWS Network ACL Activity
|
||||
@@ -44,5 +45,3 @@ tags:
|
||||
- Ports.src
|
||||
- Ports.dest_port
|
||||
security_domain: endpoint
|
||||
type: Investigation
|
||||
version: 2
|
||||
|
||||
@@ -1,20 +1,19 @@
|
||||
author: Rico Valdez, Splunk
|
||||
datamodel: []
|
||||
name: Get Sysmon WMI Activity for Host
|
||||
id: 155e0571-7db6-42f2-aa62-9a3a4cf35c94
|
||||
version: 1
|
||||
date: '2018-10-23'
|
||||
author: Rico Valdez, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search queries Sysmon WMI events for the host of interest.
|
||||
search: '`sysmon` EventCode>18 EventCode<22 | rename host as dest | search dest=$dest$|
|
||||
table _time, dest, user, Name, Operation, EventType, Type, Query, Consumer, Filter'
|
||||
how_to_implement: To successfully implement this search, you must be collecting Sysmon
|
||||
data using Sysmon version 6.1 or greater and have Sysmon configured to generate
|
||||
events for WMI activity. In addition, you must have at least version 6.0.4 of the
|
||||
Sysmon TA installed to properly parse the fields.
|
||||
id: 155e0571-7db6-42f2-aa62-9a3a4cf35c94
|
||||
inputs:
|
||||
- process
|
||||
- dest
|
||||
known_false_positives: ''
|
||||
name: Get Sysmon WMI Activity for Host
|
||||
search: '`sysmon` EventCode>18
|
||||
EventCode<22 | rename host as dest | search dest=$dest$| table _time, dest, user,
|
||||
Name, Operation, EventType, Type, Query, Consumer, Filter'
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Ransomware
|
||||
@@ -33,5 +32,3 @@ tags:
|
||||
- Consumer
|
||||
- Filter
|
||||
security_domain: endpoint
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -16,14 +16,14 @@ how_to_implement: To successfully implement this search you must be ingesting en
|
||||
known_false_positives: none
|
||||
references: []
|
||||
tags:
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
- Splunk Cloud
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
required_fields:
|
||||
- _time
|
||||
- Processes.process_name
|
||||
- Processes.dest
|
||||
security_domain: endpoint
|
||||
security_domain: endpoint
|
||||
|
||||
@@ -1,21 +1,22 @@
|
||||
author: Patrick Bareiss, Splunk
|
||||
datamodel:
|
||||
- Authentication
|
||||
date: '2019-12-10'
|
||||
description: This search returns failed logins to multiple destinations by user.
|
||||
how_to_implement: To successfully implement this search you need to be ingesting authentication
|
||||
logs from your various systems and populating the Authentication data model.
|
||||
id: 097e8030-8662-4254-a735-bf0bdda696e3
|
||||
inputs:
|
||||
- user
|
||||
known_false_positives: ''
|
||||
name: Investigate Failed Logins for Multiple Destinations
|
||||
id: 097e8030-8662-4254-a735-bf0bdda696e3
|
||||
version: 1
|
||||
date: '2019-12-10'
|
||||
author: Patrick Bareiss, Splunk
|
||||
type: Investigation
|
||||
datamodel:
|
||||
- Authentication
|
||||
description: This search returns failed logins to multiple destinations by user.
|
||||
search: '| tstats count `security_content_summariesonly` earliest(_time) as first_login
|
||||
latest(_time) as last_login dc(Authentication.dest) AS distinct_count_dest values(Authentication.dest)
|
||||
AS Authentication.dest values(Authentication.app) AS Authentication.app from datamodel=Authentication
|
||||
where Authentication.action=failure by Authentication.user | where distinct_count_dest
|
||||
> 1 | `security_content_ctime(first_login)` | `security_content_ctime(last_login)`
|
||||
| `drop_dm_object_name("Authentication")` | search user=$user$'
|
||||
how_to_implement: To successfully implement this search you need to be ingesting authentication
|
||||
logs from your various systems and populating the Authentication data model.
|
||||
known_false_positives: ''
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Credential Dumping
|
||||
@@ -28,5 +29,3 @@ tags:
|
||||
- Authentication.action
|
||||
- Authentication.user
|
||||
security_domain: endpoint
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -1,22 +1,23 @@
|
||||
author: Patrick Bareiss, Splunk
|
||||
datamodel: []
|
||||
name: Investigate Pass the Hash Attempts
|
||||
id: ed3fff45-cba6-4990-983f-6fac72bee659
|
||||
version: 1
|
||||
date: '2019-12-10'
|
||||
author: Patrick Bareiss, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search hunts for dumped NTLM hashes used for pass the hash.
|
||||
search: '`wineventlog_security` EventCode=4624 Logon_Type=9 AuthenticationPackageName=Negotiate
|
||||
| stats count earliest(_time) as first_login latest(_time) as last_login by src_user
|
||||
dest | `security_content_ctime(first_login)` | `security_content_ctime(last_login)`
|
||||
| search dest=$dest$'
|
||||
how_to_implement: To successfully implement this search you need be ingesting windows
|
||||
security logs. This search uses an input macro named `wineventlog_security`. We
|
||||
strongly recommend that you specify your environment-specific configurations (index,
|
||||
source, sourcetype, etc.) for Windows Security logs. Replace the macro definition
|
||||
with configurations for your Splunk environment. The search also uses a post-filter
|
||||
macro designed to filter out known false positives.
|
||||
id: ed3fff45-cba6-4990-983f-6fac72bee659
|
||||
inputs:
|
||||
- dest
|
||||
known_false_positives: ''
|
||||
name: Investigate Pass the Hash Attempts
|
||||
search: '`wineventlog_security` EventCode=4624 Logon_Type=9 AuthenticationPackageName=Negotiate
|
||||
| stats count earliest(_time) as first_login latest(_time) as last_login by src_user
|
||||
dest | `security_content_ctime(first_login)` | `security_content_ctime(last_login)`
|
||||
| search dest=$dest$'
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Credential Dumping
|
||||
@@ -30,5 +31,3 @@ tags:
|
||||
- src_user
|
||||
- dest
|
||||
security_domain: endpoint
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -1,22 +1,23 @@
|
||||
author: Patrick Bareiss, Splunk
|
||||
datamodel: []
|
||||
name: Investigate Pass the Ticket Attempts
|
||||
id: 990007ad-d798-4b29-ab2f-f0034144c937
|
||||
version: 1
|
||||
date: '2019-12-10'
|
||||
author: Patrick Bareiss, Splunk
|
||||
type: Investigation
|
||||
datamodel: []
|
||||
description: This search hunts for dumped kerberos ticket from LSASS memory.
|
||||
search: '`wineventlog_security` EventCode=4768 OR EventCode=4769 | rex field=user
|
||||
"(?<new_user>[^\@]+)" | stats count BY new_user, dest, EventCode | stats max(count)
|
||||
AS max_count sum(count) AS sum_count BY new_user, dest| search dest=$dest$ | where
|
||||
sum_count/max_count!=2 | rename new_user AS user '
|
||||
how_to_implement: To successfully implement this search you need to be ingesting windows
|
||||
security logs. This search uses an input macro named `wineventlog_security`. We
|
||||
strongly recommend that you specify your environment-specific configurations (index,
|
||||
source, sourcetype, etc.) for Windows Security logs. Replace the macro definition
|
||||
with configurations for your Splunk environment. The search also uses a post-filter
|
||||
macro designed to filter out known false positives.
|
||||
id: 990007ad-d798-4b29-ab2f-f0034144c937
|
||||
inputs:
|
||||
- dest
|
||||
known_false_positives: ''
|
||||
name: Investigate Pass the Ticket Attempts
|
||||
search: '`wineventlog_security` EventCode=4768 OR EventCode=4769 | rex field=user
|
||||
"(?<new_user>[^\@]+)" | stats count BY new_user, dest, EventCode | stats max(count)
|
||||
AS max_count sum(count) AS sum_count BY new_user, dest| search dest=$dest$ | where
|
||||
sum_count/max_count!=2 | rename new_user AS user '
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Credential Dumping
|
||||
@@ -28,5 +29,3 @@ tags:
|
||||
- user
|
||||
- dest
|
||||
security_domain: endpoint
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -1,16 +1,13 @@
|
||||
author: Patrick Bareiss, Splunk
|
||||
datamodel:
|
||||
- Authentication
|
||||
name: Investigate Previous Unseen User
|
||||
id: 5de385bf-4f1e-404e-9b67-92d162ff8938ad
|
||||
version: 1
|
||||
date: '2019-12-10'
|
||||
author: Patrick Bareiss, Splunk
|
||||
type: Investigation
|
||||
datamodel:
|
||||
- Authentication
|
||||
description: This search returns previous unseen user, which didn't log in for 30
|
||||
days.
|
||||
how_to_implement: To successfully implement this search you need to be ingesting authentication
|
||||
logs from your various systems and populating the Authentication data model.
|
||||
id: 5de385bf-4f1e-404e-9b67-92d162ff8938ad
|
||||
inputs:
|
||||
- dest
|
||||
known_false_positives: ''
|
||||
name: Investigate Previous Unseen User
|
||||
search: '| tstats count `security_content_summariesonly` earliest(_time) as first_login
|
||||
latest(_time) as last_login values(Authentication.dest) AS Authentication.dest values(Authentication.app)
|
||||
AS Authentication.app values(Authentication.action) AS Authentication.action from
|
||||
@@ -20,6 +17,10 @@ search: '| tstats count `security_content_summariesonly` earliest(_time) as firs
|
||||
| where count=1 | where first_login >= relative_time(now(), "-30d") | `security_content_ctime(first_login)`
|
||||
| `security_content_ctime(last_login)` | `drop_dm_object_name("Authentication")`
|
||||
| search dest=$dest$'
|
||||
how_to_implement: To successfully implement this search you need to be ingesting authentication
|
||||
logs from your various systems and populating the Authentication data model.
|
||||
known_false_positives: ''
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Credential Dumping
|
||||
@@ -32,5 +33,3 @@ tags:
|
||||
- Authentication.action
|
||||
- Authentication.user
|
||||
security_domain: endpoint
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -1,17 +1,14 @@
|
||||
author: Jose Hernandez, Splunk
|
||||
datamodel:
|
||||
- Authentication
|
||||
name: Investigate Successful Remote Desktop Authentications
|
||||
id: b6618e8e-be04-40a0-a0b9-f0bd4b6c81bc
|
||||
version: 1
|
||||
date: '2018-12-14'
|
||||
author: Jose Hernandez, Splunk
|
||||
type: Investigation
|
||||
datamodel:
|
||||
- Authentication
|
||||
description: 'This search returns the source, destination, and user for all successful
|
||||
remote-desktop authentications. A successful authentication after a brute-force
|
||||
attack on a destination machine is suspicious behavior. '
|
||||
how_to_implement: You must be populating the Authentication data model with security
|
||||
events from your Windows event logs.
|
||||
id: b6618e8e-be04-40a0-a0b9-f0bd4b6c81bc
|
||||
inputs:
|
||||
- dest
|
||||
known_false_positives: ''
|
||||
name: Investigate Successful Remote Desktop Authentications
|
||||
search: '| tstats `security_content_summariesonly` count min(_time) as firstTime max(_time)
|
||||
as lastTime from datamodel=Authentication where Authentication.signature_id=4624
|
||||
Authentication.app=win:remote by Authentication.src Authentication.dest Authentication.app
|
||||
@@ -19,6 +16,10 @@ search: '| tstats `security_content_summariesonly` count min(_time) as firstTime
|
||||
| `security_content_ctime(firstTime)` | `drop_dm_object_name("Authentication")`
|
||||
| search dest=$dest$ | table firstTime lastTime src src_nt_domain dest user app
|
||||
count | sort count'
|
||||
how_to_implement: You must be populating the Authentication data model with security
|
||||
events from your Windows event logs.
|
||||
known_false_positives: ''
|
||||
references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Hidden Cobra Malware
|
||||
@@ -36,5 +37,3 @@ tags:
|
||||
- Authentication.signature
|
||||
- Authentication.src_nt_domain
|
||||
security_domain: endpoint
|
||||
type: Investigation
|
||||
version: 1
|
||||
|
||||
@@ -18,14 +18,14 @@ references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Monitor Backup Solution
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
detections:
|
||||
- Unsuccessful Netbackup backups
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
- Splunk Cloud
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
required_fields:
|
||||
- _time
|
||||
security_domain: endpoint
|
||||
security_domain: endpoint
|
||||
|
||||
@@ -17,14 +17,14 @@ references: []
|
||||
tags:
|
||||
analytic_story:
|
||||
- Monitor Backup Solution
|
||||
detections:
|
||||
- Unsuccessful Netbackup backups
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
detections:
|
||||
- Unsuccessful Netbackup backups
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
- Splunk Cloud
|
||||
required_fields:
|
||||
- _time
|
||||
security_domain: endpoint
|
||||
security_domain: endpoint
|
||||
|
||||
@@ -0,0 +1,59 @@
|
||||
name: Powershell Execute COM Object
|
||||
id: 65711630-f9bf-11eb-8d72-acde48001122
|
||||
version: 1
|
||||
date: '2021-08-10'
|
||||
author: Teoderick Contreras, Splunk
|
||||
type: TTP
|
||||
datamodel:
|
||||
- Endpoint
|
||||
description: This search is to detect a COM CLSID execution through powershell. This
|
||||
technique was seen in several adversaries and malware like ransomware conti where
|
||||
it has a feature to execute command using COM Object. This technique may use by
|
||||
network operator at some cases but a good indicator if some application want to
|
||||
gain privilege escalation or bypass uac.
|
||||
search: '`powershell` EventCode=4104 Message = "*CreateInstance([type]::GetTypeFromCLSID*"
|
||||
OR Message = "*CreateInstance([Type]::GetTypeFromProgID*"| stats count min(_time)
|
||||
as firstTime max(_time) as lastTime by EventCode Message ComputerName User | `security_content_ctime(firstTime)`
|
||||
| `security_content_ctime(lastTime)` | `powershell_execute_com_object_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: network operrator may use this command.
|
||||
references:
|
||||
- https://threadreaderapp.com/thread/1423361119926816776.html
|
||||
tags:
|
||||
analytic_story:
|
||||
- Malicious PowerShell
|
||||
- Ransomware
|
||||
dataset:
|
||||
- https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/malware/conti/conti_leak/windows-powershell.log
|
||||
kill_chain_phases:
|
||||
- Exploitation
|
||||
mitre_attack_id:
|
||||
- T1546.015
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
- Splunk Cloud
|
||||
required_fields:
|
||||
- _time
|
||||
security_domain: endpoint
|
||||
impact: 10
|
||||
confidence: 50
|
||||
risk_score: 5
|
||||
context:
|
||||
- Source:Endpoint
|
||||
- Stage:Privilege Escalation
|
||||
message: A suspicious powershell script contains COM CLSID command in $Message$
|
||||
with EventCode $EventCode$ in host $ComputerName$
|
||||
observable:
|
||||
- name: ComputerName
|
||||
type: Hostname
|
||||
role:
|
||||
- Victim
|
||||
- name: User
|
||||
type: User
|
||||
role:
|
||||
- Victim
|
||||
automated_detection_testing: passed
|
||||
@@ -30,10 +30,10 @@ tags:
|
||||
- Suspicious Command-Line Executions
|
||||
- Suspicious MSHTA Activity
|
||||
- Icedid
|
||||
detections:
|
||||
- First time seen command line argument
|
||||
deployments:
|
||||
- Daily Cache Updates
|
||||
detections:
|
||||
- First time seen command line argument
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
@@ -42,4 +42,4 @@ tags:
|
||||
- _time
|
||||
- Processes.process_name
|
||||
- Processes.process
|
||||
security_domain: endpoint
|
||||
security_domain: endpoint
|
||||
|
||||
@@ -32,4 +32,4 @@ tags:
|
||||
- _time
|
||||
- EventCode
|
||||
- Message
|
||||
security_domain: endpoint
|
||||
security_domain: endpoint
|
||||
|
||||
@@ -37,4 +37,4 @@ tags:
|
||||
- _time
|
||||
- EventCode
|
||||
- Message
|
||||
security_domain: endpoint
|
||||
security_domain: endpoint
|
||||
|
||||
@@ -35,4 +35,4 @@ tags:
|
||||
- Processes.parent_process_name
|
||||
- Processes.process_name
|
||||
- Processes.dest
|
||||
security_domain: endpoint
|
||||
security_domain: endpoint
|
||||
|
||||
@@ -40,4 +40,4 @@ tags:
|
||||
- Processes.parent_process_name
|
||||
- Processes.process_name
|
||||
- Processes.dest
|
||||
security_domain: endpoint
|
||||
security_domain: endpoint
|
||||
|
||||
@@ -0,0 +1,66 @@
|
||||
name: Rundll32 LockWorkStation
|
||||
id: fa90f372-f91d-11eb-816c-acde48001122
|
||||
version: 1
|
||||
date: '2021-08-09'
|
||||
author: Teoderick Contreras, Splunk
|
||||
type: Investigation
|
||||
datamodel:
|
||||
- Endpoint
|
||||
description: This search is to detect a suspicious rundll32 commandline to lock the
|
||||
workstation through command line. This technique was seen in CONTI leak tooling
|
||||
and script as part of its defense evasion. This technique is not a common practice
|
||||
to lock a screen and maybe a good indicator of compromise.
|
||||
search: '| tstats `security_content_summariesonly` count min(_time) as firstTime max(_time)
|
||||
as lastTime from datamodel=Endpoint.Processes where Processes.process_name=rundll32.exe
|
||||
Processes.process= "*user32.dll,LockWorkStation*" by Processes.dest Processes.user
|
||||
Processes.parent_process Processes.process_name Processes.process Processes.process_id
|
||||
Processes.parent_process_id Processes.parent_process_name | `drop_dm_object_name(Processes)`
|
||||
| `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)` | `rundll32_lockworkstation_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 where renamed rundll32.exe may be used.
|
||||
known_false_positives: unknown
|
||||
references:
|
||||
- https://threadreaderapp.com/thread/1423361119926816776.html
|
||||
tags:
|
||||
analytic_story:
|
||||
- Ransomware
|
||||
dataset:
|
||||
- https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/malware/conti/conti_leak/windows-sysmon.log
|
||||
kill_chain_phases:
|
||||
- Exploitation
|
||||
mitre_attack_id:
|
||||
- T1218.011
|
||||
product:
|
||||
- Splunk Enterprise
|
||||
- Splunk Enterprise Security
|
||||
- Splunk Cloud
|
||||
required_fields:
|
||||
- _time
|
||||
- Processes.dest
|
||||
- Processes.user
|
||||
- Processes.parent_process
|
||||
- Processes.parent_process_name
|
||||
- Processes.process_name
|
||||
- Processes.process
|
||||
- Processes.process_id
|
||||
- Processes.parent_process_id
|
||||
security_domain: endpoint
|
||||
impact: 50
|
||||
confidence: 50
|
||||
risk_score: 25
|
||||
context:
|
||||
- Source:Endpoint
|
||||
- Stage:Execution
|
||||
message: process $process_name$ with cmdline $process$ in host $dest$
|
||||
observable:
|
||||
- name: dest
|
||||
type: Hostname
|
||||
role:
|
||||
- Victim
|
||||
- name: SourceImage
|
||||
type: process name
|
||||
role:
|
||||
- Attacker
|
||||
automated_detection_testing: passed
|
||||
@@ -31,10 +31,20 @@ tags:
|
||||
cis20:
|
||||
- CIS 16
|
||||
- CIS 20
|
||||
confidence: 100
|
||||
context:
|
||||
- Source:AD
|
||||
- Source:Endpoint
|
||||
- Stage:Credential Access
|
||||
dataset:
|
||||
- https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1555/applying_stolen_credentials/logAllMimikatzModules.log
|
||||
impact: 90
|
||||
kill_chain_phases:
|
||||
- Actions on Objectives
|
||||
message: Mimikatz malware is violating authentication processes by injecting golden
|
||||
or silver Kerberos tickets or passing stolen authentication tokens. Operation
|
||||
is performed at the device $dest_device_id$, by the account $dest_user_id$ via
|
||||
command $cmd_line$
|
||||
mitre_attack_id:
|
||||
- T1055
|
||||
- T1068
|
||||
@@ -50,23 +60,6 @@ tags:
|
||||
nist:
|
||||
- PR.AC
|
||||
- PR.IP
|
||||
product:
|
||||
- Splunk Behavioral Analytics
|
||||
required_fields:
|
||||
- dest_device_id
|
||||
- dest_user_id
|
||||
- process
|
||||
- _time
|
||||
risk_severity: high
|
||||
security_domain: endpoint
|
||||
message: Mimikatz malware is violating authentication processes by injecting golden or silver Kerberos tickets or passing stolen authentication tokens. Operation is performed at the device $dest_device_id$, by the account $dest_user_id$ via command $cmd_line$
|
||||
risk_score: 90
|
||||
impact: 90
|
||||
confidence: 100
|
||||
context:
|
||||
- Source:AD
|
||||
- Source:Endpoint
|
||||
- Stage:Credential Access
|
||||
observable:
|
||||
- name: dest_user_id
|
||||
type: User
|
||||
@@ -80,4 +73,13 @@ tags:
|
||||
type: processname
|
||||
role:
|
||||
- Others
|
||||
|
||||
product:
|
||||
- Splunk Behavioral Analytics
|
||||
required_fields:
|
||||
- dest_device_id
|
||||
- dest_user_id
|
||||
- process
|
||||
- _time
|
||||
risk_score: 90
|
||||
risk_severity: high
|
||||
security_domain: endpoint
|
||||
|
||||
@@ -35,10 +35,20 @@ tags:
|
||||
cis20:
|
||||
- CIS 16
|
||||
- CIS 20
|
||||
confidence: 100
|
||||
context:
|
||||
- Source:AD
|
||||
- Source:Endpoint
|
||||
- Stage:Credential Access
|
||||
dataset:
|
||||
- https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1555/applying_stolen_credentials/logAllPowerSploitModulesWithOldNames.log
|
||||
impact: 90
|
||||
kill_chain_phases:
|
||||
- Actions on Objectives
|
||||
message: PowerSploit malware is violating authentication by injecting stolen credentials,
|
||||
manipulating authentication tokens or impersonating system or user accounts. Operation
|
||||
is performed at the device $dest_device_id$, by the account $dest_user_id$ via
|
||||
command $cmd_line$
|
||||
mitre_attack_id:
|
||||
- T1055
|
||||
- T1068
|
||||
@@ -54,23 +64,6 @@ tags:
|
||||
nist:
|
||||
- PR.AC
|
||||
- PR.IP
|
||||
product:
|
||||
- Splunk Behavioral Analytics
|
||||
required_fields:
|
||||
- dest_device_id
|
||||
- dest_user_id
|
||||
- process
|
||||
- _time
|
||||
risk_severity: high
|
||||
security_domain: endpoint
|
||||
message: PowerSploit malware is violating authentication by injecting stolen credentials, manipulating authentication tokens or impersonating system or user accounts. Operation is performed at the device $dest_device_id$, by the account $dest_user_id$ via command $cmd_line$
|
||||
risk_score: 90
|
||||
impact: 90
|
||||
confidence: 100
|
||||
context:
|
||||
- Source:AD
|
||||
- Source:Endpoint
|
||||
- Stage:Credential Access
|
||||
observable:
|
||||
- name: dest_user_id
|
||||
type: User
|
||||
@@ -84,4 +77,13 @@ tags:
|
||||
type: processname
|
||||
role:
|
||||
- Others
|
||||
|
||||
product:
|
||||
- Splunk Behavioral Analytics
|
||||
required_fields:
|
||||
- dest_device_id
|
||||
- dest_user_id
|
||||
- process
|
||||
- _time
|
||||
risk_score: 90
|
||||
risk_severity: high
|
||||
security_domain: endpoint
|
||||
|
||||
@@ -30,8 +30,17 @@ tags:
|
||||
cis20:
|
||||
- CIS 16
|
||||
- CIS 20
|
||||
confidence: 85
|
||||
context:
|
||||
- Source:AD
|
||||
- Source:Endpoint
|
||||
- Stage:Recon
|
||||
- Stage:Credential Access
|
||||
impact: 30
|
||||
kill_chain_phases:
|
||||
- Actions on Objectives
|
||||
message: DSInternals tool kit is assessing password strength at the device $dest_device_id$.
|
||||
Account attempting this operation is $dest_user_id$ via command $cmd_line$
|
||||
mitre_attack_id:
|
||||
- T1078
|
||||
- T1098
|
||||
@@ -42,24 +51,6 @@ tags:
|
||||
nist:
|
||||
- PR.AC
|
||||
- PR.IP
|
||||
product:
|
||||
- Splunk Behavioral Analytics
|
||||
required_fields:
|
||||
- _time
|
||||
- process
|
||||
- dest_device_id
|
||||
- dest_user_id
|
||||
risk_severity: high
|
||||
security_domain: endpoint
|
||||
message: DSInternals tool kit is assessing password strength at the device $dest_device_id$. Account attempting this operation is $dest_user_id$ via command $cmd_line$
|
||||
risk_score: 25
|
||||
impact: 30
|
||||
confidence: 85
|
||||
context:
|
||||
- Source:AD
|
||||
- Source:Endpoint
|
||||
- Stage:Recon
|
||||
- Stage:Credential Access
|
||||
observable:
|
||||
- name: dest_user_id
|
||||
type: User
|
||||
@@ -73,3 +64,13 @@ tags:
|
||||
type: processname
|
||||
role:
|
||||
- Others
|
||||
product:
|
||||
- Splunk Behavioral Analytics
|
||||
required_fields:
|
||||
- _time
|
||||
- process
|
||||
- dest_device_id
|
||||
- dest_user_id
|
||||
risk_score: 25
|
||||
risk_severity: high
|
||||
security_domain: endpoint
|
||||
|
||||
@@ -34,30 +34,21 @@ tags:
|
||||
- CIS 3
|
||||
- CIS 5
|
||||
- CIS 16
|
||||
kill_chain_phases:
|
||||
- Actions on Objectives
|
||||
mitre_attack_id:
|
||||
- T1003
|
||||
nist:
|
||||
- DE.CM
|
||||
product:
|
||||
- Splunk Behavioral Analytics
|
||||
required_fields:
|
||||
- process_name
|
||||
- _time
|
||||
- dest_device_id
|
||||
- dest_user_id
|
||||
- process
|
||||
risk_severity: low
|
||||
security_domain: endpoint
|
||||
message: Malicious actor is dumping stored credentials from the registry sections SAM, Security, or System. Operation is performed at the device $dest_device_id$, by the account $dest_user_id$ via command $cmd_line$
|
||||
risk_score: 63
|
||||
impact: 70
|
||||
confidence: 90
|
||||
context:
|
||||
- Source:AD
|
||||
- Source:Endpoint
|
||||
- Stage:Credential Access
|
||||
impact: 70
|
||||
kill_chain_phases:
|
||||
- Actions on Objectives
|
||||
message: Malicious actor is dumping stored credentials from the registry sections
|
||||
SAM, Security, or System. Operation is performed at the device $dest_device_id$,
|
||||
by the account $dest_user_id$ via command $cmd_line$
|
||||
mitre_attack_id:
|
||||
- T1003
|
||||
nist:
|
||||
- DE.CM
|
||||
observable:
|
||||
- name: dest_user_id
|
||||
type: User
|
||||
@@ -71,3 +62,14 @@ tags:
|
||||
type: processname
|
||||
role:
|
||||
- Others
|
||||
product:
|
||||
- Splunk Behavioral Analytics
|
||||
required_fields:
|
||||
- process_name
|
||||
- _time
|
||||
- dest_device_id
|
||||
- dest_user_id
|
||||
- process
|
||||
risk_score: 63
|
||||
risk_severity: low
|
||||
security_domain: endpoint
|
||||
|
||||
+26
-24
@@ -41,35 +41,24 @@ tags:
|
||||
asset_type: Windows
|
||||
cis20:
|
||||
- CIS 16
|
||||
dataset:
|
||||
- https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1003/credential_extraction/logAllDSInternalsModules.log
|
||||
kill_chain_phases:
|
||||
- Actions on Objectives
|
||||
mitre_attack_id:
|
||||
- T1003
|
||||
nist:
|
||||
- PR.AC
|
||||
- PR.IP
|
||||
product:
|
||||
- Splunk Behavioral Analytics
|
||||
required_fields:
|
||||
- dest_device_id
|
||||
- process_name
|
||||
- parent_process_name
|
||||
- _time
|
||||
- process_path
|
||||
- dest_user_id
|
||||
- process
|
||||
risk_severity: high
|
||||
security_domain: endpoint
|
||||
message: DSInternals tool kit is converting stolen credential material to a form applicable to authentications. Operation is performed at the device $dest_device_id$, by the account $dest_user_id$ via command $cmd_line$
|
||||
risk_score: 70
|
||||
impact: 70
|
||||
confidence: 100
|
||||
context:
|
||||
- Source:AD
|
||||
- Source:Endpoint
|
||||
- Stage:Credential Access
|
||||
dataset:
|
||||
- https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1003/credential_extraction/logAllDSInternalsModules.log
|
||||
impact: 70
|
||||
kill_chain_phases:
|
||||
- Actions on Objectives
|
||||
message: DSInternals tool kit is converting stolen credential material to a form
|
||||
applicable to authentications. Operation is performed at the device $dest_device_id$,
|
||||
by the account $dest_user_id$ via command $cmd_line$
|
||||
mitre_attack_id:
|
||||
- T1003
|
||||
nist:
|
||||
- PR.AC
|
||||
- PR.IP
|
||||
observable:
|
||||
- name: dest_user_id
|
||||
type: User
|
||||
@@ -83,3 +72,16 @@ tags:
|
||||
type: processname
|
||||
role:
|
||||
- Others
|
||||
product:
|
||||
- Splunk Behavioral Analytics
|
||||
required_fields:
|
||||
- dest_device_id
|
||||
- process_name
|
||||
- parent_process_name
|
||||
- _time
|
||||
- process_path
|
||||
- dest_user_id
|
||||
- process
|
||||
risk_score: 70
|
||||
risk_severity: high
|
||||
security_domain: endpoint
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user