Snort 3 logo

Snort 3

Network intrusion detection and prevention with scriptable config and threaded packet processing

Repository activity
  • Stars3.4k
  • Forks672
  • Open Issues79
snort3 health score - Linux Foundation Insights
License

Other

Languages
  • C++
  • C
  • CMake
Snort 3 screenshot

About Snort 3

Snort 3 is the next-generation release of the Snort network intrusion detection and prevention system. It inspects live network traffic or packet captures against a rule set to catch attacks, probes, and emerging threats in real time.

It runs multiple packet-processing threads sharing one configuration and attribute table, supports scriptable LuaJIT config and pluggable components, and uses service autodetection for portless rules. A wizard handles port-independent configuration, a binder maps settings to traffic, and a rewritten HTTP inspector deepens application-layer analysis.

The snort2lua converter migrates Snort 2.x rules and configuration to the new format. Packet I/O runs through the DAQ abstraction layer, letting the same engine work inline for prevention or passively for detection across high-throughput links.

Key features

  • IDS and IPS for network traffic inspection
  • Multiple packet processing threads
  • Scriptable configuration with pluggable components
  • Service autodetection for portless configuration
  • snort2lua converts Snort 2.X configuration and rules

Details

On GitHub since
2014
Platforms
Linux · Windows
Binary
snort
Packet I/O
DAQ
Configuration
LuaJIT scripting
Build
CMake · C++17