-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
Enhancement: Allowed HTTP Methods: OPTIONS, HEAD, GET, POST #732
Comments
Nikto takes this from the response to both: So it looks like Apache is closing down the method, but still reporting it on OPTIONS. There could be a case for an enhancement to try the actual method; but this wouldn't be a priority. |
Yes, on Apache, an OPTIONS request always returns |
I'm wondering if OPTIONS * check should be removed? My hesitation on this has always been that we don't what sub-urls might have a different option enabled, e.g., |
IMHO from a security scanner perspective, you can't trust what OPTIONS returns. As seen above OPTIONS might not match at all if RewriteRules are used to allow/disallow different HTTP methods on specific URLs, for example. It gets even more complicated in CORS sending preflight requests with the OPTIONS method and requesting permissions using addtional headers. |
Expected behavior
For example, we disabled all HTTP methods except for GET and OPTIONS. Nikto then should print
+ Allowed HTTP Methods: OPTIONS, GET
.Actual behavior
+ Allowed HTTP Methods: OPTIONS, HEAD, GET, POST
. This is wrong.Steps to reproduce
Apache:
curl:
curl --verbose -X POST http://myserver
:HTTP/1.1 405 Method Not Allowed
Nikto:
+ Allowed HTTP Methods: OPTIONS, HEAD, GET, POST
Nikto version
The text was updated successfully, but these errors were encountered: