-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
bug when space in url #4974
Comments
I'm not sure if this is actually a bug. Currently the code parses the request-line by whitespace which is the correct way to do it (as described in the HTTP RFC 7230 section 3.1.1). In the code, if it is unable to parse the request-line, then it stops parsing the request. This may be a bug in the client you are using that is sending the HTTP request and not correctly encoding the URL.
Cheers! |
The packetbeat is used to monitoring flow .When a hacker attemp to attack us using a deformed payload which maybe inculde a space.And in this case,packetbeat will dorp the packet ,so the hacker will Bypass monitoring。 |
Fixing the code to parse the URI with space doesn't look too complicated, what worries me is how the parameters parsing will behave in this case since we don't have the space url encoded. |
This fix an issue when the http request contains a space instead of breaking the line with `bytes.fields` we are finding the start and the end of the URI using the `METHOD` verb and the `HTTP/{VERSION}`. This will allow packet beat to record theses request instead of ignoring them. Fixes: elastic#4974
This fix an issue when the http request contains a space instead of breaking the line with `bytes.fields` we are finding the start and the end of the URI using the `METHOD` verb and the `HTTP/{VERSION}`. This will allow packet beat to record theses request instead of ignoring them. Fixes: #4974
This fix an issue when the http request contains a space instead of breaking the line with `bytes.fields` we are finding the start and the end of the URI using the `METHOD` verb and the `HTTP/{VERSION}`. This will allow packet beat to record theses request instead of ignoring them. Fixes: elastic#4974
This fix an issue when the http request contains a space instead of breaking the line with `bytes.fields` we are finding the start and the end of the URI using the `METHOD` verb and the `HTTP/{VERSION}`. This will allow packet beat to record theses request instead of ignoring them. Fixes: #4974
When I get a request with space in url like this:
"http://a.example.com/index?id=1 asd"
The packetbeat can't work normally.
This is a Bug When parse http protocol.
The text was updated successfully, but these errors were encountered: