Suricata and Elastic Defend Network Correlation
This detection correlates Suricata alerts with Elastic Defend network events to identify the source process performing the network activity.
Elastic rule (View on GitHub)
1[metadata]
2creation_date = "2025/12/10"
3integration = ["endpoint", "suricata"]
4maturity = "production"
5updated_date = "2026/09/10"
6
7[rule]
8author = ["Elastic"]
9description = """
10This detection correlates Suricata alerts with Elastic Defend network events to identify the source process performing
11the network activity.
12"""
13from = "now-9m"
14index = ["logs-endpoint.events.network-*", "filebeat-*", "logs-suricata.*"]
15language = "eql"
16license = "Elastic License v2"
17name = "Suricata and Elastic Defend Network Correlation"
18references = [
19 "https://attack.mitre.org/tactics/TA0011/",
20 "https://www.elastic.co/docs/reference/integrations/suricata",
21 "https://www.elastic.co/docs/reference/integrations/endpoint"
22]
23risk_score = 47
24rule_id = "9edd000e-cbd1-4d6a-be72-2197b5625a05"
25severity = "medium"
26tags = [
27 "Domain: Endpoint",
28 "Domain: Network",
29 "OS: Linux",
30 "OS: Windows",
31 "OS: macOS",
32 "Use Case: Threat Detection",
33 "Tactic: Command and Control",
34 "Data Source: Elastic Defend",
35 "Data Source: Suricata",
36 "Resources: Investigation Guide",
37]
38type = "eql"
39query = '''
40sequence by source.port, source.ip, destination.ip with maxspan=5s
41 [network where data_stream.dataset == "suricata.eve" and event.kind == "alert" and
42 event.severity != 3 and source.ip != null and destination.ip != null and
43 not rule.name in ("ET INFO SMB2 NT Create AndX Request For a Powershell .ps1 File", "ET SCAN MS Terminal Server Traffic on Non-standard Port")]
44 [network where event.module == "endpoint" and event.action in ("disconnect_received", "connection_attempted") and
45 not process.executable in ("System", "C:\\Program Files (x86)\\Admin Arsenal\\PDQ Inventory\\PDQInventoryService.exe") and
46 not process.executable : "C:\\Windows\\AdminArsenal\\PDQInventory-Scanner\\service-*\\exec\\PDQInventoryScanner.exe"]
47'''
48note = """## Triage and analysis
49
50### Investigating Suricata and Elastic Defend Network Correlation
51
52### Possible investigation steps
53
54- Investigate in the Timeline feature the two events matching this correlation (Suricata and Elastic Defend).
55- Review the process details like command_line, privileges, global relevance and reputation.
56- Assess the destination.ip reputation and global relevance.
57- Review the parent process execution details like command_line, global relevance and reputation.
58- Examine all network connection details performed by the process during last 48h.
59- Correlate the alert with other security events or logs to identify any patterns or additional indicators of compromise related to the same process or network activity.
60
61### False positive analysis
62
63- Trusted system or third party processes performing network activity that looks like beaconing.
64
65### Response and remediation
66
67- Immediately isolate the affected system from the network to prevent further unauthorized access or data exfiltration.
68- Terminate the suspicious processes and all associated children and parents.
69- Implement network-level controls to block traffic to the destination.ip.
70- Conduct a thorough review of the system's configuration files to identify unauthorized changes.
71- Reset credentials for any accounts associated with the source machine.
72- Escalate the incident to the security operations center (SOC) or incident response team for further investigation and to determine if additional systems are affected.
73"""
74
75[[rule.threat]]
76framework = "MITRE ATT&CK"
77
78[[rule.threat.technique]]
79id = "T1071"
80name = "Application Layer Protocol"
81reference = "https://attack.mitre.org/techniques/T1071/"
82
83[[rule.threat.technique]]
84id = "T1571"
85name = "Non-Standard Port"
86reference = "https://attack.mitre.org/techniques/T1571/"
87
88[rule.threat.tactic]
89id = "TA0011"
90name = "Command and Control"
91reference = "https://attack.mitre.org/tactics/TA0011/"
92
93[[rule.threat]]
94framework = "MITRE ATT&CK"
95
96[[rule.threat.technique]]
97id = "T1046"
98name = "Network Service Discovery"
99reference = "https://attack.mitre.org/techniques/T1046/"
100
101[rule.threat.tactic]
102id = "TA0007"
103name = "Discovery"
104reference = "https://attack.mitre.org/tactics/TA0007/"
Triage and analysis
Investigating Suricata and Elastic Defend Network Correlation
Possible investigation steps
- Investigate in the Timeline feature the two events matching this correlation (Suricata and Elastic Defend).
- Review the process details like command_line, privileges, global relevance and reputation.
- Assess the destination.ip reputation and global relevance.
- Review the parent process execution details like command_line, global relevance and reputation.
- Examine all network connection details performed by the process during last 48h.
- Correlate the alert with other security events or logs to identify any patterns or additional indicators of compromise related to the same process or network activity.
False positive analysis
- Trusted system or third party processes performing network activity that looks like beaconing.
Response and remediation
- Immediately isolate the affected system from the network to prevent further unauthorized access or data exfiltration.
- Terminate the suspicious processes and all associated children and parents.
- Implement network-level controls to block traffic to the destination.ip.
- Conduct a thorough review of the system's configuration files to identify unauthorized changes.
- Reset credentials for any accounts associated with the source machine.
- Escalate the incident to the security operations center (SOC) or incident response team for further investigation and to determine if additional systems are affected.
References
Related rules
- LLM-Based Curl Activity Triage
- LLM-Based Wget Activity Triage
- Potential Tunneling via Tailscaled
- Uncommon DNS Request via Bun or Node.js
- Potential Traffic Tunneling using QEMU