Match Correlator¶
Match correlator detects incoming events based on the predicate section. If the event matches the predicate filter, trigger section is called.
Hint
Always consider using Window Correlator instead of Match Correlator, as Match Correlator produces one output event per one input event and so does not do any grouping of incoming events based on time.
Sample¶
---
define:
name: "Network T1046 Network Service Discovery"
description: "Detects a connection between two IP addresses"
type: correlator/match
logsource:
type: "Network"
mitre:
technique: "T1046"
tactic: "TA0007"
predicate:
!OR
- !EQ
- !ITEM EVENT log.level
- "error"
- !EQ
- !ITEM EVENT log.level
- "critical"
- !EQ
- !ITEM EVENT log.level
- "emergency"
trigger:
- event:
threat.indicator.confidence: "Medium"
threat.indicator.ip: !ITEM EVENT source.ip
threat.indicator.port: !ITEM EVENT source.port
threat.indicator.type: "ipv4-addr"
Section define¶
This section contains the common definition and meta data.
Item name¶
Shorter human-readable name of this declaration.
Item type¶
The type of this declaration, must be correlator/match.
Item description (optional)¶
Longed, possibly multiline, human-readable description of the declaration.
Section logsource¶
Specifies the types of event lanes that should the incoming events be read from.
Section predicate¶
The predicate filters incoming events using an expression.
If the expression returns True, the event will enter trigger section.
If the expression returns False, then the event is skipped.
Other returned values are undefined.
Section trigger¶
The trigger section specifies what kinds of actions to be taken when the trigger is fired by success result in predicate section.
See correlator triggers chapter for details.