<div dir="ltr"><div>Thanks for the replies.  I don't disagree with this behavior but I do think the Snort manual should make this clear because I've been using Snort for many years and this is the first I've heard of it.<br><br></div>-Mike Cox<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Oct 22, 2014 at 9:34 PM, Steve Sturges (ststurge) <span dir="ltr"><<a href="mailto:ststurge@...3461..." target="_blank">ststurge@...3461...</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Legacy, kinda.  But more efficient performance wise.  :)<br>
<div class="HOEnZb"><div class="h5"><br>
> On Oct 22, 2014, at 9:18 PM, "Joshua Kinard" <<a href="mailto:kumba@...2185...">kumba@...2185...</a>> wrote:<br>
><br>
> I'll wager that this is a relic of Snort's early days as primarily an HTTP<br>
> traffic sniffer, before it became a more generic deep-packet inspection tool.<br>
><br>
> Something like this should get a mention in the Snort manual, though there are<br>
> several places where it states that the longest content match is the default,<br>
> yet doesn't differentiate between a normal content match and a content match<br>
> modified by an HTTP keyword.  So, not a quick fix w/o refactoring the lingo in<br>
> a few spots.<br>
><br>
> --J<br>
><br>
><br>
>> On 10/22/2014 16:30, Josh Rosenbaum (jrosenba) wrote:<br>
>> Hi Mike,<br>
>><br>
>> Sorry for this unfortunate news, but it looks like you will need tweak those<br>
>> sigs.  I can confirm that if a fast_pattern keyword is not specified for a<br>
>> given rule, the default fast pattern is the longest HTTP buffer content.<br>
>> If no HTTP buffer content is present, then the fast pattern is the longest<br>
>> content.<br>
>><br>
>> Josh<br>
>><br>
>><br>
>> From: Mike Cox <<a href="mailto:mike.cox52@...2499...">mike.cox52@...2499...</a><mailto:<a href="mailto:mike.cox52@...2499...">mike.cox52@...2499...</a>>><br>
>> Date: Wednesday, October 22, 2014 at 8:16 AM<br>
>> Subject: [Snort-devel] fast_pattern not always longest content string by default?<br>
>><br>
>> Hi All,<br>
>><br>
>> I was looking thru some of my sigs with 'debug-print-fast-pattern' turned on<br>
>> and noticed that the fast pattern string was not always the longest content<br>
>> match by default.  Specifically, it appears that content matches in (valid<br>
>> for fast_pattern) HTTP Inspect buffers (e.g. http_header, http_uri, etc.)<br>
>> are taking priority.  For example, consider this sig:<br>
>><br>
>> alert tcp any any -> any $HTTP_PORTS (msg:"FP Test";<br>
>> flow:established,to_server; content:"<a href="http://twitter.com" target="_blank">twitter.com</a><<a href="http://twitter.com" target="_blank">http://twitter.com</a>>";<br>
>> http_header; content:"hellow Twitter tweet"; sid:1234567;)<br>
>><br>
>> The longest content match is "hellow Twitter tweet" but when I look at the<br>
>> fast pattern debug output, the fast pattern used is<br>
>> "<a href="http://twitter.com" target="_blank">twitter.com</a><<a href="http://twitter.com" target="_blank">http://twitter.com</a>>".<br>
>><br>
>> Having the HTTP Inspect buffers take priority makes sense because they will<br>
>> be smaller than the entire packet and thus more efficient.  However, I do<br>
>> not see this behavior documented in the manual which says, "the default<br>
>> behavior of fast pattern determination is to use the longest content in the<br>
>> rule..."<br>
>><br>
>> Can someone comment/confirm this?  It is looking like I may have to<br>
>> review/tweak a plethora of sigs.... :(<br>
>><br>
>> Thanks!<br>
>><br>
>> -Mike Cox<br>
><br>
> ------------------------------------------------------------------------------<br>
> _______________________________________________<br>
> Snort-devel mailing list<br>
> <a href="mailto:Snort-devel@lists.sourceforge.net">Snort-devel@...2969....sourceforge.net</a><br>
> <a href="https://lists.sourceforge.net/lists/listinfo/snort-devel" target="_blank">https://lists.sourceforge.net/lists/listinfo/snort-devel</a><br>
> Archive:<br>
> <a href="http://sourceforge.net/mailarchive/forum.php?forum_name=snort-devel" target="_blank">http://sourceforge.net/mailarchive/forum.php?forum_name=snort-devel</a><br>
><br>
> Please visit <a href="http://blog.snort.org" target="_blank">http://blog.snort.org</a> for the latest news about Snort!<br>
<br>
------------------------------------------------------------------------------<br>
_______________________________________________<br>
Snort-devel mailing list<br>
<a href="mailto:Snort-devel@lists.sourceforge.net">Snort-devel@...1685...ceforge.net</a><br>
<a href="https://lists.sourceforge.net/lists/listinfo/snort-devel" target="_blank">https://lists.sourceforge.net/lists/listinfo/snort-devel</a><br>
Archive:<br>
<a href="http://sourceforge.net/mailarchive/forum.php?forum_name=snort-devel" target="_blank">http://sourceforge.net/mailarchive/forum.php?forum_name=snort-devel</a><br>
<br>
Please visit <a href="http://blog.snort.org" target="_blank">http://blog.snort.org</a> for the latest news about Snort!<br>
</div></div></blockquote></div><br></div>