05-07-2002 08:16 AM - edited 03-08-2019 10:33 PM
How can I log the whole GET request for a http server ? The signature has to trigger if a special string is matching and I would like to get the whole GET request sent to the server, because I want to see if the request was sent by a script or from a browser and what the referer was. Using a regex like GET /hugo.*$ gives me only the first line.
Any ideas ?
05-16-2002 10:01 AM
Since there has been no response to your post, it appears to be either too complex or too rare an issue for other forum members to assist you. If you don't get a suitable response to your post, you may wish to review our resources at the online Technical Assistance Center (http://www.cisco.com/tac) or speak with a TAC engineer. You can open a TAC case online at http://www.cisco.com/tac/caseopen
If anyone else in the forum has some advice, please reply to this thread.
Thank you for posting.
05-17-2002 10:36 AM
Actually I did something similiar with Snort rules (which you can easily do with the Ciso signature rules). Basically I looked for any request without the user agent field. So your rule would require probably a http/1. something and must not contain a user agent field. I would use the http part because an attacker may not use host or other common fields.
05-20-2002 05:48 AM
Two CRLF pairs is the key here.
Try something like Get /hugo.*[\r\n][\r\n[\r\n[\r\n]
The Request is terminated by two sets of CRLF pairs, The above regex will accept them in either order.
05-20-2002 06:20 AM
Actually that is only correct if there are no other fields associated with the request. If there are other fields then it will be only one \r\n. Some scripted attacks use limited fields for instance Code Red uses the host header and I accept as well. I believe Whisker will use or can use some of ther headers as well.
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide