Open Source IDS

advertisement
Open Source IDS
A Quick and Dirty Guide
Darrin Wassom
Technical Architect
The Road to Ruin?









Introduction
What is this thing called IDS
SHADOW
SNORT
Distributed IDS
The Future
Toolkit Essentials
Links/Publications of Interest
Questions
Introductions
 Presenter
– Darrin Wassom
• Technical Architect
• Information Security Compliance Team
 Foundational Presentation
– By no means a definitive guide!
– YMMV!
What is IDS?!?!
 IDS = Intrusion Detection System
 Two types
– Host-based IDS (HIDS)
• Tripwire is a great example
– Network-based IDS (NIDS)
• ISS RealSecure, Cisco (formerly called NetRanger), Symantec
and many other commercial products available but we don’t
care about those….. yet.
• SHADOW
• SNORT
SHADOW – The Granddaddy!
 Secondary Heuristic Analysis for Defensive
Online Warfare = SHADOW
 Formerly called CIDER
– Cooperative Intrusion Detection Evaluation
and Response
 Developed by the Naval Surface Warfare
Center (NSWC) in 1994 by Stephen
Northcutt
SHADOW
 Open Source components include
– TCPDUMP (key component!)
– OpenSSH
– Apache
– Tripwire
– PERL
 Statistical means of viewing network traffic
– Patterns appear over time
– Looks for network anomalies
SHADOW - Screenshots
SHADOW - Screenshots
SHADOW - Caveats
 SHADOW does not provide real-time analysis in
the traditional sense
– Its strength lies in long term packet analysis
 SHADOW is not rule-based
– You won’t receive event specific alerts like “Code Red
Attack”
 SHADOW has been known to cause bouts of rage,
insomnia and second thoughts about career choice
– It’s not easy to configure!
SHADOW – Sounds Cool….
 Tell me more!
 Can be downloaded at
– http://www.nswc.navy.mil/ISSEC/CID/
 Latest release published
– April 2003
• Actively maintained by NSWC
 SHADOW fork
– Guy Bruneau has provided an ISO image format of
Shadow on Slackware Linux (last updated 8/2003)
• http://www.whitehats.ca/main/index.html
• VERY cool, check it out!
SNORT – An Open Source Star
 Developed by Marty Roesch in 1998
 Rules-based
– also called signature-based
 Benefits
– easy to install
– HIGHLY customizable
– Flexible
– FAST
– Can also work as a packet sniffer
• supports BPF flags!
SNORT – Modes of Operation
 Packet Sniffer
– snort –v
• prints headers to the screen only
– snort –vd
• will show application data in transit
– snort –vde
• all the above and data link layer
– snort –vd tcp and port not ssh
• example of using BPF flags
– snort –vd –l /var/tmp
• dumps data to a directory for future analysis
– snort –vd –L /var/tmp/test.cap
• writes data to a specific file in TCPDUMP format
– snort –r /var/tmp/test.cap
• opens any TCPDUMP file
SNORT – Modes of Operation
 Intrusion Detection Mode
– The nuts and bolts!
– snort –i eth0 –c /etc/snort/snort.conf
• specifies the eth0 interface and the location of the
snort configuration file (snort.conf)
– Snort Configuration
• snort.conf
– Allows for any range of possibilities
– Well documented and easy to follow
SNORT – Analysis of a Rule
alert tcp $EXTERNAL_NET any -> $HOME_NET 22 (msg:"EXPLOIT gobbles SSH
exploit attempt"; flow:to_server,established; content:"GOBBLES";
reference:bugtraq,5093; classtype:misc-attack; sid:1812; rev:2;)
 Rule Header
– Action required
• alert, log, pass, user-defined
– defines network protocols
– source/destination
– traffic direction
 Rule Options
– Always enclosed in parentheses
– Defines which attributes must be present to trigger an event
SNORT – Tips/Tricks for Rules
 SID – Snort ID
