
老生常谈 重中之重 基础之基础
一、HTTP请求
1、请求行
请求方法:表示对资源期望进行何种操作,常用的如 GET、POST
请求目标:通常是一个 URL ,表明了要操作的资源。
版本号:表示报文使用的 HTTP 协议版本。
GET / HTTP/1.1
请求方法

2、请求头
请求头部由关键字/值对组成,每行一对,关键字和值用英文冒号“:”分隔。请求头部通知服务器有关于客户端请求的信息
服务端据此获取客户端的信息。与缓存相关的规则信息,均包含在 header 中


3.空行
最后一个请求头之后是一个空行,发送回车符和换行符,通知服务器以下不再有请求头。
4、请求体
请求数据不在GET方法中使用,而是在POST方法中使用。POST方法适用于需要客户填写表单的场合。与请求数据相关的最常使用的请求头是Content-Type和Content-Length。
与请求数据相关的最常使用的请求头是Content-Type和Content-Length。
请求体传输什么格式数据,请求头中要修改content-type

二、HTTP相应
HTTP响应也由三个部分组成,分别是:状态行、响应头、空行、响应正文。
在响应中唯一真正的区别在于第一行中用状态信息代替了请求信息。
状态行(status line)通过提供一个状态码来说明所请求的资源情况。
HTTP-Version Status-Code Reason-Phrase CRLF
其中,HTTP-Version表示服务器HTTP协议的版本;
Status-Code表示服务器发回的响应状态代码;
Reason-Phrase表示状态代码的文本描述。
相关链接:
http请求头详解 包含字段
三、拓展
1、HTTPS 关键扩展
HTTPS 在 TCP 三次握手后增加 SSL/TLS 握手(协商加密算法、验证证书、生成会话密钥),再传输 HTTP 数据。
对称加密(AES)
加密流程:TLS握手 → 交换密钥 → 对称加密通信
证书验证:客户端验证服务端证书的签发链和有效期
端口:默认443(HTTP为80)

2、postman
发http包的 repeter pro max
如sqlmap
sqlmap -u www.zmxupforever.cn 不存在 默认sqlmap访问头进行注入
www.zmxupforever.cn/x.php?id=1 包
sqlmap -r date.txt 存在 采用提交的数据包去访问
3、常见陷阱


四、状态码
1、状态码判断
(1)文件是否存在
(2)数据是否正常
(3)地址自动跳转
(4)服务提供错误
2、状态码信息
200 文件存在
404 文件不存在
403 文件夹存在
500 可能存在或不存在
3xx 可能存在或不存在
301永久(域名迁移) 302暂时(登录跳转)
①容错处理 网站访问错误就自动跳转某个页面 不存在
②访问某个文件 自动触发跳转 存在

401 是未认证
403 是已认证但无权限(IP 黑名单、角色权限不足(如普通用户访问管理员接口))
服务器理解请求,但拒绝授权(≠文件夹存在!)。
常见原因:
- 目录列表禁用
- 无访问权限
- .htaccess限制
500 代码崩溃、配置错误、数据库连接失败(常见sql注入和xss使服务器崩溃)
502 反向代理(Nginx)无法收到上游服务(Node.js)的有效响应
五、chatgpt
HK也不可以 赔钱机场 国外能接受验证码的手机号
小结
别让流言蜚语使你停滞不前 核心不仅是身体上的 还有心里的
失败和迷茫才是常态
Comments NOTHING