Over the past year our development team has led two lives.
One life was spent maintaining the code base of Snort,
which secures most of the Internet with well over 5 million downloads. Snort has not only become the standard in
intrusion detection, but the Snort rules language is used by network researchers to communicate with each other to detect bad
traffic. We’ve been releasing
new features into the code base all along to push the envelope of detection
farther and faster.
The other life initially emerged back in 2005 with the
conceptual introduction of Snort 3.0. Marty Roesch, the original author of
Snort and the founder of Sourcefire, started to rethink the concepts and
architecture of Snort. This resulted in
a beta release of what we now call “SnortSP”, or the Snort
Security Platform. Some of the ideas in
the original SnortSP project have made their way into the main code base of
Snort over the past few releases.
Reloading without restarting, OpenAppId, gzip
decompression, IP blacklisting, etc.
However, there were ideas that we’ve
been playing with that we couldn’t
fold into the current code base without a complete rewrite.
So that’s what we’ve done.
We took Marty’s initial rethinking and expanded
beyond that, testing different concepts of multithreading, detection,
interaction, programmatic interfaces, etc. This all now culminates in the alpha
release of project “Snort++”, which will become
version Snort 3.0.
This Alpha release is for you to play with. It’s for you to break, it’s
for you to test and get back to us about.
We need you to break it; we want you to break it. This is not
ready for production and should not be used for production, so that gives us
the full freedom to work with our community to make Snort 3.0 as strong as
possible.
Over the development of the project we’ll be rolling out
new blog posts, white papers, webinars, documents with updates, and code all
for you to test and use. We plan on releasing often and early. Some
fantastic new features are in this new version of Snort. I’ll list a few here, and we'll expand on all of these in the next few months.
- User-friendly design
- We wanted to make it as easy as possible for people to learn and run Snort – that means no more configuring memory, ports, arguments, etc.
- Built-in Documentation
- Built-in configuration
- Error and Multi error support
- Verification of configuration on startup (no more having to run “-T” for test mode)
- Simpler rule language
- We’re making it simpler to write rules.
- Sticky buffers
- Custom http buffers
- Auto-Detection of all protocols
- Command Line Shell
- Secured to localhost
- Allows someone to reload a configuration
- Allows you to pause and resume detection
- Multithreaded and Multi-core
- All new design for multithreading, maintaining a single persistent configuration for many threads.
Please read on to Russ's Blog post about how to download it, set it up, and get the alpha working!