SlideShare a Scribd company logo
Quantitative Analysis of
Intrusion Detection Systems:
Snort and Suricata

Joshua S. White
Thomas T. Fitzsimmons
Jeanna N. Matthews, PhD
Outline
•
•
•
•
•
•

IDS Testing Background
Snort / Suricata
Our Method
Analysis
Results
Conclusion / Future Work
Background

• Given competing claims, an objective head-to-head
comparison of the performance of both the Snort
and Suricata Intrusion Detection Systems is
needed.
Snort

• Open source IDS
• Open-source community and corporate support
from SourceFire
• Single-threaded, uses a rule-based language
combining signature, protocol and anomaly
inspection methods
• http://www.snort.org/
* Snort, www.snort.org, Snort is a Registered Trademark of SourceFire Inc.
** Snort Logo Trademark of SourceFire Inc.
Suricata







Open source IDS
Open Information Security Foundation (OISF)
Multi-threaded, native IPv6, Snort syntax,
Unified2 output, Statistical anomaly detection,
File extraction, High-speed Regex, IP reputation,
Hardware and GPU Acceleration
http://www.openinfosecfoundation.org/
Method
• Be different than existing testing systems
– PytBull, 300 Tests, Aimed at rule validation
• Pytbull.sourceforge.net
• Focus on testing performance
– CPU, Memory, Scaling, PPS Processing
• Initial system consisted of 2800 LOC written in Bash
– 36 Hrs to process
• Current framework 650 LOC written in Python
– 6.5 Hrs to process
Method Details
Test Details
• Snort and Suricata
• 10 x Workloads
• 4 x Ruleset Configurations
– Snort VRT Free, ET-Free, ET-Pro, No-Rules
• 2 x IDS Configurations
– Default and Optimized
• 10 x Core Configurations
– 1,2,3,4,5,6,8,12,18,24
• Each Test Run 5 Times
• Total of 8000 tests
• Additional 600 Live Replay Tests
Initial Results
• Baseline tests
– PPS graph
– Suricata 1.2 performance drop at 4 Cores
• Even when using optimized configuration
– Snort consistent single threaded performance
Initial Results Continued
• Suggested changes asked for advice
– The OISF “Victor Julien”
• Max-Pending-Packets hard coded to 1000
– Changes now include variable configuration up to
USHRT_MAX (65535)
• Developed on dual and quad-core systems, threading didn't
consider keeping like flows together in clusters of cores
– Changes now include CPU-Affinity settings in configuration
files
» This includes sticking like flows to single core cluster,
keeps inter-CPU communication bottlenecks down
Initial Results Continued
• Snort.org
– Single threaded performance seemed to be major limitation
• Companies like Bivio ran custom parallelized version
– “Anonymous” at Sourcefire gave us tips for implementing a
standard parallelized version on regular hardware
» Not an easy solution to implement even for us
» Somewhat buggy startup at times
» Solved the single threading issue
– Blogs suggested replacing standard regex (Aho-Corasick
Binary NFA) with (Aho-Corasick)
Initial Results Continued
• Snort.org
– Single threaded performance seemed to be major limitation
• Companies like Bivio ran custom parallelized version
– “Anonymous” at Sourcefire gave us tips for implementing a
standard parallelized version on regular hardware
» Not an easy solution to implement even for us
» Somewhat buggy startup at times
» Solved the single threading issue
– Blogs suggested replacing standard regex (Aho-Corasick
Binary NFA) with (Aho-Corasick)
Results
Results
Results
Next Gen Results
Thanks!
• Contact:
– Joshua S. White
PhD Candidate
whitejs@clarkson.edu
Clarkson University

More Related Content

PDF
Router Defense - BRUcon 2010
PDF
A Survey on DPI Techniques for Regular Expression Detection in Network Intrus...
PPTX
Regular Expression Mining System for Information Extraction
PPTX
ImmaginAzione - svilupparla col metodo Woodys®
PDF
Sms compliance white paper for mobile communications
PPTX
Pcre introduciton
PPT
Lessons Learned from Teaching Intrusion Detection and Intrusion Prevention wi...
PPTX
All About Snort
Router Defense - BRUcon 2010
A Survey on DPI Techniques for Regular Expression Detection in Network Intrus...
Regular Expression Mining System for Information Extraction
ImmaginAzione - svilupparla col metodo Woodys®
Sms compliance white paper for mobile communications
Pcre introduciton
Lessons Learned from Teaching Intrusion Detection and Intrusion Prevention wi...
All About Snort

Viewers also liked (6)

