http_client_body and http_uri aren't normalizers though, they are just pointers to locations, the way that I read it.  When the http preprocessor reads a packet it can separate those out into "sections" but they aren't normalized.  Maybe when Olney gets back from traveling the world he can correct me if I am wrong.<div>
<br></div><div>As far as the distance:0; that's simply saying that the subsequent content must be after the uricontent.  not any distance "away" from the end of it, just after the previous match succeeded. </div>
<div><br></div><div>J</div><div><br><div class="gmail_quote">On Fri, Apr 30, 2010 at 3:21 PM, Will Metcalf <span dir="ltr"><<a href="mailto:william.metcalf@...2420...">william.metcalf@...2420...</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="im">> Correct.  Since this is a normalized field (similar to uricontent), you<br>
> can't have a relative statement to a normalized http field like that.<br>
> This is as designed.<br>
><br>
</div>This is not entirely accurate ;-)...  For example some of the<br>
spyware-put rules mix uricontent,content and distance:0<br>
<br>
Also from my tests you can mix http_client_body and http_uri with<br>
distance and within, but it fails always for cookie and header.  Also<br>
with http_uri just like uricontent if you encode the url distance and<br>
within doesn't work.<br>
<br>
Regards,<br>
<font color="#888888"><br>
Will<br>
</font><div><div></div><div class="h5"><br>
On Fri, Apr 30, 2010 at 11:47 AM, Joel Esler <<a href="mailto:jesler@...180.....435...">jesler@...435...</a>> wrote:<br>
<br>
> On Fri, Apr 30, 2010 at 12:35 PM, Mike Cox <<a href="mailto:mike.cox52@...2420...">mike.cox52@...2420...</a>> wrote:<br>
>><br>
>> I'm testing some rules and it seems that using the within content<br>
>> modifier on a content match that is relative to a previous content<br>
>> match and uses the http_headers content modifier does not work.  For<br>
>> example, this is the original rule that is not alerting:<br>
>><br>
>> alert tcp any any -> $HOME_NET $HTTP_PORTS (msg:"Testing Referer";<br>
>> flow:established,to_server; content:"|0d 0a|Referer\: "; nocase;<br>
>> http_header; content:!"<a href="http://google.com" target="_blank">google.com</a>"; nocase; within:50;<br>
>> classtype:bad-unknown; rev:1; sid:7500010;)<br>
>><br>
>> But if I remove the within OR the http_header content modifiers, the<br>
>> rule alerts.  So both these alert:<br>
>><br>
>> alert tcp any any -> $HOME_NET $HTTP_PORTS (msg:"Testing Referer";<br>
>> flow:established,to_server; content:"|0d 0a|Referer\: "; nocase;<br>
>> content:!"<a href="http://google.com" target="_blank">google.com</a>"; nocase; within:50; classtype:bad-unknown;<br>
>> rev:1; sid:7500010;)<br>
>><br>
>> alert tcp any any -> $HOME_NET $HTTP_PORTS (msg:"Testing Referer";<br>
>> flow:established,to_server; content:"|0d 0a|Referer\: "; nocase;<br>
>> http_header; content:!"<a href="http://google.com" target="_blank">google.com</a>"; nocase; classtype:bad-unknown;<br>
>> rev:1; sid:7500010;)<br>
>><br>
>> Is there some weird stuff going on with the HTTP header buffer such<br>
>> that subsequent within content modifiers don't work?  If so, is this<br>
>> as designed?<br>
>><br>
>> Thanks.<br>
>><br>
>> -Mike Cox<br>
>><br>
>><br>
>> ------------------------------------------------------------------------------<br>
>> _______________________________________________<br>
>> Snort-sigs mailing list<br>
>> <a href="mailto:Snort-sigs@lists.sourceforge.net">Snort-sigs@...2926...ts.sourceforge.net</a><br>
>> <a href="https://lists.sourceforge.net/lists/listinfo/snort-sigs" target="_blank">https://lists.sourceforge.net/lists/listinfo/snort-sigs</a><br>
><br>
><br>
> ------------------------------------------------------------------------------<br>
><br>
> _______________________________________________<br>
> Snort-sigs mailing list<br>
> <a href="mailto:Snort-sigs@lists.sourceforge.net">Snort-sigs@...3134...ourceforge.net</a><br>
> <a href="https://lists.sourceforge.net/lists/listinfo/snort-sigs" target="_blank">https://lists.sourceforge.net/lists/listinfo/snort-sigs</a><br>
><br>
><br>
</div></div></blockquote></div><br></div>