elastic / kibana

Your window into the Elastic Stack
https://www.elastic.co/products/kibana
Other
19.76k stars 8.17k forks source link

[Security Solution][Detections][Meta] Modularize the Detection Engine #93550

Closed spong closed 2 years ago

spong commented 3 years ago

This is the meta ticket for tracking the modularization of the Detection Engine. The below is our first steps in supporting RAC (Rules/Alerts/Cases) everywhere, and all efforts are still open for discussion. 🙂

High level feature-sets

Exceptions

Within the main executor, the exceptions logic can be specific to certain rule types (e.g. createThreatSignals() & buildEqlSearchRequest()), added generically as an esFilter pre-query (threshold rules), or applied as a post-filter (e.g.filterEventsAgainstList() for ML rules).

Alert De-duplication

The alert de-duplication logic currently lives within single_bulk_create, and signal_rule_alert_type for EQL rules.

Gap Detection Remediation

Lives within signal_rule_alert_type and is injected into each rule type logic so they can perform the desired searches over the calculated gaps.

Monitoring Efforts

Removal of side-car SO for Rule Execution monitoring in favor of leveraging the Alerting Event Log https://github.com/elastic/kibana/pull/94143


Task Breakdown

Potential additional efforts:

Reference docs (internal):
elasticmachine commented 3 years ago

Pinging @elastic/security-solution (Team: SecuritySolution)

elasticmachine commented 3 years ago

Pinging @elastic/security-detections-response (Team:Detections and Resp)

marshallmain commented 3 years ago

Next refactoring steps:

marshallmain commented 3 years ago

Additional step:

madirey commented 3 years ago

Gap remediation working branch: https://github.com/elastic/kibana/compare/master...madirey:rac-gap-remediation?expand=1

madirey commented 3 years ago

Next steps: