恶意用户可以使用异常和错误信息来绘制 Web 应用程序的 API,因此通常会查看安全检查表以建议仅返回“请联系您的管理员”类型的消息。
另一方面,我们鼓励使用 HTTP 标准,这些标准会推荐诸如
- 400 -- 错误请求
- 401 -- 未经授权
- 403——禁止
- 405 -- 不允许的方法
- 500 -- 内部错误
- 501 -- 未实施
这些似乎都提供了有关 API 的一些信息,即存在这样的调用,虽然您的攻击接近于格式正确的请求,但还不够接近。
是否应该将所有这些 HTTP 请求都转换为相同的错误消息,还是应该遵守标准?
更新:作为应用程序开发人员,我个人更喜欢相当丰富的异常消息,并且不喜欢我工作的大多数应用程序为应用程序返回的所有内容返回 200,并且仅在 ASP.NET 或 IIS 感觉返回时返回非 200 错误非 200 错误。