PPTX
Snort IDS
PPTX
Industrial Training - Network Intrusion Detection System Using Snort
PDF
Snort
PPT
Network Intrusion Detection System Using Snort
PDF
Introduction to Snort Rule Writing
PPT
Intrusion detection system ppt
Snort IDS
Industrial Training - Network Intrusion Detection System Using Snort
Snort
Network Intrusion Detection System Using Snort
Introduction to Snort Rule Writing
Intrusion detection system ppt
Ad

Similar to Clarkson joshua white - ids testing - spie 2013 presentation - jsw - d1 (20)

PDF
Jaime Blasco - Fighting Advanced Persistent Threat (APT) with Open Source Too...
PPTX
ION Bangladesh - IETF Update
PPTX
ARIN 36 IETF IPv6 Activities Report
PPTX
IETF Update: Making the Internet Work Better
PPTX
Security Onion
PDF
【EPN Seminar Nov.10. 2015】 Key note – Open innovation and Engineering community
PDF
ION Belfast - Securing BGP - David Freedman
PPTX
Intrusion Prevention System
PDF
[2C4]Clustered computing with CoreOS, fleet and etcd
PDF
ODSA Sub-Project Launch
PDF
ODSA Sub-Project Launch
PDF
Fuzzing Janus @ IPTComm 2019
PPTX
Hacker Halted 2014 - RDP Fuzzing And Why the Microsoft Open Protocol Specific...
PPTX
GraphTour - Workday: Tracking activity with Neo4j (English Version)
PDF
Security defined routing_cybergamut_v1_1
PPTX
Flexible compute
PPTX
Sanger, upcoming Openstack for Bio-informaticians
PDF
StarlingX - A Platform for the Distributed Edge | Ildiko Vancsa
PDF
The New Open Distributed Application Architecture
PPTX
Network Securities.pptx
Jaime Blasco - Fighting Advanced Persistent Threat (APT) with Open Source Too...
ION Bangladesh - IETF Update
ARIN 36 IETF IPv6 Activities Report
IETF Update: Making the Internet Work Better
Security Onion
【EPN Seminar Nov.10. 2015】 Key note – Open innovation and Engineering community
ION Belfast - Securing BGP - David Freedman
Intrusion Prevention System
[2C4]Clustered computing with CoreOS, fleet and etcd
ODSA Sub-Project Launch
ODSA Sub-Project Launch
Fuzzing Janus @ IPTComm 2019
Hacker Halted 2014 - RDP Fuzzing And Why the Microsoft Open Protocol Specific...
GraphTour - Workday: Tracking activity with Neo4j (English Version)
Security defined routing_cybergamut_v1_1
Flexible compute
Sanger, upcoming Openstack for Bio-informaticians
StarlingX - A Platform for the Distributed Edge | Ildiko Vancsa
The New Open Distributed Application Architecture
Network Securities.pptx
Ad

More from Joshua S. White, PhD josh@securemind.org (12)

PDF
Presentation - Hybrid Sentiment Analysis Utilizing Multiple Indicators To Det...
PDF
Presentation - Social Relevance Toward Understanding the Impact of the Indivi...
PDF
Presentation - Application of Actor Level Social Characteristic Indicator Sel...
PDF
PDF
ase-social-informatics (6)
PDF
Social Network Analysis Applications and Approach
PPT
Malware bek slides 20131023 final
PDF
CSIAC - Social Media Analysis and Privacy
PDF
Clarkson - Joshua White - Research Proposal Presentation
PPT
Coalmine spie 2012 presentation - jsw -d3
PPT
Phishing spie 2012 presentation - jsw - d2
PPT
Physical Layer Optical Network Security Thesis Presentation To The CNY ISSA C...
Presentation - Hybrid Sentiment Analysis Utilizing Multiple Indicators To Det...
Presentation - Social Relevance Toward Understanding the Impact of the Indivi...
Presentation - Application of Actor Level Social Characteristic Indicator Sel...
ase-social-informatics (6)
Social Network Analysis Applications and Approach
Malware bek slides 20131023 final
CSIAC - Social Media Analysis and Privacy
Clarkson - Joshua White - Research Proposal Presentation
Coalmine spie 2012 presentation - jsw -d3
Phishing spie 2012 presentation - jsw - d2
Physical Layer Optical Network Security Thesis Presentation To The CNY ISSA C...

Recently uploaded (20)

