Skip to content

Conversation

@efd6
Copy link
Contributor

@efd6 efd6 commented Oct 1, 2024

Proposed commit message

The documentation for the deprecation of fields indicates the following correspondences: old new is_synthetic_quarantine_disposition pattern_disposition* to identify quarantined files has_script_or_module_ioc ioc_context ioc_values ioc_value However, there is no other information relating to how these correspond with each other. By inspection of documents from an alerts stream, we can see that pattern_disposition_details contains a quarantine_file boolean. This, with the text in the deprecation notice, hints that we can use this field to get the is_synthetic_quarantine_disposition. The ioc_context field contains an array of object with a type property which in the examples I have available include (only) "module", hinting that this can be used to detect the state corresponding to has_script_or_module_ioc. Finally, ioc_value fields are sprinkled around the documents, so collect them into ioc_values. The test case is derived from the first case, but with deprecated fields removed. 

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.

Author's Checklist

  • [ ]

How to test this PR locally

Related issues

Screenshots

@efd6 efd6 added enhancement New feature or request Integration:crowdstrike CrowdStrike Team:Security-Service Integrations Security Service Integrations team [elastic/security-service-integrations] labels Oct 1, 2024
@efd6 efd6 self-assigned this Oct 1, 2024
@efd6 efd6 force-pushed the e22451-crowdstrike branch 2 times, most recently from 67c1d70 to 5b8f34f Compare October 1, 2024 00:30
@elastic-vault-github-plugin-prod

🚀 Benchmarks report

To see the full report comment with /test benchmark fullreport

@efd6 efd6 marked this pull request as ready for review October 1, 2024 00:59
@efd6 efd6 requested a review from a team as a code owner October 1, 2024 00:59
@elasticmachine
Copy link

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

@efd6 efd6 force-pushed the e22451-crowdstrike branch from 5b8f34f to bfa6979 Compare October 3, 2024 03:54
Copy link
Contributor

@chrisberkhout chrisberkhout left a comment

Choose a reason for hiding this comment

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

Looks good.
One comment in a couple of places.
Question about new input data.

Comment on lines +852 to +857
Copy link
Contributor

Choose a reason for hiding this comment

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

Either:

  • move the ctx.crowdstrike.alert initalization into
    if (c.type == 'module' || c.type == 'script') { ..., or
  • set a false value.
Comment on lines +1087 to +1093
Copy link
Contributor

Choose a reason for hiding this comment

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

As above

Copy link
Contributor

Choose a reason for hiding this comment

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

This new example contains

"ioc_values": [], 

Does that exist post deprecation?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

We have no cases to test against. I left it in to ensure that we continue to function correctly with the current state. I have added another test case which is identical to this one, but with that field removed.

efd6 added 4 commits October 15, 2024 06:30
This is derived from the first case, but with deprecated fields removed.
The documentation for the deprecation of fields indicates the following correspondences: old new is_synthetic_quarantine_disposition pattern_disposition* to identify quarantined files has_script_or_module_ioc ioc_context ioc_values ioc_value However, there is no other information relating to how these correspond with each other. By inspection of documents from an alerts stream, we can see that pattern_disposition_details contains a quarantine_file boolean. This, with the text in the deprecation notice, hints that we can use this field to get the is_synthetic_quarantine_disposition. The ioc_context field contains an array of object with a type property which in the examples I have available include (only) "module", hinting that this can be used to detect the state corresponding to has_script_or_module_ioc. Finally, ioc_value fields are sprinkled around the documents, so collect them into ioc_values.
@efd6 efd6 force-pushed the e22451-crowdstrike branch from c2eda94 to 121d1a3 Compare October 14, 2024 20:03
@elasticmachine
Copy link

💚 Build Succeeded

History

  • 💔 Build #17115 failed c2eda94a783f9495047a98bbcd7c3aaff16fd659
  • 💚 Build #16746 succeeded bfa69796a9cd835594e8d65d76ab8b611a97ea46
  • 💚 Build #16628 succeeded 5b8f34ff995069d2d1b4ed3237ca0a55d22e2adf
  • 💔 Build #16626 failed 67c1d709c1defc5cd45d94e072d3f0d7a475f7ab

cc @efd6

@elastic-sonarqube
Copy link

Quality Gate failed Quality Gate failed

Failed conditions
49.2% Coverage on New Code (required ≥ 80%)

See analysis details on SonarQube

@efd6 efd6 merged commit 24e9bae into elastic:main Oct 14, 2024
4 of 5 checks passed
@elastic-vault-github-plugin-prod

Package crowdstrike - 1.43.0 containing this change is available at https://epr.elastic.co/search?package=crowdstrike

harnish-crest-data pushed a commit to chavdaharnish/integrations that referenced this pull request Feb 4, 2025
The documentation for the deprecation of fields indicates the following correspondences: old new is_synthetic_quarantine_disposition pattern_disposition* to identify quarantined files has_script_or_module_ioc ioc_context ioc_values ioc_value However, there is no other information relating to how these correspond with each other. By inspection of documents from an alerts stream, we can see that pattern_disposition_details contains a quarantine_file boolean. This, with the text in the deprecation notice, hints that we can use this field to get the is_synthetic_quarantine_disposition. The ioc_context field contains an array of object with a type property which in the examples I have available include (only) "module", hinting that this can be used to detect the state corresponding to has_script_or_module_ioc. Finally, ioc_value fields are sprinkled around the documents, so collect them into ioc_values. The test case is derived from the first case, but with deprecated fields removed.
harnish-crest-data pushed a commit to chavdaharnish/integrations that referenced this pull request Feb 5, 2025
The documentation for the deprecation of fields indicates the following correspondences: old new is_synthetic_quarantine_disposition pattern_disposition* to identify quarantined files has_script_or_module_ioc ioc_context ioc_values ioc_value However, there is no other information relating to how these correspond with each other. By inspection of documents from an alerts stream, we can see that pattern_disposition_details contains a quarantine_file boolean. This, with the text in the deprecation notice, hints that we can use this field to get the is_synthetic_quarantine_disposition. The ioc_context field contains an array of object with a type property which in the examples I have available include (only) "module", hinting that this can be used to detect the state corresponding to has_script_or_module_ioc. Finally, ioc_value fields are sprinkled around the documents, so collect them into ioc_values. The test case is derived from the first case, but with deprecated fields removed.
@efd6 efd6 deleted the e22451-crowdstrike branch February 5, 2025 22:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request Integration:crowdstrike CrowdStrike Team:Security-Service Integrations Security Service Integrations team [elastic/security-service-integrations]

3 participants