1.12-HTTP数据包
1.12-HTTP数据包
响应状态码
•-1xx:指示信息—表示请求已接收,继续处理。
•-2xx:成功—表示请求已经被成功接收、理解、接受。
•-3xx:重定向—要完成请求必须进行更进一步的操作。
•-4xx:客户端错误—请求有语法错误或请求无法实现。
•-5xx:服务器端错误—服务器未能实现合法的请求。
•200 OK:客户端请求成功
•301 redirect:页面永久性移走,服务器进行重定向跳转;
•302 redirect:页面暂时性移走,服务器进行重定向跳转,具有被劫持的安全风险;
•400 BadRequest:由于客户端请求有语法错误,不能被服务器所理解;
•401 Unauthonzed:请求未经授权。(IP地址白名单,或者需要登录账号)
•403 Forbidden:服务器收到请求,但是拒绝提供服务。
•404 NotFound:请求的资源不存在,例如,输入了错误的URL;
•500 InternalServerError:服务器发生不可预期的错误,无法完成客户端的请求;
•503 ServiceUnavailable:服务器当前不能够处理客户端的请求
在目录扫描时3XX和200导致的误报:
在目录扫描时常见误报来源于网站的容错/统一错误处理:当访问不存在路径时,站点可能会返回 3xx
跳转或直接返回 200
并展示一个统一的“404主题页”。很多扫描器仅依据响应码(如看到 200 就当作存在)或第一次抓到的页面内容做判断,导致把不存在的路径误报为存在。
解决思路:先对目标站点采集“真实的错误响应指纹(不要跟随重定向)”,包括初次返回的 headers 与 body,然后把这些稳定标记作为排除规则。实践细节:用 curl -s -D headers.txt -o body.txt http://target/this-not-exist
采样,从 headers.txt
与 body.txt
中挑选唯一且稳定的标识(例如特定的 HTML 注释、固定的 title、特有 header 字段或响应长度/哈希),在工具中作为排除条件。(可以用7kbsacn或者dirsearch工具支持排除)。
注意事项:
- 用多个标记或用响应相似度(body hash / 字节长度 /相似度阈值)比单一关键字更可靠;
- 关键字必须来自初次服务器响应,而不是被跳转后页面中才能看到的内容,否则扫描器可能抓不到而仍然误报。
一个获取网站初次响应数据包的bat程序,会自动生成两个文件,一个是响应头,一个是响应体
在测试过程中爆破是否成功看状态码和响应包长度,成功登录一般是302跳转或者看成功之后的响应包内容长度不一样,用BP排个序就可以很好区分了。
黄鸟里面 新建一个API就是新建一个HTTP请求数据包 黄鸟的数据类型选择文件,填好URL就 可以做到文件上传,这样就不需要自己写一个HTML文件去上传文件了