2、TLS 是传输层安全性协议,它会对传输的 HTTP 数据进行加密,使用非对称加密和对称加密的混合方式;
3、抓包工具的原理就是“伪装“,对客户端伪装成服务器,对服务器伪装成客户端;
4、使用抓包工具抓 HTTPS 包必须要将抓包工具的证书安装到客户端本地,并设置信任;
5、HTTPS 数据只是在传输时进行了加密,而抓包工具是接收到数据后再重新加密转发,所以抓包工具抓到的 HTTPS 包可以直接看到明文;
1、HTTPS 的数据是加密的,常规下抓包工具代理请求后抓到的包内容是加密状态,无法直接查看。但是,正如前文所说,浏览器只会提示安全风险,如果用户授权仍然可以继续访问网站,完成请求。因此,只要客户端是我们自己的终端,我们授权的情况下,便可以组建中间人网络,而抓包工具便是作为中间人的代理。
2、通常HTTPS抓包工具的使用方法是会生成一个证书,用户需要手动把证书安装到客户端中,然后终端发起的所有请求通过该证书完成与抓包工具的交互,然后抓包工具再转发请求到服务器,最后把服务器返回的结果在控制台输出后再返回给终端,从而完成整个请求的闭环。
HTTPS可以防止用户在不知情的情况下通信链路被监听,对于主动授信的抓包操作是不提供防护的,因为这个场景用户是已经对风险知情。要防止被抓包,需要采用应用级的安全防护,例如采用私有的对称加密,同时做好移动端的防反编译加固,防止本地算法被破解。
一、怎样获取WireShark?很简单,百度搜索WireShark,就会看到下载地址。
二、使用WireShark
因为WireShark是英文软件,所以你需要一些必要的英文基础。
打开软件界面
1、开始抓包
选中你需要的网卡,点击start即可开始抓包,在这个时候请确保你想要抓的包会通过你选择的网卡。一般做法是在电脑上插一块无线网卡,然后让你的设备连接该无线网卡
你会发现流过网卡的数据包非常多。这时候你需要用到最顶上的过滤选项。过滤语法不算复杂,但是一时半会也记不完,记住常用的即可。
(1)过滤源ip、目的ip。在wireshark的过滤规则框Filter中输入过滤条件。如查找目的地址为192.168.101.8的包,ip.dst==192.168.101.8;查找源地址为ip.src==1.1.1.1;
(2)端口过滤。如过滤80端口,在Filter中输入,tcp.port==80,这条规则是把源端口和目的端口为80的都过滤出来。使用tcp.dstport==80只过滤目的端口为80的,tcp.srcport==80只过滤源端口为80的包;
(3)协议过滤。直接在Filter框中直接输入协议名即可,如过滤HTTP的协议;
(4)http模式过滤。如过滤get包,http.request.method==”GET”,过滤post包,http.request.method==”POST”;其他协议的数据包大都也是这样。
(5)连接符and/or的使用。连接符and的使用。过滤两种条件时,使用and连接,如过滤ip为192.168.101.8并且为http协议的,ip.src==192.168.101.8 and http。我想作为一个程序员or就不需要我举例了吧。
2、提取数据
你已经找到你想要的包了
如果你想看到你POST的结果,一般来说都在你请求下面的一个HTTP/1.1 200 ok 的数据包。包结构跟POST去的差不多。如果服务器响应缓慢,你只需要选中POST数据包右键点击Follow TCP Stream,即可快速筛选本次同信的所有数据包。如果是JSON或文本的话拷贝可打印文字就可以咯。如果是二进制通讯,拷贝HEX即可。
3、查看JSON数据
可能大家习惯于用网页上的在线解析。
1. Wireshark
2. WiFi共享精灵或者360WiFI共享
3. Fiddler
1. PC上运行Fiddler,做为HTTP的代理,设置端口,勾选“Allow remote computers to connect"
2. 手机WiFi连接PC共享出来的WiFI热点,并且设置HTTP代理访问,服务器为PC的IP,端口为上面的8834。
3. 打开Wireshark,设置filter只显示我们想要抓的包。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)