You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When Gunicorn receives a request with a null byte in a URI, it does not reject the request. Null bytes are not permitted within request URIs as per the grammar in the RFCs, so requests with null bytes in URIs should be rejected with status 400.
To see this for yourself,
Start a simple Gunicorn server that echoes the URI, such as this one:
And quotes, and pipe, which should also be received percent-encoded only, but still are. I guess focusing on the high-risk controls first is the way to go here?
Unfortunately, Gunicorn has not had tests for a whole lot rfc3986-ignorant URL-lookalikes, so it is not clear which of the other weird "should have been percent-encoded" or "no, not even if you % it" strings worked for someone before, who will be unhappy about Gunicorn refusing to forward them.
When Gunicorn receives a request with a null byte in a URI, it does not reject the request. Null bytes are not permitted within request URIs as per the grammar in the RFCs, so requests with null bytes in URIs should be rejected with status 400.
To see this for yourself,
The text was updated successfully, but these errors were encountered: