Skip to content

crowdstrike: add ECS categorization and fields for new FDR event types#20079

Open
navnit-elastic wants to merge 6 commits into
elastic:mainfrom
navnit-elastic:crowdstrike-15341
Open

crowdstrike: add ECS categorization and fields for new FDR event types#20079
navnit-elastic wants to merge 6 commits into
elastic:mainfrom
navnit-elastic:crowdstrike-15341

Conversation

@navnit-elastic

@navnit-elastic navnit-elastic commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

Proposed commit message

crowdstrike: add ECS categorization and fields for new FDR event types

Expand FDR ingest categorization for additional event types, including
IDP telemetry, Active Directory account changes, DBus/systemd activity,
network containment, host firewall matches, sensor diagnostics, and container
events. Add field mappings for newly supported events.

Map Active Directory account-management events to ECS user fields from
SamAccountName, AccountObjectSid, and AccountDomain when SourceAccount*
fields are absent. Add DNS enrichment for DNSRequestDetectInfo by matching
DNS request actions case-insensitively so dns.question and network.protocol
are populated.

The anonymized samples are derived from live CrowdStrike instance.

Checklist

  • I have reviewed tips for building integrations and this pull request is aligned with them.
  • I have verified that all data streams collect metrics or logs.
  • I have added an entry to my package's changelog.yml file.
  • I have verified that Kibana version constraints are current according to guidelines.
  • I have verified that any added dashboard complies with Kibana's Dashboard good practices

Author's Checklist

  • [ ]

How to test this PR locally

Related issues

Screenshots

@navnit-elastic navnit-elastic self-assigned this Jul 10, 2026
@navnit-elastic navnit-elastic added documentation Improvements or additions to documentation. Applied to PRs that modify *.md files. enhancement New feature or request Integration:crowdstrike CrowdStrike Team:Security-Service Integrations Security Service Integrations team [elastic/security-service-integrations] Team:SDE-Crest Crest developers on the Security Integrations team [elastic/sit-crest-contractors] labels Jul 10, 2026
@github-actions

Copy link
Copy Markdown
Contributor

✅ Elastic Docs Style Checker (Vale)

No issues found on modified lines!


The Vale linter checks documentation changes against the Elastic Docs style guide. To use Vale locally or report issues, refer to Elastic style guide for Vale.

kind: event
outcome: unknown
type:
- start

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It seems like Git did not show the diff properly.

@elastic-vault-github-plugin-prod

Copy link
Copy Markdown
Contributor

🚀 Benchmarks report

Package crowdstrike 👍(10) 💚(2) 💔(2)

Expand to view
Data stream Previous EPS New EPS Diff (%) Result
falcon 5000 3022.06 -1977.94 (-39.56%) 💔
identity_protection_assessment 29239.77 14556.04 -14683.73 (-50.22%) 💔

To see the full report comment with /test benchmark fullreport

@navnit-elastic navnit-elastic marked this pull request as ready for review July 10, 2026 10:03
@navnit-elastic navnit-elastic requested review from a team as code owners July 10, 2026 10:03
@infra-vault-gh-plugin-prod

Copy link
Copy Markdown

Pinging @elastic/security-service-integrations (Team:Security-Service Integrations)

Comment on lines 1990 to 1994
- set:
tag: set_dns_type_2198a4ce
if: ctx.event?.action != null && ctx.event.action.contains("DnsRequest")
if: ctx.event?.action != null && ctx.event.action.toLowerCase().contains('dnsrequest')
field: dns.type
value: query

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We could factor this out to a temporary boolean so that we don't need to do the repeated string allocation and sub-string search.

  - set:
      tag: set_temp_is_dns_request
      if: ctx.event?.action != null && ctx.event.action.toLowerCase().contains('dnsrequest')
      field: _temp.is_dns_request
      value: true
  - set:
      tag: set_dns_type_2198a4ce
      if: ctx._temp?.is_dns_request == true
      field: dns.type
      value: query

and so on below.

The value will be cleaned up in remove_d684cf91.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code refactor applied in a2c5504.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same pattern applied to "ActiveDirectory" events in 3de7d93.

- info
RemediationMonitorRegistryRemoval:
category:
- registry

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- registry
- registry
- configuration

This allows you to have "info" in event.type while keeping the "registry" event.category.

Alternatively make it consistent with RemediationMonitorScheduledTaskRemoval, and RemediationMonitorServiceRemoval and others like it which only consider this to be configuration.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks. Keeping both "registry" and "configuration".

@elastic-vault-github-plugin-prod

Copy link
Copy Markdown
Contributor

✅ All changelog entries have the correct PR link.

@vera-review-bot

Copy link
Copy Markdown

No issues across the latest commits 3de7d93.

A new commit triggers another review — at most once every 15 minutes. I skip the PR while it's approved or has merge conflicts.

🤖 AI-Generated Review | Vera Review Bot | 📚 Knowledge base: integration-skills

⚠️ Automated review — verify suggestions before applying.

@infra-vault-gh-plugin-prod

Copy link
Copy Markdown

💚 Build Succeeded

History

cc @navnit-elastic

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation. Applied to PRs that modify *.md files. enhancement New feature or request Integration:crowdstrike CrowdStrike Team:SDE-Crest Crest developers on the Security Integrations team [elastic/sit-crest-contractors] Team:Security-Service Integrations Security Service Integrations team [elastic/security-service-integrations]

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants