HTTP协议

HTTP

超文本传输协议

是一个基于请求与响应模式的,无状态的,应用层的,面向对象的协议,常基于TCP的连接方式

​ 无状态是指:Web浏览器与Web服务器之间不需要建立持久的连接,这意味当一个客户端向服务器端发出请求,然后Web服务器返回 响应(Response),连接就被关闭了。

http的弊端:在传输过程中容易被抓包

如何解决?

HTTPS

HTTPS=HTTP+SSL(安全套接层)

现在基本是TLS

https并没有改变http协议本身的特性,只是在传输过程中利用SSL/TLS技术进行加密,保障传输过程中的安全。

如果在用户端利用进行抓包,依然可以通过代理技术实现对Web访问的劫持,因此并不会有效提升服务器的安全性。

受制于成本问题,多数大型站点仍然会采用HTTP进行业务开展。

HTTP状态码

4XX:客户端错误,请求有语法错误或请求无法实现

状态码含义
302重定向
404请求资源不存在

HTTP请求与响应

组成和分析

请求包

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EXBsSf04-1618480946172)(C:\Users\Summer\AppData\Roaming\Typora\typora-user-images\image-20210414131930582.png)]

请求行:请求方法,请求路径,HTTP版本

HTTP请求方法

常用的:

​ GET,POST

GET与POST的区别

POST有请求内容,而GET方法没有(Request body部分为空)

提交参数的位置不同

在实际应用中,两者的安全性基本一致,都可能因链路劫持而出现参数泄露的情况。

链路劫持是由HTTP协议本身的特点所决定的,与请求方法没有任何关系。

在安全开发中,参数的命名应模糊,使得参数名称无法通过表面意思被理解,从而增加攻击者的分析难度。

响应包

Host被请求资源的Internet主机和端口号(80省略)
Origin本次请求的发起源
Referer本次请求的发起页面(告诉Web服务器,用户是从哪个页面找过来的)
User-Agent当前用户的操作系统、浏览器的基本信息(告诉Web服务器用户使用的浏览器和操作系统信息)
Content-length当前请求包中的内容长度
Cookie表示请求者的身份

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bEB9tzBo-1618480946174)(C:\Users\Summer\AppData\Roaming\Typora\typora-user-images\image-20210414133150900.png)]

Server与请求包中UA作用类似,将自身的版本告知对方
Set-cookie根据响应包生成cookie,并提供给客户端

URL

默认端口

​ http:80

​ https:443

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值