<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Inliniac &#187; oisf</title>
	<atom:link href="http://www.inliniac.net/blog/category/oisf/feed" rel="self" type="application/rss+xml" />
	<link>http://www.inliniac.net/blog</link>
	<description>Everything inline.</description>
	<lastBuildDate>Thu, 29 Jul 2010 19:38:06 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Suricata 1.0.1 released</title>
		<link>http://www.inliniac.net/blog/2010/07/29/suricata-1-0-1-released.html</link>
		<comments>http://www.inliniac.net/blog/2010/07/29/suricata-1-0-1-released.html#comments</comments>
		<pubDate>Thu, 29 Jul 2010 19:38:06 +0000</pubDate>
		<dc:creator>Victor Julien</dc:creator>
				<category><![CDATA[Suricata]]></category>
		<category><![CDATA[oisf]]></category>

		<guid isPermaLink="false">http://www.inliniac.net/blog/?p=388</guid>
		<description><![CDATA[After a 1.0 release that certainly didn&#8217;t go unnoticed, it&#8217;s now time for the first maintenance release. The main focus of this release was improving detection accuracy. A large number of false positives and false negatives were fixed. Read the full announcement here, the list of fixed issues here. There are still a number of [...]]]></description>
			<content:encoded><![CDATA[<p>After a 1.0 release that certainly didn&#8217;t go unnoticed, it&#8217;s now time for the first maintenance release. The main focus of this release was improving detection accuracy. A large number of false positives and false negatives were fixed. Read the full announcement <a href="http://www.openinfosecfoundation.org/index.php/component/content/article/1-latest-news/102-suricata-101-released">here</a>, the list of fixed issues <a href="https://redmine.openinfosecfoundation.org/versions/show/10">here</a>.</p>
<p>There are still a number of open issues with regard to accuracy. Those will be addressed in 1.0.2, scheduled for late August, early September. We&#8217;re working on improving CUDA, stream engine improvements and inline mode as well. Keep an eye on <a href="https://redmine.openinfosecfoundation.org/versions/show/12">redmine</a> for the open and fixed issues.</p>
<p>I&#8217;ll be taking some time off to recharge a bit, the last couple of months have been exhausting. Things are very exciting, so I can hardly wait to get back to improve our little Meerkat! Cheers! <img src='http://www.inliniac.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.inliniac.net/blog/2010/07/29/suricata-1-0-1-released.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>On Suricata performance</title>
		<link>http://www.inliniac.net/blog/2010/07/22/on-suricata-performance.html</link>
		<comments>http://www.inliniac.net/blog/2010/07/22/on-suricata-performance.html#comments</comments>
		<pubDate>Thu, 22 Jul 2010 08:26:54 +0000</pubDate>
		<dc:creator>Victor Julien</dc:creator>
				<category><![CDATA[Snort]]></category>
		<category><![CDATA[Suricata]]></category>
		<category><![CDATA[oisf]]></category>
		<category><![CDATA[performance]]></category>

		<guid isPermaLink="false">http://www.inliniac.net/blog/?p=384</guid>
		<description><![CDATA[Lots of fuzz in the media about Suricata&#8217;s performance versus Snort yesterday. Some claiming Suricata is much faster, others claiming Snort is much faster. At this point I really don&#8217;t care much. What the Suricata development by the OISF has shown in my opinion is that we&#8217;ve managed to create a very promising new Open [...]]]></description>
			<content:encoded><![CDATA[<p>Lots of fuzz in the media about Suricata&#8217;s performance versus Snort yesterday. Some claiming Suricata is much faster, others claiming Snort is much faster.</p>
<p>At this point I really don&#8217;t care much. What the Suricata development by the OISF has shown in my opinion is that we&#8217;ve managed to create a very promising new Open Source project out here. In little over a year, funded for about $600k by the US government and with heavy (and growing) industry support, we&#8217;ve produced a new IDS/IPS engine mostly compatible with Snort but build on a all new code base an incorporating some very interesting fresh ideas. We&#8217;re already seeing a community form around our project with a lot of support from that new community.</p>
<p>So about this performance fuzz. Who to believe? Is Suricata faster than Snort? Yes, no, ehhh, depends on how you look at it. Is Suricata faster than Snort on a single core cycle for cycle, tick for tick? No. It&#8217;s pretty clear we aren&#8217;t, I didn&#8217;t expect us to be either. But we scale. We&#8217;ve had reports of running on a 32 core box and scaling to use all cores. There Suricata is much faster. Like Martin Roesch wrote on the <a href="http://vrt-sourcefire.blogspot.com/2010/06/single-threaded-data-processing.html">VRT blog</a> one can set up Snort on a box to one have instance of Snort per core (or multiple per core). This is in fact the way many appliance builders get to high speeds with it. While this may be feasible for appliance builders, admins we talked to that run their own IDS/IPS think it&#8217;s a management nightmare.</p>
<p>As we&#8217;re a new project with a fresh codebase, there is going to be a lot of low hanging fruit in performance optimizations. I&#8217;ll give an example here. On a test pcap, with a reduced ruleset (about 10k rules), Suricata took about 400s to inspect. Then with a bigger ruleset (about 14k rules), it suddenly took 1600s! After a little bit of cache profiling it turned out that the part of the engine where the address part of a signature was inspected was horribly cache inefficient. In less than an afternoon I rewrote it to be more efficient. Result, the same test now completes in under 600s. This code is in the current git master and will be in 1.0.1.</p>
<p>My point here being that there will be lots of room for optimizations, and not just minor stuff. So far we&#8217;ve mostly focused on being accurate (we still have work to do here) and having the algorithms be correct. Hardly any tuning has been done. In our last OISF meeting we&#8217;ve gotten a few very interesting help offers for serious performance testing and tuning on some really big boxes, state of the art CUDA hardware, 10GBit labs, etc. So I expect a lot of progress in the months to follow.</p>
<p>It&#8217;s clear that we have work to do. What I&#8217;m really excited about is how fast that work is progressing, how much help we&#8217;re getting both from our brand new community and the industry, and the openness of our development process.</p>
<p>On a final note, during the development of this project we&#8217;ve found a lot of bugs and issues in other tools. Will Metcalf, who runs our QA, has been reporting many issues in Snort and VRT sigs to Sourcefire, in Emerging Threats sigs to the ET community. We&#8217;ve found bugs in other tools as well, for example in a neat library called libcap-ng. So everyone benefits from our work! <img src='http://www.inliniac.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.inliniac.net/blog/2010/07/22/on-suricata-performance.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Suricata 1.0.0 released</title>
		<link>http://www.inliniac.net/blog/2010/07/01/suricata-1-0-0-released.html</link>
		<comments>http://www.inliniac.net/blog/2010/07/01/suricata-1-0-0-released.html#comments</comments>
		<pubDate>Thu, 01 Jul 2010 16:21:11 +0000</pubDate>
		<dc:creator>Victor Julien</dc:creator>
				<category><![CDATA[Suricata]]></category>
		<category><![CDATA[oisf]]></category>

		<guid isPermaLink="false">http://www.inliniac.net/blog/?p=379</guid>
		<description><![CDATA[After many months of hard work by the development team of the OISF, we have just released the first stable release of Suricata: 1.0.0. I&#8217;m really proud we pulled it off to create this stable release and to do it on time. I think it&#8217;s a good release too. Is it perfect? No, we have [...]]]></description>
			<content:encoded><![CDATA[<p>After many months of hard work by the development team of the OISF, we have just released the first stable release of Suricata: <a href="http://openinfosecfoundation.org/index.php/component/content/article/1-latest-news/98-suricata-100-released">1.0.0</a>. I&#8217;m really proud we pulled it off to create this stable release and to do it on time.</p>
<p>I think it&#8217;s a good release too. Is it perfect? No, we have a list <a href="https://redmine.openinfosecfoundation.org/projects/suricata/wiki/Known_issues">known issues</a> that we will continue to work on. So expect a <a href="http://redmine.openinfosecfoundation.org/versions/show/10">1.0.1</a> and maybe more maintenance releases in the following weeks.</p>
<p>On July 16th we will be having a <a href="http://www.openinfosecfoundation.org/index.php/component/content/article/1-latest-news/97-oisf-brainstorming-meeting-rsvp-now">public meeting in San Francisco</a> to discuss the next major development milestone. Everyone is welcome to join us there to bring in new ideas. If you can&#8217;t make it, no sweat, you can also send ideas to us privately or discuss them on our mailing lists.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.inliniac.net/blog/2010/07/01/suricata-1-0-0-released.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Ohloh</title>
		<link>http://www.inliniac.net/blog/2010/06/30/ohloh.html</link>
		<comments>http://www.inliniac.net/blog/2010/06/30/ohloh.html#comments</comments>
		<pubDate>Wed, 30 Jun 2010 08:47:54 +0000</pubDate>
		<dc:creator>Victor Julien</dc:creator>
				<category><![CDATA[ModSecurity]]></category>
		<category><![CDATA[Snort]]></category>
		<category><![CDATA[Suricata]]></category>
		<category><![CDATA[Vuurmuur]]></category>
		<category><![CDATA[oisf]]></category>
		<category><![CDATA[ohloh]]></category>

		<guid isPermaLink="false">http://www.inliniac.net/blog/?p=374</guid>
		<description><![CDATA[Ohloh is a pretty cool site for keeping track of projects and programmers. It&#8217;s an easy way to keep track of the development in a project and gives a nice indication of how actively it&#8217;s being developed. It has some social networkish features too, such as individual developers giving each other &#8220;kudos&#8221;. The code analysis [...]]]></description>
			<content:encoded><![CDATA[<p><a href="https://www.ohloh.net/">Ohloh</a> is a pretty cool site for keeping track of projects and programmers. It&#8217;s an easy way to keep track of the development in a project and gives a nice indication of how actively it&#8217;s being developed. It has some social networkish features too, such as individual developers giving each other &#8220;kudos&#8221;.</p>
<p>The code analysis is pretty nice: it gives statistics on code base size, growth, comment ratio, languages used, etc. Per developer it tracks quite a few stats as well.</p>
<p>It also does a estimate of the cost of a project. For the <a href="http://www.ohloh.net/p/suricata-engine">Suricata project</a> it currently estimates cost of 2.1 million USD. Actual cost are significantly less than that, less than half of that. So either we are severely underpaid or the calculation is off quite a bit <img src='http://www.inliniac.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>The per developer <a href="http://www.ohloh.net/p/suricata-engine/contributors/2062731058418766">code statistics</a> show that I&#8217;ve &#8220;touched&#8221; 131k lines of code out of 148k which confirms what I already knew: I need some vacation&#8230;</p>
<p>Anyway, check it out. <a href="http://www.ohloh.net/p/vuurmuur">Vuurmuur</a> is on there, as are <a href="http://www.ohloh.net/p/snort">Snort</a> and <a href="http://www.ohloh.net/p/modsecurity">ModSecurity</a>.</p>
<p>Oh by the way, Suricata 1.0 coming out tomorrow!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.inliniac.net/blog/2010/06/30/ohloh.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Setting up Suricata 0.9.0 for initial use on Ubuntu Lucid 10.04</title>
		<link>http://www.inliniac.net/blog/2010/05/10/setting-up-suricata-0-9-0-for-initial-use-on-ubuntu-lucid-10-04.html</link>
		<comments>http://www.inliniac.net/blog/2010/05/10/setting-up-suricata-0-9-0-for-initial-use-on-ubuntu-lucid-10-04.html#comments</comments>
		<pubDate>Mon, 10 May 2010 14:27:25 +0000</pubDate>
		<dc:creator>Victor Julien</dc:creator>
				<category><![CDATA[IPS]]></category>
		<category><![CDATA[Suricata]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[ids]]></category>
		<category><![CDATA[oisf]]></category>
		<category><![CDATA[Emerging Threats]]></category>

		<guid isPermaLink="false">http://www.inliniac.net/blog/?p=366</guid>
		<description><![CDATA[The last few days I blogged about compiling Suricata in IDS and IPS mode. Today I&#8217;ll write about how to set it up for first use. Starting with Suricata 0.9.0 the engine can run as an unprivileged user. For this create a new user called &#8220;suricata&#8221;. useradd &#45;&#45;no-create-home &#45;&#45;shell /bin/false &#45;&#45;user-group &#45;&#45;comment &#8220;Suricata IDP account&#8221; [...]]]></description>
			<content:encoded><![CDATA[<p>The last few days I blogged about compiling Suricata in <a href="http://www.inliniac.net/blog/2010/05/07/compiling-suricata-0-9-0-in-ubuntu-lucid-10-04-in-ids-mode.html">IDS</a> and <a href="http://www.inliniac.net/blog/2010/05/07/compiling-suricata-0-9-0-in-ubuntu-lucid-10-04-in-ips-inline-mode.html">IPS</a> mode. Today I&#8217;ll write about how to set it up for first use.</p>
<p>Starting with Suricata 0.9.0 the engine can run as an unprivileged user. For this create a new user called &#8220;suricata&#8221;.</p>
<blockquote><p>useradd &#45;&#45;no-create-home &#45;&#45;shell /bin/false &#45;&#45;user-group &#45;&#45;comment &#8220;Suricata IDP account&#8221; suricata</p></blockquote>
<p>This command will create a user and group called &#8220;suricata&#8221;. It will be unable to login as the shell is set to /bin/false.</p>
<p>The next thing to do is creating a configuration directory. Create /etc/suricata/ and copy the suricata.yaml example config into it. The example configuration can be found in the source archive you used to build Suricata:</p>
<blockquote><p>
mkdir /etc/suricata<br />
cp /path/to/suricata-0.9.0/suricata.yaml /etc/suricata/<br />
cp /path/to/suricata-0.9.0/classification.config /etc/suricata/
</p></blockquote>
<p>Next, create the log directory. </p>
<blockquote><p>
mkdir /var/log/suricata
</p></blockquote>
<p>The log directory needs to be writable for the user and group &#8220;suricata&#8221;, so change the ownership:</p>
<blockquote><p>
chown suricata:suricata /var/log/suricata
</p></blockquote>
<p>The last step I&#8217;ll be describing here is retrieving an initial ruleset. The 2 main rulesets you can use are <a href="http://www.emergingthreats.net/">Emerging Threats</a> (ET) and <a href="http://www.snort.org/snort-rules/">Sourcefire&#8217;s VRT</a> ruleset. Since putting VRT to use is a little bit more complicated I&#8217;ll be focussing on ET here.</p>
<p>First, download the emerging rules:</p>
<blockquote><p>
wget http://www.emergingthreats.net/rules/emerging.rules.tar.gz
</p></blockquote>
<p>Go to /etc/suricata/ and extract the rules archive:</p>
<blockquote><p>
cd /etc/suricata/<br />
tar xzvf /path/to/emerging.rules.tar.gz
</p></blockquote>
<p>There is a lot more to rules, such as tuning and staying updated, but thats beyond the scope of this post.</p>
<p>Suricata is now ready to be started:</p>
<blockquote><p>
suricata -c /etc/suricata/suricata.yaml -i eth0 &#45;&#45;user suricata &#45;&#45;group suricata
</p></blockquote>
<p>If all is setup properly, Suricata will tell you it is now running:</p>
<blockquote><p>
[2087] 9/5/2010 &#8212; 18:17:47 &#8211; (tm-threads.c:1362) <Info> (TmThreadWaitOnThreadInit) &#8212; all 8 packet processing threads, 3 management threads initialized, engine started.
</p></blockquote>
<p>There are 3 log files in /var/log/suricata that will be interesting to monitor:</p>
<p>- stats.log: displays statistics on packets, tcp sessions etc.<br />
- fast.log: a alerts log similar to Snort&#8217;s fast log.<br />
- http.log: displays HTTP requests in a Apache style format.</p>
<p>This should get you going. There is a lot more to deploying Suricata that I plan to blog on later.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.inliniac.net/blog/2010/05/10/setting-up-suricata-0-9-0-for-initial-use-on-ubuntu-lucid-10-04.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Compiling Suricata 0.9.0 in Ubuntu Lucid 10.04 in IPS (inline) mode</title>
		<link>http://www.inliniac.net/blog/2010/05/07/compiling-suricata-0-9-0-in-ubuntu-lucid-10-04-in-ips-inline-mode.html</link>
		<comments>http://www.inliniac.net/blog/2010/05/07/compiling-suricata-0-9-0-in-ubuntu-lucid-10-04-in-ips-inline-mode.html#comments</comments>
		<pubDate>Fri, 07 May 2010 08:30:30 +0000</pubDate>
		<dc:creator>Victor Julien</dc:creator>
				<category><![CDATA[IPS]]></category>
		<category><![CDATA[Suricata]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[oisf]]></category>
		<category><![CDATA[inline]]></category>

		<guid isPermaLink="false">http://www.inliniac.net/blog/?p=360</guid>
		<description><![CDATA[Note: the difference with the 0.8.2 post is that addition of libcap-ng-dev. This allows Suricata to run as an unprivileged user. Here is how to compile Suricata 0.9.0 in inline mode on Ubuntu Lucid 10.04. First, make sure you have the &#8220;universe&#8221; repository enabled. Go to the System menu, Administration, Software Sources. There enable &#8220;Community-maintained [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Note:</strong> the difference with the <a href="http://www.inliniac.net/blog/2010/05/01/compiling-suricata-0-8-2-in-ubuntu-lucid-10-04-in-ips-inline-mode.html">0.8.2 post</a> is that addition of libcap-ng-dev. This allows Suricata to run as an unprivileged user.</p>
<p>Here is how to compile Suricata 0.9.0 in <em>inline mode</em> on Ubuntu Lucid 10.04.</p>
<p>First, make sure you have the &#8220;universe&#8221; repository enabled. Go to the System menu, Administration, Software Sources. There enable &#8220;Community-maintained Open Source Software (universe)&#8221;. If you&#8217;re not running a gui, edit /etc/apt/sources.list and enable the universe repository there. Don&#8217;t forget doing an &#8220;apt-get update&#8221;.</p>
<p>Install the following packages needed to build Suricata: libpcre3-dev libpcap-dev libyaml-dev zlib1g-dev libnfnetlink-dev libnetfilter-queue-dev libnet1-dev libcap-ng-dev.</p>
<blockquote><p>
apt-get install libpcre3-dev libpcap-dev libyaml-dev zlib1g-dev libnfnetlink-dev libnetfilter-queue-dev libnet1-dev libcap-ng-dev
</p></blockquote>
<p>Download Suricata 0.9.0 <a href="http://www.openinfosecfoundation.org/download/suricata-0.9.0.tar.gz">here</a></p>
<p>Extract the suricata-0.9.0.tar.gz file as follows:</p>
<blockquote><p>
tar xzvf suricata-0.9.0.tar.gz
</p></blockquote>
<p>Enter the extracted directory suricata-0.9.0.</p>
<p>Run &#8220;./configure &#8211;enable-nfqueue&#8221;<br />
If &#8220;./configure &#8211;enable-nfqueue&#8221; was succesful, run &#8220;make&#8221;<br />
If &#8220;make&#8221; was succesful, run &#8220;sudo make install&#8221;<br />
Except for Suricata itself, the build process installed &#8220;libhtp&#8221;. For that to work properly, run &#8220;ldconfig&#8221;.</p>
<p>Run &#8220;suricata -V&#8221; and it should report version 0.9.0.</p>
<p>To use Suricata in inline mode, pass -q &lt;queue id&gt; to the command line. Example:</p>
<blockquote><p>
suricata -c /etc/suricata/suricata.yaml -q 0
</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.inliniac.net/blog/2010/05/07/compiling-suricata-0-9-0-in-ubuntu-lucid-10-04-in-ips-inline-mode.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Suricata 0.9.0 released</title>
		<link>http://www.inliniac.net/blog/2010/05/07/suricata-0-9-0-released.html</link>
		<comments>http://www.inliniac.net/blog/2010/05/07/suricata-0-9-0-released.html#comments</comments>
		<pubDate>Fri, 07 May 2010 08:08:45 +0000</pubDate>
		<dc:creator>Victor Julien</dc:creator>
				<category><![CDATA[IPS]]></category>
		<category><![CDATA[Suricata]]></category>
		<category><![CDATA[ids]]></category>
		<category><![CDATA[oisf]]></category>
		<category><![CDATA[inline]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.inliniac.net/blog/?p=351</guid>
		<description><![CDATA[Yesterday we released we first release candidate for our upcoming 1.0 release of Suricata. See the announcement on the OISF site here. Most notable changes are the following new features: - Support for the http_headers keyword was added - libhtp was updated to version 0.2.3 - Privilege dropping using libcap-ng is now supported - Proper [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday we released we first release candidate for our upcoming 1.0 release of Suricata. See the announcement on the OISF site <a href="http://www.openinfosecfoundation.org/index.php/component/content/article/1-latest-news/93-suricata-rc1-released">here</a>.</p>
<p>Most notable changes are the following new features:</p>
<div>- Support for the http_headers keyword was added</div>
<div>- libhtp was updated to version 0.2.3</div>
<div>- Privilege dropping using libcap-ng is now supported</div>
<div>- Proper support for &#8220;pass&#8221; rules was added</div>
<div>- Inline mode for Windows was added</div>
<div></div>
<p>Go get the release here: <a href="http://www.openinfosecfoundation.org/download/suricata-0.9.0.tar.gz">http://www.openinfosecfoundation.org/download/suricata-0.9.0.tar.gz</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.inliniac.net/blog/2010/05/07/suricata-0-9-0-released.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Compiling Suricata 0.8.2 in Ubuntu Lucid 10.04 in IPS (inline) mode</title>
		<link>http://www.inliniac.net/blog/2010/05/01/compiling-suricata-0-8-2-in-ubuntu-lucid-10-04-in-ips-inline-mode.html</link>
		<comments>http://www.inliniac.net/blog/2010/05/01/compiling-suricata-0-8-2-in-ubuntu-lucid-10-04-in-ips-inline-mode.html#comments</comments>
		<pubDate>Sat, 01 May 2010 19:45:12 +0000</pubDate>
		<dc:creator>Victor Julien</dc:creator>
				<category><![CDATA[IPS]]></category>
		<category><![CDATA[Suricata]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[oisf]]></category>
		<category><![CDATA[inline]]></category>

		<guid isPermaLink="false">http://www.inliniac.net/blog/?p=347</guid>
		<description><![CDATA[Yesterday I wrote about how to compile and install Suricata 0.8.2 as an IDS on Ubuntu Lucid 10.04, today I&#8217;ll explain the steps to compile and install it as an IPS. In IPS mode the engine runs in inline mode. This means that it gets it&#8217;s packets from netfilter and sets a verdict on them [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday I <a href="http://www.inliniac.net/blog/2010/04/30/compiling-suricata-0-8-2-in-ubuntu-lucid-10-04-in-ids-mode.html">wrote</a> about how to compile and install Suricata 0.8.2 as an IDS on Ubuntu Lucid 10.04, today I&#8217;ll explain the steps to compile and install it as an IPS. In IPS mode the engine runs in <em>inline</em> mode. This means that it gets it&#8217;s packets from <a href="http://www.netfilter.org/">netfilter</a> and sets a verdict on them after inspecting them. This way we can drop packets that trigger the rules.</p>
<p>First, make sure you have the &#8220;universe&#8221; repository enabled. Go to the System menu, Administration, Software Sources. There enable &#8220;Community-maintained Open Source Software (universe)&#8221;. If you&#8217;re not running a gui, edit /etc/apt/sources.list and enable the universe repository there. Don&#8217;t forget doing an &#8220;apt-get update&#8221;.</p>
<p>Install the following packages needed to build Suricata: libpcre3-dev libpcap-dev libyaml-dev zlib1g-dev libnfnetlink-dev libnetfilter-queue-dev libnet1-dev.</p>
<blockquote><p>
apt-get install libpcre3-dev libpcap-dev libyaml-dev zlib1g-dev libnfnetlink-dev libnetfilter-queue-dev libnet1-dev
</p></blockquote>
<p>Download Suricata 0.8.2 <a href="http://www.openinfosecfoundation.org/download/suricata-0.8.2.tar.gz">here</a></p>
<p>Extract the suricata-0.8.2.tar.gz file as follows:</p>
<blockquote><p>
tar xzvf suricata-0.8.2.tar.gz
</p></blockquote>
<p>Enter the extracted directory suricata-0.8.2.</p>
<p>Run &#8220;./configure &#8211;enable-nfqueue&#8221;<br />
If &#8220;./configure &#8211;enable-nfqueue&#8221; was succesful, run &#8220;make&#8221;<br />
If &#8220;make&#8221; was succesful, run &#8220;sudo make install&#8221;<br />
Except for Suricata itself, the build process installed &#8220;libhtp&#8221;. For that to work properly, run &#8220;ldconfig&#8221;.</p>
<p>Run &#8220;suricata -V&#8221; and it should report version 0.8.2.</p>
<p>To use Suricata in inline mode, pass -q &lt;queue id&gt; to the command line. Example:</p>
<blockquote><p>
suricata -c /etc/suricata/suricata.yaml -q 0
</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.inliniac.net/blog/2010/05/01/compiling-suricata-0-8-2-in-ubuntu-lucid-10-04-in-ips-inline-mode.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Suricata 0.8.2 released</title>
		<link>http://www.inliniac.net/blog/2010/04/19/suricata-0-8-2-released.html</link>
		<comments>http://www.inliniac.net/blog/2010/04/19/suricata-0-8-2-released.html#comments</comments>
		<pubDate>Mon, 19 Apr 2010 20:38:28 +0000</pubDate>
		<dc:creator>Victor Julien</dc:creator>
				<category><![CDATA[IPS]]></category>
		<category><![CDATA[Suricata]]></category>
		<category><![CDATA[ids]]></category>
		<category><![CDATA[oisf]]></category>

		<guid isPermaLink="false">http://www.inliniac.net/blog/?p=337</guid>
		<description><![CDATA[Today the OISF development team released 0.8.2 of the Suricata IDS/IPS engine. I feel this is definitely the best release so far. Read the announcement here. In short, stability was improved, memory footprint reduced, performance improved and new features were added. One of the tools we used to help improve the engine is a fuzzer [...]]]></description>
			<content:encoded><![CDATA[<p>Today the OISF development team released 0.8.2 of the Suricata IDS/IPS engine. I feel this is definitely the best release so far. Read the announcement <a href="http://www.openinfosecfoundation.org/index.php/component/content/article/1-latest-news/92-suricata-0-8-2-released">here</a>. In short, stability was improved, memory footprint reduced, performance improved and new features were added.</p>
<p>One of the tools we used to help improve the engine is a fuzzer created by Will Metcalf, our QA lead. In short, the script takes a pcap file, runs it through editcap (part of wireshark) altering a number of random bytes, then feeds the altered pcap file to Suricata. This resulted in many interesting corner cases. Naturally the script makes sure you don&#8217;t forget to enable &#8220;ulimit -c unlimited&#8221; and such <img src='http://www.inliniac.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  More on that script can be found on Will&#8217;s blog <a href="http://node5.blogspot.com/2010/04/help-us-make-our-meerkat-fuzzier.html">node5</a>.</p>
<p>For the next period we&#8217;ll be working on resolving a number of open issues. There are still a number of improvements we need to make to the relation between our app layer decoding modules and our detection engine. Next to this we&#8217;re still missing support for a number of rule keywords, such as asn1 and http_headers. We&#8217;re also working on getting our CUDA accelaration into a more usable shape. This release improved it slightly, by making it work on x86_64, but it&#8217;s still not useful in production environments.</p>
<p>So as usual, enough to do! Meanwhile, we&#8217;re looking for feedback on our release!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.inliniac.net/blog/2010/04/19/suricata-0-8-2-released.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Suricata has experimental CUDA support</title>
		<link>http://www.inliniac.net/blog/2010/02/20/suricata-has-experimental-cuda-support.html</link>
		<comments>http://www.inliniac.net/blog/2010/02/20/suricata-has-experimental-cuda-support.html#comments</comments>
		<pubDate>Sat, 20 Feb 2010 16:49:55 +0000</pubDate>
		<dc:creator>Victor Julien</dc:creator>
				<category><![CDATA[Suricata]]></category>
		<category><![CDATA[oisf]]></category>
		<category><![CDATA[cuda]]></category>
		<category><![CDATA[gpu]]></category>
		<category><![CDATA[pattern matching]]></category>

		<guid isPermaLink="false">http://www.inliniac.net/blog/?p=324</guid>
		<description><![CDATA[One area of interest in the development of Suricata is hardware acceleration. Using the GPU is particularly interesting, as they are cheap and widely available. We&#8217;ve been looking at using the GPU to speed up pattern matching as a first step. Since OpenCL promises to be a cross platform multi vendor API for doing this [...]]]></description>
			<content:encoded><![CDATA[<p>One area of interest in the development of Suricata is hardware acceleration. Using the GPU is particularly interesting, as they are cheap and widely available. We&#8217;ve been looking at using the GPU to speed up pattern matching as a first step. Since OpenCL promises to be a cross platform multi vendor API for doing this we first looked at OpenCL. But we were never able to get something stable out of it, not on the NVIDIA drivers in Linux anyway. As that didn&#8217;t go anywhere we decided to use CUDA for the time being. CUDA obviously is NVIDIA only. Once we have CUDA fully running we may revisit OpenCL or look at other implementations like AMD/ATI&#8217;s stream API.</p>
<p>What we have so far is a implementation our 2 gram SBNDM pattern matcher algorithm in CUDA. The detection thread(s) currently send packets one by one to a central dispatcher thread that controls the GPU. This setup is far from ideal performance wise, but our first goal was to get it working at all. Currently on my desktop CUDA actually slows things down.</p>
<p>In the next weeks and months we plan to do some redesigning of the CUDA implementation and it&#8217;s integration into the engine. We plan to send the packets in batches to the dispatcher thread right after the decoders have determined what the payload portion of a packet is. The (separate) detection thread(s) can then process the results of the GPU when they get to a packet. By using the CUDA scanning async like this we hope that we can reduce the costs of the transfer of packets from and to the card.</p>
<p>Currently the code in the tree can be activated by passing the &#8220;&#8211;enable-cuda&#8221; option to ./configure. Next, in the configuration file enable the cuda pattern matcher by setting the &#8220;mpm-algo&#8221; option to &#8220;b2g_cuda&#8221;. As a first test, run the CUDA unittests (assuming you enabled the building of the unittests too) by using &#8220;suricata -uUCuda&#8221;. Please note that currently running all unittests will fail if CUDA is enabled.</p>
<p>The code is only tested on 32bit Linux at the moment. There are some issues with 64bit that we&#8217;re resolving right now. We&#8217;re expecting to be continuously updating this code, so be sure to work with the most current version of the git repo all the time!</p>
<p>Let us know your experiences!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.inliniac.net/blog/2010/02/20/suricata-has-experimental-cuda-support.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
