Suricata is a fantastic IDS, and can be used as an IPS
Intrusion Detection System
Intrusion Prevention System
The challenge with making it an IPS, comes with the false positives. I’ve spent countless hours troubleshooting IDS rules that come from external intelligence. This is not a knock on Suricata, this is not a knock on shared threat intelligence, they’re both critical components of a mature cybersecurity system.
A few critical points of validating your threat intelligence before throwing it into an IPS:
- Make sure it’s not google.com
- No private IP addresses
- 10.0.0.0/8 IP addresses: 10.0.0.0 — 10.255.255.255
- 172.16.0.0/12 IP addresses: 172.16.0.0 — 172.31.255.255
- 192.168.0.0/16 IP addresses: 192.168.0.0 – 192.168.255.255
- Watch out for IP addresses in general (WHAT?!), especially when they’re owned in a share host (Google, Azure, AWS).. those IPs get recycled SO frequently
- Watch out for CDNs. Specific URLs are fine, but domains that are CDN (cdn.whatevr.com, etc), or anything related to cloud front, that isn’t a specific url, isn’t good.
- Prefer host names over IPs, but, make sure URLs are better.
It takes work, it’s hard, but it’ll be worth it.
Tuning is essential. Tune your rules.