http抓包实践--(一)--fiddler和http(s)

一,安装fiddler

官网下载:https://www.telerik.com/download/fiddler

二,基本介绍

1,面板内容

在这里插入图片描述

2,会话列表的具体内容

在这里插入图片描述

3,设置开始抓包和停止抓包

4,httt请求报文的结构

在这里插入图片描述

5,http响应报文的结构

在这里插入图片描述

6,fiddler能够抓包的原理

实际上,fiddler是一个代理服务器。它的代理地址是127.0.0.1,端口号是8888。在我们启动fiddler的时候,就会把我们电脑的internet选项中的代理修改为27.0.0.1:8888,这个在控制面板–internet选项-连接-局域网设置–高级中可以看到:
在这里插入图片描述
而当我们关闭fiddler的时候,又会恢复过来。
于是对应的抓包原理就变成:
在这里插入图片描述
于是乎,照这样理解的话,只要满足以下两个条件的设备,都可以被fiddler抓包:

1,使用的是http或者https协议
2,支持代理服务器

三,https的出现

	像上文所说,http传递的数据,会被代理服务器拿到,那么一些敏感的数据包,如果采用http协议,则会有安全问题。

为了解决这个问题。则希望数据在传递过程中,不会被中间的代理服务器们知晓,而仅仅有服务器和客户端可以查看。于是人们想到了加密技术。

1,对称加密技术(AES,DES)

	对称加密可以理解为客户端和服务器端都知道这个加密算法的密钥(钥匙),都能够解密出真正的数据,而中间的代理服务器们没有密钥,则无法知晓真正的数据信息。
	缺点是一旦密钥被泄露,加密形同虚设。
	并且,如果有多个客户端ABC,对应一台服务器,那么abc之间互相知道密钥,也可以解密获取对方的数据信息。于是又有人想出协商的方式处理:服务器端和客户端共享一个表,上面有各种加密算法1234567,及对应的密钥。通信时告诉对方采用哪种加密算法。

2,非对称加密(rsa)

	,非对称加密算法需要两个密钥:公开密钥(publickey)和私有密钥(privatekey)。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。
	如果A和B之间需要通讯,则需要各自生成一对公私钥,并且把公钥给对方,自己保留私钥。
A要给B发送信息时,A用B的公钥加密信息
B收到这个消息后,B用自己的私钥解密A的消息

3,https协议

https协议实际上就是加密过的http,使用过https之后,浏览器客户端和web服务器传输的数据就是加密的了,只有浏览器和服务器端知道内容。
实际上https=http+ssl

4,fiddler中获取https的设置

在这里插入图片描述

Guess you like

Origin blog.csdn.net/weixin_42349568/article/details/118710977