<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:Calibri
}
--></style></head>
<body class='hmmessage'><div dir='ltr'>>Also I see no reason why replacing "content" with "uricontent" should not work, because as the official Snort documentation says: "This is equivalent to using the http_uri modifier to a content keyword." (refer to <a class="ecxmoz-txt-link-freetext" href="http://manual.snort.org/node385.html" target="_blank">http://manual.snort.org/node385.html</a>).<div><br></div><div><span style="font-size: 12pt;">Re-reading your email and my reply I realize I got this one completely backwards :), sorry about that.</span></div><div><br></div><div>>I agree that this is a preferable addition in order to fine-tune the rule, but adding this makes no difference when I have <i>'</i><i>content:"/test.php"; http_uri;</i>' in my rule, i.e. it still does not trigger an alert. This also seems logical because it only applies an additional filter.</div><div><br></div><div>Flow direction matters since Snort keeps track of the session, and should reflect the direction you are trying to match. I forgot to mention that you also need to define the state of your flow (established, stateless, etc). Without  a packet capture and your configuration it is difficult for me to see what you are trying to accomplish. That said, I setup a quick web server and tested the following rules, they all worked:</div><div><br></div><div><div>alert tcp any any -> $HOME_NET $HTTP_PORTS (msg:"test"; flow:to_server,established; content:"/test.php"; http_uri; classtype:unknown; sid:99000001; rev:1;)</div><div>alert tcp any any -> $HOME_NET $HTTP_PORTS (msg:"test"; flow:to_server; content:"/test.php"; http_uri; classtype:unknown; sid:99000002; rev:1;)</div><div>alert tcp any any -> $HOME_NET $HTTP_PORTS (msg:"test"; flow:to_server,established; uricontent:"/test.php"; classtype:unknown; sid:99000003; rev:1;)</div><div>alert tcp any any -> $HOME_NET $HTTP_PORTS (msg:"test"; uricontent:"/test.php"; classtype:unknown; sid:99000004; rev:1;)</div><div><br></div><div>YM</div><br><div><hr id="stopSpelling">Date: Thu, 8 May 2014 19:27:01 +0200<br>From: masterjel5000@...125...<br>To: snort@...15979...<br>CC: snort-users@lists.sourceforge.net<br>Subject: Re: [Snort-users] URI content not being identified<br><br>
  
    
  
  
    <div class="ecxmoz-cite-prefix">You said:<br>
      <br>
      <i>Changing the "content:" to "uricontent" or "http_uri" should
        not work.  The "content" keyword allows you to search for a
        string pattern, in your case "/test.php". Content modifiers on
        the other hand apply to your content. So to have your rule
        corrected try something like:</i><i><br>
      </i><i>content:"/test.php"; http_uri;</i><br>
      <br>
      I am aware that I should place <i>http_uri; </i>separate from
      the content specification, but this doesn't work. Also I see no
      reason why replacing "content" with "uricontent" should not work,
      because as the official Snort documentation says: "This is
      equivalent to using the http_uri modifier to a content keyword."
      (refer to <a class="ecxmoz-txt-link-freetext" href="http://manual.snort.org/node385.html" target="_blank">http://manual.snort.org/node385.html</a>).<br>
      <br>
      You also said:<br>
      <br>
      <i>I would also add flow direction in the rule: flow:to_server,
        established for example, depending on the direction of the
        traffic (3-way handshake).</i><br>
      <br>
      I agree that this is a preferable addition in order to fine-tune
      the rule, but adding this makes no difference when I have <i>'</i><i>content:"/test.php";
        http_uri;</i>' in my rule, i.e. it still does not trigger an
      alert. This also seems logical because it only applies an
      additional filter.<br>
      <br>
      Nonetheless, thanks for your suggestions! I still hope someone is
      able to help me with this :-)<br>
      <br>
      Y M schreef op 5/8/2014 6:06 PM:<br>
    </div>
    <blockquote cite="mid:COL129-W524C2B3189313997736563A8490@...12678...">
      <blockquote>
        <pre>Date: Thu, 8 May 2014 17:44:34 +0200
From: <a class="ecxmoz-txt-link-abbreviated" href="mailto:masterjel5000@...125...">masterjel5000@...125...</a>
To: <a class="ecxmoz-txt-link-abbreviated" href="mailto:snort-users@...3204...ts.sourceforge.net">snort-users@lists.sourceforge.net</a>
Subject: [Snort-users] URI content not being identified

Hello all,

I have the following Snort rule:

alert tcp any any -> $HOME_NET $HTTP_PORTS (msg: "HTTP content test";
content: "test.php"; classtype:web-application-attack; sid:5000001; rev:1;)

Now when I visit mysite.com/test.php an alert is correctly generated.
However, as soon as I change "content" to "uricontent", or add
"http_uri;" before the "classtype", no alert is generated. I analyzed
the traffic using tshark and I can see requests to "test.php" coming
through. Do you know any step I could take that may help to identify
what is causing this?
</pre>
      </blockquote>
      <pre>Changing the "content:" to "uricontent" or "http_uri" should not work.  The "content" keyword allows you to search for a string pattern, in your case "/test.php". Content modifiers on the other hand apply to your content. So to have your rule corrected try something like:
content:"/test.php"; http_uri;
I would also add flow direction in the rule: flow:to_server, established for example, depending on the direction of the traffic (3-way handshake).
</pre>
      <blockquote>
        <pre>Thanks!

------------------------------------------------------------------------------
Is your legacy SCM system holding you back? Join Perforce May 7 to find out:
&#149; 3 signs your SCM is hindering your productivity
&#149; Requirements for releasing software faster
&#149; Expert tips and advice for migrating your SCM now
<a class="ecxmoz-txt-link-freetext" href="http://p.sf.net/sfu/perforce" target="_blank">http://p.sf.net/sfu/perforce</a>
_______________________________________________
Snort-users mailing list
<a class="ecxmoz-txt-link-abbreviated" href="mailto:Snort-users@...1844...ourceforge.net">Snort-users@lists.sourceforge.net</a>
Go to this URL to change user options or unsubscribe:
<a class="ecxmoz-txt-link-freetext" href="https://lists.sourceforge.net/lists/listinfo/snort-users" target="_blank">https://lists.sourceforge.net/lists/listinfo/snort-users</a>
Snort-users list archive:
<a class="ecxmoz-txt-link-freetext" href="http://sourceforge.net/mailarchive/forum.php?forum_name=snort-users" target="_blank">http://sourceforge.net/mailarchive/forum.php?forum_name=snort-users</a>

Please visit <a class="ecxmoz-txt-link-freetext" href="http://blog.snort.org" target="_blank">http://blog.snort.org</a> to stay current on all the latest Snort news!
</pre>
      </blockquote>
      <pre>                                         
</pre>
    </blockquote>
    <br></div></div>                                    </div></body>
</html>