PDF
Univ-Connecticut-ChatGPT-Presentaion.pdf
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
DP Operators-handbook-extract for the Mautical Institute
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PPTX
A Presentation on Artificial Intelligence
PDF
A novel scalable deep ensemble learning framework for big data classification...
PPTX
1. Introduction to Computer Programming.pptx
PDF
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
PDF
Zenith AI: Advanced Artificial Intelligence
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Hybrid model detection and classification of lung cancer
PDF
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
project resource management chapter-09.pdf
PDF
Accuracy of neural networks in brain wave diagnosis of schizophrenia
PDF
Mushroom cultivation and it's methods.pdf
PDF
1 - Historical Antecedents, Social Consideration.pdf
Univ-Connecticut-ChatGPT-Presentaion.pdf
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Building Integrated photovoltaic BIPV_UPV.pdf
Unlocking AI with Model Context Protocol (MCP)
DP Operators-handbook-extract for the Mautical Institute
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
A Presentation on Artificial Intelligence
A novel scalable deep ensemble learning framework for big data classification...
1. Introduction to Computer Programming.pptx
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
Zenith AI: Advanced Artificial Intelligence
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Hybrid model detection and classification of lung cancer
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
project resource management chapter-09.pdf
Accuracy of neural networks in brain wave diagnosis of schizophrenia
Mushroom cultivation and it's methods.pdf
1 - Historical Antecedents, Social Consideration.pdf

Clarkson joshua white - ids testing - spie 2013 presentation - jsw - d1

  • 1. Quantitative Analysis of Intrusion Detection Systems: Snort and Suricata Joshua S. White Thomas T. Fitzsimmons Jeanna N. Matthews, PhD
  • 2. Outline • • • • • • IDS Testing Background Snort / Suricata Our Method Analysis Results Conclusion / Future Work
  • 3. Background • Given competing claims, an objective head-to-head comparison of the performance of both the Snort and Suricata Intrusion Detection Systems is needed.
  • 4. Snort • Open source IDS • Open-source community and corporate support from SourceFire • Single-threaded, uses a rule-based language combining signature, protocol and anomaly inspection methods • http://www.snort.org/ * Snort, www.snort.org, Snort is a Registered Trademark of SourceFire Inc. ** Snort Logo Trademark of SourceFire Inc.
  • 5. Suricata     Open source IDS Open Information Security Foundation (OISF) Multi-threaded, native IPv6, Snort syntax, Unified2 output, Statistical anomaly detection, File extraction, High-speed Regex, IP reputation, Hardware and GPU Acceleration http://www.openinfosecfoundation.org/
  • 6. Method • Be different than existing testing systems – PytBull, 300 Tests, Aimed at rule validation • Pytbull.sourceforge.net • Focus on testing performance – CPU, Memory, Scaling, PPS Processing • Initial system consisted of 2800 LOC written in Bash – 36 Hrs to process • Current framework 650 LOC written in Python – 6.5 Hrs to process
  • 8. Test Details • Snort and Suricata • 10 x Workloads • 4 x Ruleset Configurations – Snort VRT Free, ET-Free, ET-Pro, No-Rules • 2 x IDS Configurations – Default and Optimized • 10 x Core Configurations – 1,2,3,4,5,6,8,12,18,24 • Each Test Run 5 Times • Total of 8000 tests • Additional 600 Live Replay Tests
  • 9. Initial Results • Baseline tests – PPS graph – Suricata 1.2 performance drop at 4 Cores • Even when using optimized configuration – Snort consistent single threaded performance
  • 10. Initial Results Continued • Suggested changes asked for advice – The OISF “Victor Julien” • Max-Pending-Packets hard coded to 1000 – Changes now include variable configuration up to USHRT_MAX (65535) • Developed on dual and quad-core systems, threading didn't consider keeping like flows together in clusters of cores – Changes now include CPU-Affinity settings in configuration files » This includes sticking like flows to single core cluster, keeps inter-CPU communication bottlenecks down
  • 11. Initial Results Continued • Snort.org – Single threaded performance seemed to be major limitation • Companies like Bivio ran custom parallelized version – “Anonymous” at Sourcefire gave us tips for implementing a standard parallelized version on regular hardware » Not an easy solution to implement even for us » Somewhat buggy startup at times » Solved the single threading issue – Blogs suggested replacing standard regex (Aho-Corasick Binary NFA) with (Aho-Corasick)
  • 12. Initial Results Continued • Snort.org – Single threaded performance seemed to be major limitation • Companies like Bivio ran custom parallelized version – “Anonymous” at Sourcefire gave us tips for implementing a standard parallelized version on regular hardware » Not an easy solution to implement even for us » Somewhat buggy startup at times » Solved the single threading issue – Blogs suggested replacing standard regex (Aho-Corasick Binary NFA) with (Aho-Corasick)
  • 17. Thanks! • Contact: – Joshua S. White PhD Candidate whitejs@clarkson.edu Clarkson University