我正在阅读一家"网络应用程序安全"公司的报告,该公司一直在扫描我正在为之工作的公司的几个网站.从报告中看来 - 似乎是在没有任何人为参与的情况下编写的 - 有几次尝试使用这样的请求打破我们的网站:
DEBUG /some_path/some_unexisting_file.aspx
Accept: */*
More-Headers: ...
Run Code Online (Sandbox Code Playgroud)
我们服务器的结果令我感到惊讶:
HTTP/1.1 200 OK
Headers: ...
Run Code Online (Sandbox Code Playgroud)
正如DEBUG在HTTP 1.1规范中似乎没有提到的那样,我希望结果是400 Bad Request或405 Method Not Allowed.
从早期关于SO的问题,我已经了解到DEBUG动词用于某种类型的ASP.NET应用程序的远程调试,但在该问题或其答案中没有很多细节可用.
DEBUG动词究竟用于什么?200 OK使用此动词时,为什么应用程序会回答无效的URL?这是安全问题吗?围绕DEBUG动词有任何潜在的安全问题,ASP.NET开发人员/系统管理员应该知道吗?
任何见解/建议/参考将不胜感激.