mirror of
https://github.com/splunk/security_content
synced 2026-06-08 17:32:49 +00:00
improvements ssa detections
This commit is contained in:
@@ -183,7 +183,7 @@ class SigmaConverter():
|
||||
)
|
||||
)
|
||||
|
||||
detection = self.convert_detection_fields(detection, field_mapping)
|
||||
detection = self.convert_detection_fields(detection, field_mapping_underline)
|
||||
sigma_rule = self.get_sigma_rule(detection, data_source)
|
||||
sigma_processing_pipeline = self.get_pipeline_from_processing_items(processing_items)
|
||||
|
||||
|
||||
+3
-3
@@ -7,8 +7,8 @@ search: ' | from read_ba_enriched_events() | eval timestamp = ucast(map_get(inpu
|
||||
null) | eval metadata = ucast(map_get(input_event, "metadata"),"map<string, any>",
|
||||
null) | eval metadata_uid = ucast(map_get(metadata, "uid"),"string", null) | eval
|
||||
process=ucast(map_get(input_event,"process"), "map<string, any>", null) | eval process_pid=ucast(map_get(process,"pid"),
|
||||
"string", null) | eval process_file=ucast(map_get(process,"file"), "map<string,any>", null)
|
||||
| eval process_file_path=ucast(map_get(process_file,"path"), "string",
|
||||
"string", null) | eval process_file=ucast(map_get(process,"file"), "map<string,
|
||||
any>", null) | eval process_file_path=ucast(map_get(process_file,"path"), "string",
|
||||
null) | eval process_file_name=ucast(map_get(process_file,"name"), "string", null)
|
||||
| eval process_cmd_line=ucast(map_get(process,"cmd_line"), "string", null) | eval
|
||||
process_user=ucast(map_get(process,"user"), "map<string, any>", null) | eval process_user_name=ucast(map_get(process_user,"name"),
|
||||
@@ -20,7 +20,7 @@ search: ' | from read_ba_enriched_events() | eval timestamp = ucast(map_get(inpu
|
||||
null) | eval actor_process_file_name=ucast(map_get(actor_process_file,"name"), "string",
|
||||
null) | eval device=ucast(map_get(input_event,"device"), "map<string, any>", null)
|
||||
| eval device_hostname=ucast(map_get(device,"hostname"), "string", null) | where
|
||||
(process.file.name="WinRAR.exe" OR like(process_file_name, "7z%") OR like(process_file_name,
|
||||
(process_file_name="WinRAR.exe" OR like(process_file_name, "7z%") OR like(process_file_name,
|
||||
"winzip%")) AND (like(actor_process_file_name, "%powershell.exe") OR like(actor_process_file_name,
|
||||
"%cmd.exe"))
|
||||
| eval body=create_map(
|
||||
|
||||
+1
-1
@@ -23,7 +23,7 @@ search: ' | from read_ba_enriched_events() | eval timestamp = ucast(map_get(inpu
|
||||
null) | eval actor_process_file_name=ucast(map_get(actor_process_file,"name"), "string",
|
||||
null) | eval device=ucast(map_get(input_event,"device"), "map<string, any>", null)
|
||||
| eval device_hostname=ucast(map_get(device,"hostname"), "string", null) | where
|
||||
process_file_name="sc.exe" AND like(process_cmd_line, "%delete%")
|
||||
like(process_cmd_line, "%delete%") AND process_file_name="sc.exe"
|
||||
| eval body=create_map(
|
||||
"devices", [
|
||||
create_map(
|
||||
|
||||
@@ -21,7 +21,7 @@ search: ' | from read_ba_enriched_events() | eval timestamp = ucast(map_get(inpu
|
||||
null) | eval actor_process_file_name=ucast(map_get(actor_process_file,"name"), "string",
|
||||
null) | eval device=ucast(map_get(input_event,"device"), "map<string, any>", null)
|
||||
| eval device_hostname=ucast(map_get(device,"hostname"), "string", null) | where
|
||||
process_file_name="cipher.exe" AND like(process_cmd_line, "%/W:%")
|
||||
like(process_cmd_line, "%/W:%") AND process_file_name="cipher.exe"
|
||||
| eval body=create_map(
|
||||
"devices", [
|
||||
create_map(
|
||||
|
||||
@@ -22,8 +22,8 @@ search: ' | from read_ba_enriched_events() | eval timestamp = ucast(map_get(inpu
|
||||
null) | eval actor_process_file_name=ucast(map_get(actor_process_file,"name"), "string",
|
||||
null) | eval device=ucast(map_get(input_event,"device"), "map<string, any>", null)
|
||||
| eval device_hostname=ucast(map_get(device,"hostname"), "string", null) | where
|
||||
(process_file_name="icacls.exe" OR process_file_name="xcacls.exe" OR process_file_name="cacls.exe")
|
||||
AND match_regex(process_cmd_line, /(?i)deny/)=true
|
||||
match_regex(process_cmd_line, /(?i)deny/)=true AND (process_file_name="icacls.exe"
|
||||
OR process_file_name="xcacls.exe" OR process_file_name="cacls.exe")
|
||||
| eval body=create_map(
|
||||
"devices", [
|
||||
create_map(
|
||||
|
||||
@@ -22,8 +22,8 @@ search: ' | from read_ba_enriched_events() | eval timestamp = ucast(map_get(inpu
|
||||
null) | eval actor_process_file_name=ucast(map_get(actor_process_file,"name"), "string",
|
||||
null) | eval device=ucast(map_get(input_event,"device"), "map<string, any>", null)
|
||||
| eval device_hostname=ucast(map_get(device,"hostname"), "string", null) | where
|
||||
(process_file_name="icacls.exe" OR process_file_name="xcacls.exe" OR process_file_name="cacls.exe")
|
||||
AND match_regex(process_cmd_line, /(?i)grant/)=true
|
||||
match_regex(process_cmd_line, /(?i)grant/)=true AND (process_file_name="icacls.exe"
|
||||
OR process_file_name="xcacls.exe" OR process_file_name="cacls.exe")
|
||||
| eval body=create_map(
|
||||
"devices", [
|
||||
create_map(
|
||||
|
||||
@@ -22,7 +22,7 @@ search: ' | from read_ba_enriched_events() | eval timestamp = ucast(map_get(inpu
|
||||
null) | eval actor_process_file_name=ucast(map_get(actor_process_file,"name"), "string",
|
||||
null) | eval device=ucast(map_get(input_event,"device"), "map<string, any>", null)
|
||||
| eval device_hostname=ucast(map_get(device,"hostname"), "string", null) | where
|
||||
process_file_name="attrib.exe" AND match_regex(process_cmd_line, /(?i)/)=true
|
||||
match_regex(process_cmd_line, /(?i)/)=true AND process_file_name="attrib.exe"
|
||||
| eval body=create_map(
|
||||
"devices", [
|
||||
create_map(
|
||||
|
||||
@@ -21,10 +21,10 @@ search: ' | from read_ba_enriched_events() | eval timestamp = ucast(map_get(inpu
|
||||
null) | eval actor_process_file_name=ucast(map_get(actor_process_file,"name"), "string",
|
||||
null) | eval device=ucast(map_get(input_event,"device"), "map<string, any>", null)
|
||||
| eval device_hostname=ucast(map_get(device,"hostname"), "string", null) | where
|
||||
(process_file_name="cscript.exe" OR process_file_name="wscript.exe") AND (match_regex(actor_process_file_name,
|
||||
/(?i)visio.exe/)=true OR match_regex(actor_process_file_name, /(?i)mspub.exe/)=true
|
||||
OR match_regex(actor_process_file_name, /(?i)powerpnt.exe/)=true OR match_regex(actor_process_file_name,
|
||||
/(?i)excel.exe/)=true OR match_regex(actor_process_file_name, /(?i)winword.exe/)=true)
|
||||
(match_regex(actor_process_file_name, /(?i)visio.exe/)=true OR match_regex(actor_process_file_name,
|
||||
/(?i)mspub.exe/)=true OR match_regex(actor_process_file_name, /(?i)powerpnt.exe/)=true
|
||||
OR match_regex(actor_process_file_name, /(?i)excel.exe/)=true OR match_regex(actor_process_file_name,
|
||||
/(?i)winword.exe/)=true) AND (process_file_name="cscript.exe" OR process_file_name="wscript.exe")
|
||||
|
||||
| eval body=create_map(
|
||||
"devices", [
|
||||
|
||||
+3
-3
@@ -22,11 +22,11 @@ search: ' | from read_ba_enriched_events() | eval timestamp = ucast(map_get(inpu
|
||||
null) | eval actor_process_file_name=ucast(map_get(actor_process_file,"name"), "string",
|
||||
null) | eval device=ucast(map_get(input_event,"device"), "map<string, any>", null)
|
||||
| eval device_hostname=ucast(map_get(device,"hostname"), "string", null) | where
|
||||
(process_file_name="wscript.exe" OR process_file_name="cscript.exe" OR process_file_name="searchprotocolhost.exe"
|
||||
like(actor_process_file_name, "%mshta.exe") AND (process_file_name="wscript.exe"
|
||||
OR process_file_name="cscript.exe" OR process_file_name="searchprotocolhost.exe"
|
||||
OR process_file_name="microsoft.workflow.compiler.exe" OR process_file_name="msbuild.exe"
|
||||
OR process_file_name="colorcpl.exe" OR process_file_name="scrcons.exe" OR process_file_name="cmd.exe"
|
||||
OR process_file_name="powershell.exe") AND like(actor_process_file_name, "%mshta.exe")
|
||||
|
||||
OR process_file_name="powershell.exe")
|
||||
| eval body=create_map(
|
||||
"devices", [
|
||||
create_map(
|
||||
|
||||
@@ -24,8 +24,8 @@ search: ' | from read_ba_enriched_events() | eval timestamp = ucast(map_get(inpu
|
||||
null) | eval actor_process_file_name=ucast(map_get(actor_process_file,"name"), "string",
|
||||
null) | eval device=ucast(map_get(input_event,"device"), "map<string, any>", null)
|
||||
| eval device_hostname=ucast(map_get(device,"hostname"), "string", null) | where
|
||||
process_file_name="MSBuild.exe" AND (match_regex(actor_process_file_name, /(?i)cscript.exe/)=true
|
||||
OR match_regex(actor_process_file_name, /(?i)wscript.exe/)=true)
|
||||
(match_regex(actor_process_file_name, /(?i)cscript.exe/)=true OR match_regex(actor_process_file_name,
|
||||
/(?i)wscript.exe/)=true) AND process_file_name="MSBuild.exe"
|
||||
| eval body=create_map(
|
||||
"devices", [
|
||||
create_map(
|
||||
|
||||
+1
-1
@@ -25,7 +25,7 @@ search: ' | from read_ba_enriched_events() | eval timestamp = ucast(map_get(inpu
|
||||
null) | eval actor_process_file_name=ucast(map_get(actor_process_file,"name"), "string",
|
||||
null) | eval device=ucast(map_get(input_event,"device"), "map<string, any>", null)
|
||||
| eval device_hostname=ucast(map_get(device,"hostname"), "string", null) | where
|
||||
process_file_name="MSBuild.exe" AND match_regex(actor_process_file_name, /(?i)wmiprvse.exe/)=true
|
||||
match_regex(actor_process_file_name, /(?i)wmiprvse.exe/)=true AND process_file_name="MSBuild.exe"
|
||||
|
||||
| eval body=create_map(
|
||||
"devices", [
|
||||
|
||||
@@ -26,7 +26,7 @@ search: ' | from read_ba_enriched_events() | eval timestamp = ucast(map_get(inpu
|
||||
null) | eval actor_process_file_name=ucast(map_get(actor_process_file,"name"), "string",
|
||||
null) | eval device=ucast(map_get(input_event,"device"), "map<string, any>", null)
|
||||
| eval device_hostname=ucast(map_get(device,"hostname"), "string", null) | where
|
||||
(process.file.name="WinRAR.exe" OR like(process_file_name, "7z%") OR like(process_file_name,
|
||||
(process_file_name="WinRAR.exe" OR like(process_file_name, "7z%") OR like(process_file_name,
|
||||
"winzip%")) AND (like(actor_process_file_name, "%powershell.exe") OR like(actor_process_file_name,
|
||||
"%cmd.exe")) --finding_report--'
|
||||
how_to_implement: To successfully implement this search you need to be ingesting information
|
||||
|
||||
@@ -29,7 +29,7 @@ search: ' | from read_ba_enriched_events() | eval timestamp = ucast(map_get(inpu
|
||||
null) | eval actor_process_file_name=ucast(map_get(actor_process_file,"name"), "string",
|
||||
null) | eval device=ucast(map_get(input_event,"device"), "map<string, any>", null)
|
||||
| eval device_hostname=ucast(map_get(device,"hostname"), "string", null) | where
|
||||
process_file_name="sc.exe" AND like(process_cmd_line, "%delete%") --finding_report--'
|
||||
like(process_cmd_line, "%delete%") AND process_file_name="sc.exe" --finding_report--'
|
||||
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
|
||||
@@ -58,7 +58,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -58,7 +58,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
+1
-1
@@ -58,7 +58,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -54,7 +54,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -27,7 +27,7 @@ search: ' | from read_ba_enriched_events() | eval timestamp = ucast(map_get(inpu
|
||||
null) | eval actor_process_file_name=ucast(map_get(actor_process_file,"name"), "string",
|
||||
null) | eval device=ucast(map_get(input_event,"device"), "map<string, any>", null)
|
||||
| eval device_hostname=ucast(map_get(device,"hostname"), "string", null) | where
|
||||
process_file_name="cipher.exe" AND like(process_cmd_line, "%/W:%") --finding_report--'
|
||||
like(process_cmd_line, "%/W:%") AND process_file_name="cipher.exe" --finding_report--'
|
||||
how_to_implement: To successfully implement this search you need to be ingesting information
|
||||
on process that include the name of the process responsible for the changes from
|
||||
your endpoints into the `Endpoint` datamodel in the `Processes` node.
|
||||
@@ -54,7 +54,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -58,7 +58,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -28,8 +28,8 @@ search: ' | from read_ba_enriched_events() | eval timestamp = ucast(map_get(inpu
|
||||
null) | eval actor_process_file_name=ucast(map_get(actor_process_file,"name"), "string",
|
||||
null) | eval device=ucast(map_get(input_event,"device"), "map<string, any>", null)
|
||||
| eval device_hostname=ucast(map_get(device,"hostname"), "string", null) | where
|
||||
(process_file_name="icacls.exe" OR process_file_name="xcacls.exe" OR process_file_name="cacls.exe")
|
||||
AND match_regex(process_cmd_line, /(?i)deny/)=true --finding_report--'
|
||||
match_regex(process_cmd_line, /(?i)deny/)=true AND (process_file_name="icacls.exe"
|
||||
OR process_file_name="xcacls.exe" OR process_file_name="cacls.exe") --finding_report--'
|
||||
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
|
||||
@@ -55,7 +55,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -66,7 +66,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -57,7 +57,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -62,7 +62,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -56,7 +56,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -28,8 +28,8 @@ search: ' | from read_ba_enriched_events() | eval timestamp = ucast(map_get(inpu
|
||||
null) | eval actor_process_file_name=ucast(map_get(actor_process_file,"name"), "string",
|
||||
null) | eval device=ucast(map_get(input_event,"device"), "map<string, any>", null)
|
||||
| eval device_hostname=ucast(map_get(device,"hostname"), "string", null) | where
|
||||
(process_file_name="icacls.exe" OR process_file_name="xcacls.exe" OR process_file_name="cacls.exe")
|
||||
AND match_regex(process_cmd_line, /(?i)grant/)=true --finding_report--'
|
||||
match_regex(process_cmd_line, /(?i)grant/)=true AND (process_file_name="icacls.exe"
|
||||
OR process_file_name="xcacls.exe" OR process_file_name="cacls.exe") --finding_report--'
|
||||
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
|
||||
@@ -55,7 +55,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -28,7 +28,7 @@ search: ' | from read_ba_enriched_events() | eval timestamp = ucast(map_get(inpu
|
||||
null) | eval actor_process_file_name=ucast(map_get(actor_process_file,"name"), "string",
|
||||
null) | eval device=ucast(map_get(input_event,"device"), "map<string, any>", null)
|
||||
| eval device_hostname=ucast(map_get(device,"hostname"), "string", null) | where
|
||||
process_file_name="attrib.exe" AND match_regex(process_cmd_line, /(?i)/)=true --finding_report--'
|
||||
match_regex(process_cmd_line, /(?i)/)=true AND process_file_name="attrib.exe" --finding_report--'
|
||||
how_to_implement: You must be ingesting data that records process activity from your
|
||||
hosts to populate the Endpoint data model in the Processes node. You must also be
|
||||
ingesting logs with both the process name and command line from your endpoints.
|
||||
@@ -57,7 +57,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -58,7 +58,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -27,10 +27,10 @@ search: ' | from read_ba_enriched_events() | eval timestamp = ucast(map_get(inpu
|
||||
null) | eval actor_process_file_name=ucast(map_get(actor_process_file,"name"), "string",
|
||||
null) | eval device=ucast(map_get(input_event,"device"), "map<string, any>", null)
|
||||
| eval device_hostname=ucast(map_get(device,"hostname"), "string", null) | where
|
||||
(process_file_name="cscript.exe" OR process_file_name="wscript.exe") AND (match_regex(actor_process_file_name,
|
||||
/(?i)visio.exe/)=true OR match_regex(actor_process_file_name, /(?i)mspub.exe/)=true
|
||||
OR match_regex(actor_process_file_name, /(?i)powerpnt.exe/)=true OR match_regex(actor_process_file_name,
|
||||
/(?i)excel.exe/)=true OR match_regex(actor_process_file_name, /(?i)winword.exe/)=true)
|
||||
(match_regex(actor_process_file_name, /(?i)visio.exe/)=true OR match_regex(actor_process_file_name,
|
||||
/(?i)mspub.exe/)=true OR match_regex(actor_process_file_name, /(?i)powerpnt.exe/)=true
|
||||
OR match_regex(actor_process_file_name, /(?i)excel.exe/)=true OR match_regex(actor_process_file_name,
|
||||
/(?i)winword.exe/)=true) AND (process_file_name="cscript.exe" OR process_file_name="wscript.exe")
|
||||
--finding_report--'
|
||||
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
|
||||
@@ -57,7 +57,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
- name: actor.process.file.name
|
||||
|
||||
@@ -57,7 +57,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -69,7 +69,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -264,7 +264,7 @@ tags:
|
||||
- name: process.file.path
|
||||
type: File
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -56,7 +56,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -62,7 +62,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -58,7 +58,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -65,7 +65,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -69,7 +69,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -64,7 +64,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -60,7 +60,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -61,7 +61,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -60,7 +60,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -72,7 +72,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -53,7 +53,7 @@ tags:
|
||||
- name: process.file.path
|
||||
type: File
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -55,7 +55,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -98,7 +98,7 @@ tags:
|
||||
- name: process.file.path
|
||||
type: File
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -64,7 +64,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -58,7 +58,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -95,7 +95,7 @@ tags:
|
||||
- name: process.file.path
|
||||
type: File
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -28,11 +28,11 @@ search: ' | from read_ba_enriched_events() | eval timestamp = ucast(map_get(inpu
|
||||
null) | eval actor_process_file_name=ucast(map_get(actor_process_file,"name"), "string",
|
||||
null) | eval device=ucast(map_get(input_event,"device"), "map<string, any>", null)
|
||||
| eval device_hostname=ucast(map_get(device,"hostname"), "string", null) | where
|
||||
(process_file_name="wscript.exe" OR process_file_name="cscript.exe" OR process_file_name="searchprotocolhost.exe"
|
||||
like(actor_process_file_name, "%mshta.exe") AND (process_file_name="wscript.exe"
|
||||
OR process_file_name="cscript.exe" OR process_file_name="searchprotocolhost.exe"
|
||||
OR process_file_name="microsoft.workflow.compiler.exe" OR process_file_name="msbuild.exe"
|
||||
OR process_file_name="colorcpl.exe" OR process_file_name="scrcons.exe" OR process_file_name="cmd.exe"
|
||||
OR process_file_name="powershell.exe") AND like(actor_process_file_name, "%mshta.exe")
|
||||
--finding_report--'
|
||||
OR process_file_name="powershell.exe") --finding_report--'
|
||||
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
|
||||
@@ -61,7 +61,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
- name: actor.process.file.name
|
||||
|
||||
@@ -63,7 +63,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -61,7 +61,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -57,7 +57,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
+1
-1
@@ -67,7 +67,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -63,7 +63,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
+1
-1
@@ -70,7 +70,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -64,7 +64,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -62,7 +62,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -61,7 +61,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
+1
-1
@@ -61,7 +61,7 @@ tags:
|
||||
- name: process.file.path
|
||||
type: File
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
+1
-1
@@ -60,7 +60,7 @@ tags:
|
||||
- name: process.file.path
|
||||
type: File
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
+1
-1
@@ -60,7 +60,7 @@ tags:
|
||||
- name: process.file.path
|
||||
type: File
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
+1
-1
@@ -60,7 +60,7 @@ tags:
|
||||
- name: process.file.path
|
||||
type: File
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
+1
-1
@@ -61,7 +61,7 @@ tags:
|
||||
- name: process.file.path
|
||||
type: File
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
+1
-1
@@ -60,7 +60,7 @@ tags:
|
||||
- name: process.file.path
|
||||
type: File
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
+1
-1
@@ -60,7 +60,7 @@ tags:
|
||||
- name: process.file.path
|
||||
type: File
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
+1
-1
@@ -60,7 +60,7 @@ tags:
|
||||
- name: process.file.path
|
||||
type: File
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
+1
-1
@@ -60,7 +60,7 @@ tags:
|
||||
- name: process.file.path
|
||||
type: File
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -55,7 +55,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -62,7 +62,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -30,8 +30,8 @@ search: ' | from read_ba_enriched_events() | eval timestamp = ucast(map_get(inpu
|
||||
null) | eval actor_process_file_name=ucast(map_get(actor_process_file,"name"), "string",
|
||||
null) | eval device=ucast(map_get(input_event,"device"), "map<string, any>", null)
|
||||
| eval device_hostname=ucast(map_get(device,"hostname"), "string", null) | where
|
||||
process_file_name="MSBuild.exe" AND (match_regex(actor_process_file_name, /(?i)cscript.exe/)=true
|
||||
OR match_regex(actor_process_file_name, /(?i)wscript.exe/)=true) --finding_report--'
|
||||
(match_regex(actor_process_file_name, /(?i)cscript.exe/)=true OR match_regex(actor_process_file_name,
|
||||
/(?i)wscript.exe/)=true) AND process_file_name="MSBuild.exe" --finding_report--'
|
||||
how_to_implement: To successfully implement this search you need to be ingesting information
|
||||
on process that include the name of the process responsible for the changes from
|
||||
your endpoints into the `Endpoint` datamodel in the `Processes` node. In addition,
|
||||
@@ -60,7 +60,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
- name: actor.process.file.name
|
||||
|
||||
+1
-1
@@ -59,7 +59,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
+1
-1
@@ -68,7 +68,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
+1
-1
@@ -71,7 +71,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
+1
-1
@@ -54,7 +54,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
+1
-1
@@ -54,7 +54,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
+1
-1
@@ -54,7 +54,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
product:
|
||||
|
||||
@@ -31,7 +31,7 @@ search: ' | from read_ba_enriched_events() | eval timestamp = ucast(map_get(inpu
|
||||
null) | eval actor_process_file_name=ucast(map_get(actor_process_file,"name"), "string",
|
||||
null) | eval device=ucast(map_get(input_event,"device"), "map<string, any>", null)
|
||||
| eval device_hostname=ucast(map_get(device,"hostname"), "string", null) | where
|
||||
process_file_name="MSBuild.exe" AND match_regex(actor_process_file_name, /(?i)wmiprvse.exe/)=true
|
||||
match_regex(actor_process_file_name, /(?i)wmiprvse.exe/)=true AND process_file_name="MSBuild.exe"
|
||||
--finding_report--'
|
||||
how_to_implement: To successfully implement this search you need to be ingesting information
|
||||
on process that include the name of the process responsible for the changes from
|
||||
@@ -61,7 +61,7 @@ tags:
|
||||
- name: device.hostname
|
||||
type: Hostname
|
||||
- name: process.file.name
|
||||
type: File Name
|
||||
type: File
|
||||
- name: process.cmd_line
|
||||
type: Other
|
||||
- name: actor.process.file.name
|
||||
|
||||
Reference in New Issue
Block a user