The decision of whether to implement an intrusion detection system (IDS) is a complicated one. Unfortunately, IDS has a well-deserved reputation for requiring a lot of "care and feeding" and commercial systems
The Snort toolkit is free and runs on any modern operating system and any old hardware you have. The real investment in the Snort IDS is your time and effort, but I guarantee in less than a week you will learn things about your network you never knew. At the end of three months you will have fixed a number of network problems and intrusion detections that you previously didn't even know you had. For example, you may find a misconfigured management station that's using the SNMP community string 'public' for everything. We all know that's a bad thing, right?
In addition to learning about your network, you'll learn about the interesting world of malicious code. With Snort, rules are powerful, flexible and relatively easy to write, so new rules to detect the latest malware are often written by the Snort community within hours of an outbreak. Add one to your local or experimental rules file, restart Snort, and you're well on your way to detecting, containing and eliminating any infestation that makes it past your other layers of security.
In addition to getting new Snort rules from Snort.org and Bleedingsnort.com, you can easily write them yourself. Perhaps you have an obscure application or protocol you need to keep tabs on, you want to use Snort to implement a policy-based IDS. Policy-based is a very powerful concept that works in certain environments where you define all the traffic that is known and allowed, and then alerts on anything else. However, defining what is known and allowed can be very tricky in all but the most simple or very tightly controlled environments, so policy-based IDS is not for everyone.
One of the best and most overlooked things about Snort IDS rules is that they are open source (for specific licenses see Snorg.org and Bleedingsnort.com). Ironically, both ISS RealSecure and Symantec ManHunt have modules that allow you to use Snort rules. But, the real beauty is that you can actually read a Snort rule, which is something you can't do with most commercial vendors. The best you get with them is a few paragraphs that someone wrote about the rule, which is not the same. Access to the actual rules allows you to make a very informed decision as to the exact criteria that caused an alert and the relevance to your environment.
Regardless of your needs or your reason for implementing Snort, I recommend you read the FAQs and join one of the mailing lists (especially Snort users) at Snort.org.
SNORT INTRUSION DETECTION AND PREVENTION GUIDE
Why Snort makes IDS worth the time and effort
How to identify and monitor network ports
How to handle network design with switches and segments
Where to place IDS network sensors
Finding an OS for Snort IDS sensors
How to determine network interface cards for IDS sensors
Modifying and writing custom Snort IDS rules
How to configure Snort variables
Where to find Snort IDS rules
How to automatically update Snort rules
How to decipher the Oinkcode for Snort VRT rules
Using IDS rules to test Snort
|JP Vossen, CISSP, is a Senior Security Engineer for Counterpane Internet Security. He is involved with various open source projects including Snort, and has previously worked as an information security consultant and systems engineer.|
This was first published in May 2005