Falcon (crowdstrike-falcon) — Vendor Schema¶
Source:
schemas/vendors/crowdstrike-falcon/falcon-detections.yaml
Identity¶
| Field | Value |
|---|---|
| vendor | crowdstrike-falcon |
| product | Falcon |
| data_source | crowdstrike_falcon_event_raw |
| category | Endpoint |
Raw Schema¶
Fields available in the raw ingest dataset.
| Field | Type | Array | Status | JSON Subfields |
|---|---|---|---|---|
product |
string |
declared | ||
severity |
int |
declared | ||
severity_name |
string |
declared | ||
incident_type |
string |
declared | ||
description |
string |
declared | ||
parent_process_id |
string |
declared | ||
user_name |
string |
declared | ||
user_id |
string |
declared | ||
device |
json |
declared | ||
parent_details |
json |
declared | ||
grandparent_details |
json |
declared | ||
cmdline |
string |
declared | ||
filename |
string |
declared | ||
filepath |
string |
declared | ||
tactic |
string |
declared | ||
technique |
string |
declared | ||
rawJSON |
json |
declared | ||
local_process_id |
string |
declared | ||
sha256 |
string |
declared | ||
md5 |
string |
declared | ||
source_account_domain |
string |
declared | ||
source_account_sam_account_name |
string |
declared | ||
source_account_object_sid |
string |
declared | ||
target_account_name |
string |
declared | ||
host_names |
string |
declared | ||
source_endpoint_host_name |
string |
declared | ||
source_endpoint_address_ip4 |
string |
declared | ||
destination_hosts |
string |
declared | ||
target_endpoint_host_name |
string |
declared | ||
target_endpoint_sensor_id |
string |
declared | ||
name |
string |
declared | ||
display_name |
string |
declared | ||
tactic_id |
string |
declared | ||
technique_id |
string |
declared | ||
type |
string |
declared | ||
id |
string |
declared | ||
cid |
string |
declared | ||
source_account_upn |
string |
declared | ||
source_account_name |
string |
declared | ||
target_account_object_sid |
string |
declared | ||
source_hosts |
string |
declared | ||
source_endpoint_account_object_guid |
string |
declared | ||
source_endpoint_ip_address |
string |
declared | ||
source_endpoint_address_ip6 |
string |
declared | ||
location_country_code |
string |
declared | ||
source_ip_asn_organization |
string |
declared | ||
sso_application_identifier |
string |
declared | ||
sso_application_uri |
string |
declared | ||
user_names |
string |
declared | ||
country |
string |
declared | ||
asn |
string |
declared | ||
asn_name |
string |
declared | ||
category |
string |
declared | ||
mitre_attack |
string |
declared | ||
event_summary |
string |
declared |
Modeling Rule — SOC CrowdStrike Falcon Modeling Rule¶
| Field | Value |
|---|---|
| modeling_rule_id | SOC_CrowdStrikeFalcon_ModelingRule |
| modeling_rule_name | SOC CrowdStrike Falcon Modeling Rule |
| directory_name | SOCCrowdStrikeFalconModelingRules |
| fromversion | 8.3.1 |
Contributes (Artifacts.*)¶
Fields populated for downstream lifecycle Artifacts schemas:
UserUser.UPNUser.SAMUser.SIDUser.DomainTarget.UserTarget.User.SIDEndpoint.HostnameEndpoint.DeviceIDEndpoint.OSEndpoint.IPv4Target.HostnameProcess.NameProcess.PathProcess.SHA256Process.MD5Process.CommandLineProcess.PIDNetwork.IPNetwork.LocationNetwork.ASNApplicationAlert.SeverityAlert.CategoryAlert.DescriptionAlert.MITREEvent.TypeEvent.DescriptionEvent.IDObserver.VendorObserver.Product
Correlation Rules¶
SOC CrowdStrike Falcon - Endpoint All Alerts¶
| Field | Value |
|---|---|
| global_rule_id | SOC CrowdStrike Falcon - Endpoint All Alerts |
| subtype | passthrough |
| fromversion | 6.10.0 |
Creates a single XSIAM alert for each CrowdStrike Falcon Endpoint Detection event. Consolidates 15 per-tactic rules from v1.0.14 into one rule using MITRE tactic as the User Defined alert category. Backwards compatible with alert field mappings from all 1.0.14 per-tactic rules.
Schema Constants¶
| Field | Value |
|---|---|
| rule_id | 0 |
| action | ALERTS |
| alert_category | User Defined |
| alert_domain | DOMAIN_SECURITY |
| execution_mode | REAL_TIME |
| is_enabled | ✓ |
| mapping_strategy | CUSTOM |
| severity | User Defined |
| drilldown_query_timeframe | ALERT |
| user_defined_category | tactic |
| user_defined_severity | severity_name |
Suppression¶
| Field | Value |
|---|---|
| enabled | ✓ |
| duration | 1 hours |
| fields | composite_id |
Alert Fields¶
Issue-field assignments emitted by the correlation rule. The Description column captures intent — when present, this is what downstream playbooks rely on the field meaning.
| Issue Field | Source | Bucket | Description |
|---|---|---|---|
mac |
mac_address |
||
domain |
agent_device_domain |
||
userid |
user_principal |
||
vendor |
vendor |
||
agentid |
agent_id |
||
localip |
action_local_ip |
||
product |
product |
||
usersid |
idr_sid |
||
agent_id |
agent_id |
||
deviceou |
device_ou_arr |
||
filehash |
sha256 |
||
filename |
action_file_name |
||
filepath |
action_file_path |
||
hostname |
agent_hostname |
||
scenario |
scenario |
||
severity |
severity |
||
sourceid |
aggregate_id |
||
username |
actor_effective_username |
||
cgosha256 |
causality_actor_process_image_sha256 |
||
objective |
objective |
||
processid |
grandparent_local_process_id |
||
_device_id |
device_id |
||
filesha256 |
action_file_sha256 |
||
processmd5 |
md5 |
||
alertaction |
pattern_disposition_description |
||
detectionid |
template_instance_id |
||
eventaction |
ioc_source |
||
initiatedby |
actor_process_image_name |
||
externallink |
externallink |
||
initiatorcmd |
actor_process_command_line |
||
initiatorpid |
actor_process_os_pid |
||
employeeemail |
idr_email |
||
files_written |
files_written_names |
||
initiatorpath |
actor_process_image_path |
||
mitretacticid |
mitretacticid |
||
agent_hostname |
agent_hostname |
||
hostmacaddress |
mac_address |
||
originalrawlog |
originalrawlog |
||
prenatsourceip |
local_ip |
||
user_principal |
user_principal |
||
action_local_ip |
action_local_ip |
||
initiatorsha256 |
actor_process_image_sha256 |
||
mitretacticname |
mitretacticname |
||
originalalertid |
originalalertid |
||
parentprocessid |
parent_local_process_id |
||
action_file_name |
action_file_name |
||
action_file_path |
action_file_path |
||
externalseverity |
severity_int_raw |
||
mitretechniqueid |
mitretechniqueid |
||
parentprocesscmd |
parent_process_cmd |
||
parentprocessids |
parent_local_process_id |
||
alert_description |
alert_description |
||
deviceexternalips |
external_ip |
||
originalalertname |
originalalertname |
||
parentprocessname |
parent_process_name |
||
parentprocesspath |
parent_process_path |
||
action_file_sha256 |
action_file_sha256 |
||
external_pivot_url |
falcon_host_link |
||
externalconfidence |
confidence |
||
mitretechniquename |
mitretechniquename |
||
tim_main_indicator |
ioc_value |
||
agent_device_domain |
agent_device_domain |
||
contactemailaddress |
idr_email |
||
employeedisplayname |
idr_display_name |
||
originalalertsource |
originalalertsource |
||
originaldescription |
alert_description |
||
parentprocesssha256 |
parent_process_sha256 |
||
processcreationtime |
process_start_time |
||
actor_process_os_pid |
actor_process_os_pid |
||
additionalindicators |
ioc_value |
||
grandparentprocessid |
grandparent_local_process_id |
||
grandparentprocesscmd |
grandparent_process_cmd |
||
grandparentprocessname |
grandparent_process_name |
||
grandparentprocesspath |
grandparent_process_path |
||
actor_effective_username |
actor_effective_username |
||
actor_process_image_name |
actor_process_image_name |
||
actor_process_image_path |
actor_process_image_path |
||
grandparentprocesssha256 |
grandparent_process_sha256 |
||
actor_process_command_line |
actor_process_command_line |
||
actor_process_image_sha256 |
actor_process_image_sha256 |
||
action_process_image_sha256 |
sha256 |
||
pattern_disposition_details |
pattern_disposition_details |
||
xdmsourceprocesscausalityid |
aggregate_id |
||
causality_actor_causality_id |
aggregate_id |
||
causality_actor_process_image_name |
causality_actor_process_image_name |
||
causality_actor_process_image_path |
causality_actor_process_image_path |
||
causality_actor_process_command_line |
cgo_cmd |
||
causality_actor_process_image_sha256 |
causality_actor_process_image_sha256 |
||
hostos |
device_platform_name |
||
agentossubtype |
device_os_version |
||
hostfqdn |
device_fqdn |
||
hostip |
local_ip |
||
initiatormd5 |
md5 |
||
osparentid |
parent_local_process_id |
||
endpointisolationstatus |
device_status |
||
categoryname |
objective |
||
dns_query_name |
dns_queries |
||
dnsqueryname |
dns_queries |
||
action_remote_ip |
action_remote_ip |
||
remoteip |
action_remote_ip |
||
postnatdestinationip |
remote_ips |
Pre-Alter XQL¶
| alter vendor_name = "CrowdStrike", product_name = "Falcon"
| filter product = "epp"
| alter originalrawlog = to_json_string(rawJSON)
| alter severity_int_raw = severity
| alter
tactic = if(tactic = "Malware", "Execution", tactic),
mitre_tactic = if(tactic = "Malware", "Execution", tactic),
mitre_tactic_id = tactic_id,
mitre_technique = technique,
mitre_technique_id = technique_id
| alter mitre_ids_str = if(
technique_id != null and technique != null,
concat(technique_id, " - ", technique),
coalesce(technique_id, technique)
)
| alter
hostname = device->hostname,
domain = device->machine_domain,
local_ip = device->local_ip,
external_ip = device->external_ip,
mac_address = device->mac_address,
device_id = device->device_id,
device_os_version = device->os_version,
device_platform_name = device->platform_name,
device_status = device->status,
device_fqdn = if(device->machine_domain != null, concat(device->hostname, ".", device->machine_domain), device->hostname),
device_ou = device->ou[],
parent_process_name = parent_details->filename,
parent_process_cmd = parent_details->cmdline,
parent_process_path = parent_details->filepath,
parent_process_sha256 = parent_details->sha256,
parent_local_process_id = parent_details->local_process_id,
grandparent_process_name = grandparent_details->filename,
grandparent_process_cmd = grandparent_details->cmdline,
grandparent_process_path = grandparent_details->filepath,
grandparent_process_sha256 = grandparent_details->sha256,
grandparent_local_process_id = grandparent_details->local_process_id
| alter device_ou_arr = arraymap(device_ou, replace("@element", "\"", ""))
| alter cgo_name = if(lowercase(grandparent_process_name) not in ("wininit.exe", "userinit.exe"),
grandparent_process_name,
coalesce(parent_process_name, filename)),
cgo_path = if(lowercase(grandparent_process_name) not in ("wininit.exe", "userinit.exe"),
grandparent_process_path,
coalesce(parent_process_path, filepath)),
cgo_cmd = if(lowercase(grandparent_process_name) not in ("wininit.exe", "userinit.exe"),
grandparent_process_cmd,
coalesce(parent_process_cmd, cmdline))
| alter dnsa = json_extract_array(to_json_string(dns_requests), "$")
| alter dns_queries = arraymap(dnsa, json_extract_scalar(to_json_string("@element"), "$.domain_name"))
| alter na = json_extract_array(to_json_string(network_accesses), "$")
| alter fwa = json_extract_array(to_json_string(files_written), "$")
| alter files_written_names = arraymap(fwa, json_extract_scalar(to_json_string("@element"), "$.filename"))
| alter remote_ips = arraymap(na, json_extract_scalar(to_json_string("@element"), "$.remote_address"))
// File activity from the detection, so the assessment sees what the process touched.
// Real-time safe: only functions this rule already uses (no array_length/arraystring/arrayrange).
| alter faa = json_extract_array(to_json_string(files_accessed), "$")
| alter files_accessed_paths = arraymap(faa, concat(json_extract_scalar(to_json_string("@element"), "$.filepath"), "|", json_extract_scalar(to_json_string("@element"), "$.filename")))
| alter files_written_paths = arraymap(fwa, concat(json_extract_scalar(to_json_string("@element"), "$.filepath"), "|", json_extract_scalar(to_json_string("@element"), "$.filename")))
| alter file_activity_summary = concat(
if(to_json_string(files_accessed_paths) != null and to_json_string(files_accessed_paths) != "[]",
concat(" | Files accessed (folder|file): ", to_json_string(files_accessed_paths)), ""),
if(to_json_string(files_written_paths) != null and to_json_string(files_written_paths) != "[]",
concat(" | Files written (folder|file): ", to_json_string(files_written_paths)), ""))
| alter alert_name = concat(
"[Endpoint] ",
coalesce(user_name, hostname, "Unknown"),
" - ",
coalesce(tactic, "Detection"),
": ",
coalesce(technique, name)
)
| alter alert_description = concat(
coalesce(description, name),
" | Host: ", coalesce(hostname, "Unknown"),
" | User: ", coalesce(user_name, "Unknown"),
" | Severity: ", coalesce(severity_name, "Unknown"),
coalesce(file_activity_summary, "")
)
| alter
vendor = vendor_name,
product = product_name,
originalalertid = composite_id,
originalalertname = alert_name,
originalalertsource = "CrowdStrike Falcon",
externallink = falcon_host_link,
alert_description = alert_description,
severity = severity_name,
mitretacticid = mitre_tactic_id,
mitretacticname = mitre_tactic,
mitretechniqueid = mitre_technique_id,
mitretechniquename = mitre_technique,
agent_hostname = hostname,
agent_id = agent_id,
agent_device_domain = domain,
actor_effective_username = user_name,
actor_process_image_name = filename,
actor_process_image_path = filepath,
actor_process_image_sha256 = sha256,
actor_process_command_line = cmdline,
actor_process_os_pid = local_process_id,
causality_actor_process_image_name = cgo_name,
causality_actor_process_image_path = cgo_path,
causality_actor_process_image_sha256 = grandparent_process_sha256,
action_file_name = filename,
action_file_path = filepath,
action_file_sha256 = sha256,
action_local_ip = local_ip,
action_remote_ip = remote_ips
| fields
device_id, local_ip, user_name, user_principal, cmdline, sha256, domain, hostname, agent_id, pattern_disposition_description, pattern_disposition_details, cgo_cmd, cgo_name, cgo_path, template_instance_id, external_ip, falcon_host_link, mac_address, mitre_tactic_id, mitre_tactic, mitre_technique_id, mitre_technique, mitre_ids_str, tactic_id, tactic, technique_id, technique, objective, composite_id, parent_process_cmd, parent_process_name, parent_local_process_id, parent_process_path, parent_process_sha256, grandparent_process_name, grandparent_process_cmd, grandparent_process_path, grandparent_process_sha256, grandparent_local_process_id, device_ou_arr, process_start_time, local_process_id, md5, scenario, severity_name, aggregate_id, indicator_id, alert_name, alert_description, network_accesses, dns_requests, files_written, originalrawlog, *