Scenario
You operate an OPNsense firewall with Suricata enabled in IPS mode (inline blocking) on the WAN interface. A production REST API behind the firewall starts returning 500 errors. Users report intermittent connection failures.
Available evidence:
- Suricata alert log: the same SID fires every 30-60 seconds.
- Packet capture from the alert: HTTPS traffic between a client IP and the API server.
- The API server logs show no application errors.
- The IDS rule signature is
ET POLICY-S Outgoing Basic Auth Base64 HTTP Password(a generic rule for any HTTP traffic containing a Base64-encoded string).
The API uses JWT tokens, which are Base64-encoded JSON payloads. Every API request triggers the rule.
IDS false positive blocks legitimate traffic
Symptoms
- Suricata alert fires repeatedly on legitimate application traffic
- Application users see failed connections or degraded performance
- The alert signature is a generic "exploit" or "trojan" rule
Available evidence
- Suricata alert log: same SID firing repeatedly
- Packet capture of alert: legitimate application traffic
- Destination IP is a known-good internal service
- No other IDS/IPS reports the same signature
Show diagnosis & remediation
Root cause
The Suricata rule is matching legitimate application traffic. The signature is over-broad (matches Base64 strings, which JWT tokens use) or the rule was contributed for a different threat and matches by accident.
Safe remediation
Disable the SID via Suricata suppression (per-host or per-port). Document the suppression with the rationale and date.
Verification
Suricata alerts stop firing for the suppressed signature. Application performance recovers. Other IDS systems continue functioning.
Prevention
Deploy Suricata in monitor mode initially. Triage alerts for one week before enabling IPS mode. Maintain a suppression list of known-good patterns. Review the suppression list quarterly.