- HTTP - JavaScript Guidebook : HTTP 介绍
URI
- Scheme : 指示使用什么协议来访问资源,例如HTTP,HTTPS,FTP
- User : 登录的用户
- Host : 服务器域名或 IP
- Port : 目标端口
- Path : 访问资源的位置
- Query String : 请求
- Fragment : 请求页面位置的引用
HTTP 方法
方法 | 作用 |
---|---|
GET | 获取资源 |
POST | 用来传输实体主体 |
PUT | 传输文件 |
HEAD | 获得报文首部,这个方法和 GET 方法一样,只是不返回报文的主体。主要用于确认 URI 的有效性以及资源更新的日期和时间 |
DELETE | 删除文件 |
OPTIONS | 询问支持的方法 |
TRACE | 追踪路径, TRACE 是用来确认连接过程中经过的一系列服务器 |
CONNECT | 使用隧道协议连接代理 |
HTTP 状态码
常见 HTTP 状态码:
Wireshark 分析
笔记 | Wireshark 过滤器 |
---|---|
全局搜索 注意:HTTP 2 是 HTTP 协议的修订版,具有更好的性能和安全性。它支持二进制数据传输和请求&响应多路复用。 |
+ http + http2 |
“HTTP** 请求方法”**,用于抓住唾手可得的果实: + 得到 + 邮政 + 请求:列出所有请求 |
+ http.request.method == “GET” + http.request.method == “POST” + http.request |
抓住唾手可得的果实的“HTTP 响应状态代码” + 200 OK:请求成功。 + 301 永久移动:资源被移动到新的 URL/路径(永久)。 + 302 临时移动:资源被移动到新的 URL/路径(临时)。 + 400 Bad Request:服务器不理解请求。 + 401 Unauthorised: URL 需要授权(登录等)。 + 403 Forbidden:无法访问请求的 URL。 + 404 Not Found:服务器找不到请求的 URL。 + 405 Method Not Allowed:使用的方法不合适或被阻止。 + 408 Request Timeout: 请求看起来比服务器等待时间长。 + 500 Internal Server Error:请求未完成,意外错误。 + 503 Service Unavailable:请求未完成服务器或服务已关闭。 |
+ http.response.code == 200 + http.response.code == 401 + http.response.code == 403 + http.response.code == 404 + http.response.code == 405 + http.response.code == 503 |
摘取唾手可得的果实的“HTTP** 参数” : + User agent: Web 服务器应用程序的浏览器和操作系统标识。 + Request URI :指向从服务器请求的资源。 + Full URI :完整的URI信息。 URI**:统一资源标识符。 |
+ http.user_agent contains “nmap” + http.request.uri contains “admin” + http.request.full_uri contains “admin” |
摘取唾手可得的果实的“HTTP** 参数” : + Server:服务器服务名称。 + Host:服务器的主机名 + Connection:连接状态。 + Line-based text data:服务器提供的明文数据。 + HTML Form URL Encoded:** Web 表单信息。 |
+ http.server contains “apache” + http.host contains “keyword” + http.host == “keyword” + http.connection == “Keep-Alive” + data-text-lines contains “keyword” |
User Agent 分析
Notes | Wireshark Filter |
---|---|
Global search. | + http.user_agent |
Research outcomes for grabbing the low-hanging fruits: + 短时间内通知来自同一主机的不同用户代理信息。 + 非标准和自定义用户代理信息。 + 细微的拼写差异(“Mozilla” is not the same as “Mozlilla” or “Mozlila”) + 用户代理字段中的审计工具信息,如 Nmap、Nikto、Wfuzz 和 sqlmap。 + 用户代理字段中的有效负载数据 |
+ (http.user_agent contains “sqlmap”) or (http.user_agent contains “Nmap”) or (http.user_agent contains “Wfuzz”) or (http.user_agent contains “Nikto”) |