– 1-100 – Reserved for Marty Roesch
– 101-1000000 – Reserved for Snort Development Team
– > 1000000 – Can be used for locally defined rules
 Rule/Signature Maintenance
– SNORT regularly updates rules and can be downloaded
from their site
– Oinkmaster
• Script written to help with rule management
• http://www.algonet.se/~nitzer/oinkmaster/
 Creating Custom Rules
– use TCPDUMP or Ethereal to analyze packets which you wish to
be alerted on…..
SNORT – A Problem
 SNORT, by itself, is great for a single probe
installation
– One configuration file
– One set of rules
– One place to look for alerts, logs, etc
 Management and Analysis becomes difficult with
more than one probe
– multiple conf files to maintain
– rules issues
– which probe do you check for analysis
SNORT – Distributed Approach
SNORT – Components to Webify!
 ACID - written by Roman Danyliw
– Analysis Console for Intrusion Databases
– http://www.andrew.cmu.edu/~rdanyliw/snort/snortacid.
html
 Other Requirements (ship w/ most Linux distros)
– Web Server – Apache
– PHP
– SQL database – MySQL
– Other misc components
 Sounds difficult!!
– Several EXCELLENT whitepapers are available
• Step by Step guides!
SNORT – Uh, Where?
 Steven Scott
– Red Hat 7.3 and 9.0
– VERY detailed and HIGHLY recommended
– http://www.snort.org/docs/snort-rh7-mysql-ACID-1-5.pdf
– http://www.superhac.com/snort/docs/snort_enterprise.pdf
• Steven’s site, Superhac, is intermittent. If you can’t find the site, let
me know and I’ll send a copy of the document
 Local Subject Matter Expert
– Mark Eanes
• Putting him on the spot!
SNORT – Show me!
SNORT – Real Time?
 Near real-time alerts are available!
– SWATCH
• Simple WATCHer
• http://swatch.sourceforge.net/
• Can be configured to monitor just about any type of
log file
– can send email, pager or SMB popup
– Easy to configure
SNORT – Usage/Application
 Detection of Privilege Escalation
– DEMO
• FTP Exploit
– Gain root level access to a public facing FTP server
– Would most likely go undetected
• Results in SNORT/ACID
– Link
SNORT – Usage/Application
 Enterprise IDS
– Advantage
• low cost (hardware, learning curve)
• Extremely flexible
– Cons
• Requires significant tuning/tweaking
• Constant maintenance
– rule mgmt issues
• Eternal vigilance!
– applies to ANY internal IDS presence
 Augment Outsourced IDS
 Point Solution
– Track internal vulnerabilities on specific segment
• outbound worm traffic is a great example
SNORT – The Future
 Evolution
– Intrusion Prevention
• Flex response (user-defined)
– built-in
• Snort Inline
– actively developed
• Both add elements of “intelligence” to dynamically block
ports/hosts based on signatures
– Event Correlation
• Analyze multiple log events
– Coming soon!
– Sourcefire
• Commercial arm of SNORT
– founded by Marty Roesch
Toolkit Essentials
 TCPDUMP
– http://www.tcpdump.org/
 WINDUMP
– http://windump.polito.it/
 Ethereal
– http://www.ethereal.com/
Links/Publications
 SNORT
– http://www.snort.org/
 Superhac
– http://www.superhac.org
 SANS Reading Room
– http://rr.sans.org/
 Publications (Available at Amazon)
– Snort 2.0 Intrusion Detection
• Brian Caswell, Ryan Russel, Jay Beale, et al
– Intrusion Detection with Snort
• Jack Koziol
– IDS with Snort: Advanced Techniques
• Rafeeq Rehman
Education
 SANS Institute
– Education track devoted to Intrusion Detection
• http://www.sans.org
• http://www.giac.org
• GCIA – GIAC Certified Intrusion Analyst
– heavy coverage of TCPDUMP, Snort and advanced
analysis techniques
Questions?
Thank You!
 Contact Information
– Darrin Wassom
• Darrin.Wassom@spectrum-health.org
• 616.391.9031 (Office)
Download