大家都知道浏览器F12大法,但是如果我们要分析的程序不在浏览器里面,那就需要抓包了。通过捕获计算机网卡的数据,全面的分析流经网卡的通信流量。今天就来介绍几个抓包的神器,介绍一些你可能不知道的功能。
1.Wireshark
Wireshark可以说是抓包界的一哥了,二十年的老牌子,你值得信赖。
Wireshark支持几乎你知道的和你不知道的全部通信协议的分析,TCP/IP整个家族就不说了,这是基本要求,就连像Redis、MySQL、Mongo、ES等等这些上层应用的协议都能给你安排的明明白白,这就厉害了。
优秀的架构设计使得它可以非常轻松的增加扩展以应对不断出现的新的应用层协议。
Wireshark的主界面,除上面的工具栏外,从上到下分为三个区域:
数据包列表
数据包协议解析树
数据包原始数据
有时候一抓就是一大把数据,全部堆在一起,想要找到我们需要的,犹如大海捞针,这个时候你就需要过滤了。
在最上方,有一个搜索框,可以用来输入过滤表达式,比如我只想看其中的HTTP数据包,只需输入“http”即可。
你可以通过IP、端口、协议等多种组合式过滤,如下面的一些例子:
eth.src[0:3] == 00:00:83
ip.addr == 192.168.0.1
tcp.flags.syn == 1
tcp.port in {443 4430..4434}
http.request.uri == "
"
完整的过滤表达式语法规则请参考:
docs/wsug_html/#ChWorkBuildDisplayFilterSection
Wireshark还有一个比较强大的功能:内容解码。
对于很多格式的数据,直接查看数据包原始内容是看不出个所以然的,比如压缩文件、图片文件等等,这个时候就需要能够对内容进行解码。
选定数据范围后,右键可选择:Show Packet Bytes···
上面是我之前的一次红包闯关活动的数据包,这是一段gzip压缩后的数据,我们可以先选择解码方式为Compressed:
可以看到,上面的数据内容变成了解压缩后的内容,.PNG开头表示这是一个PNG图片。接下来再在Show as菜单中选择图片,图片就能显示出来了!
可以看到,除了图片,还支持网页渲染、多种字符集解码等等。
2.科来网络分析系统
接下来给大家推荐另一个数据包分析神器:科来网络分析系统。
这是一家成都公司开发的抓包软件,也有近二十年的历史了,历经多个版本迭代,稳定靠谱!
相比Wireshark,这个软件纯中文界面,大量的可视化图表,更现代的UI展示,让大家学习计算机网络更加轻松,尤其是对新手小白而言,更容易上手。随意截了几个图,大家感受一下:
首页:
从协议、端点、流量的维度展示了一些全局统计信息。
数据包列表:
在展示数据包内容时,与Wireshark类似,也是分了数据包列表、数据包协议解析树状图、数据包十六进制原始数据。
3.Fiddler
如今的互联网流量中,HTTP要说第二,估计没别的协议敢说第一。而随着时间推移,越来越多的HTTP升级为了HTTPS,据不权威渠道的数据,到2020年,互联网上超过70%+的HTTP流量都加密传输了,这对于网络安全不得不说是一件好事。
不过总有一些场景,我们需要看一下HTTPS传输的内容,而用上面两个抓包工具,抓下来的都是加密数据,想要获取明文内容,还得另辟蹊径。
接下来就是Fiddler登场的时候了!
Fidder解密HTTPS的原理其实很简单,就是通过设置代理服务器,自己作为中间人,使用自己的证书“冒充”服务器证书,从而骗过客户端。Fidder启动的时候会把自己的证书安装到操作系统中获得信任,因此可以解密当前电脑上自己的通信流量
抓手机App通信
除了抓电脑上通信的包,Fiddler还经常被用来抓取移动设备上的APP通信流量。
基本上绝大多数的APP都是用HTTPS来进行通信,只需要在手机上配置Fiddler为代理服务器,手机上的通信流量都能看的清清楚楚。
以安卓手机为例:
Fiddler运行的电脑和手机确保在同一个局域网下,在手机连接的WIFI网络中,可以使用高级功能设置代理:
配置完成,手机上任何APP的风吹草动,Fiddler都会源源不断的给你展示出来。
不过这一招也不是万能的,据我的实际测试,一些安全做的比较好的APP,比如微信,会检测到当前的HTTPS服务器证书有问题,部分功能会表现出跟平时不一样的现象。
甚至,还有的APP侦测到环境异常后,会把服务器的证书偷偷传到它的服务器去,至于传上去干啥,你猜?
至于这些软件下载地址,百度就行







举报 0