http - 如何知道它是否真的是 404 页面?

标签 http webserver http-status-code-404

我从中学到了什么 Foregenix :

The HTTP 404 Not Found Error means that the webpage you were trying to reach could not be found on the server. It is a Client-side Error which means that either the page has been removed or moved and the URL was not changed accordingly, or that you typed in the URL incorrectly

但后来我也用 Python 进行网络应用程序渗透测试,我想知道如果我只检查页面上的字符串 404,它可能不是真正的 404 错误。 有可能页面存在但标题是 404 只是为了愚弄我们。

那么我究竟如何才能知道呢?

最佳答案

您可以查看 HTTP 状态码,看它是否为 404。状态码在响应的第一行:

HTTP/1.1 404 Not Found

如果您使用 HTTPlib您可以只读取 HTTPResponse 对象的 status 属性。

但是,由服务器决定发送什么 HTTP 状态代码。仅仅因为 404 被定义为“找不到页面”并不意味着服务器不能骗你。做这样的事情很常见:

  • 发送 404 而不是 403,以隐藏需要身份验证的资源。
  • 发送 404 而不是 500,以掩盖某些东西不工作的事实。
  • 当您的 IP 由于某种原因被阻止时发送 404。

如果不能访问服务器,就不可能知道幕后到底发生了什么。

关于http - 如何知道它是否真的是 404 页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37590774/

相关文章:

windows - 您会为 Windows 推荐什么 HTTP 流量监视器?

Python请求,如何将内容类型添加到多部分/表单数据请求

tomcat - 在服务器完全部署之前阻止对 tomcat 的传入请求

Java 套接字关闭 HTTP 1.0 连接

java - 我在 Spring Boot 中调用 API 时遇到 404 错误

coldfusion - favicon 404 会影响性能吗

http - URL 路径中的资源是否有自己的 IP 地址?

c - 如何使用 C 程序直播视频。 HTTP 回复应该是什么?如果可能,如何使用分块编码?

Nginx 尝试代理传递到上游名称

eclipse - SpagoBI 轴故障