charles抓包工具 (花瓶抓包软件)
除了Fiddler工具之外,还有别的工具可以抓包。本章介绍其他几个常见的抓包工具。
5.1 常见的抓包工具
目前常见的HTTP抓包工具如图5-1所示。
图5-1 常见的抓包工具
5.2 浏览器开发者工具
浏览器都自带一个开发者工具,该工具可用来抓包,很受开发人员喜欢。浏览器开发者工具的受众范围比Fiddler的广,因为它很方便,不需要做什么设置。下面我们用Chrome浏览器来进行讲解。
5.2.1 调出开发者工具
调研开发者工具的方式有以下几种。
方式1:按F12调出(很多人把这个工具叫作F12)。
方式2:在浏览器中,单击鼠标右键,然后选择“检查”。
方式3:在浏览器中,按快捷键Ctrl+Shift+I。
5.2.2 用Chrome测试网页加载时间
使用Chrome的开发者工具测试网页加载时间的操作步骤如下。
(1)打开Chrome浏览器,然后打开开发者工具,选中Network选项卡。
(2)访问一个网址,比如访问www.cnblogs.com/tankxiao,开发者工具能捕获所有的HTTP请求,如图5-2所示。
图5-2 网页加载时间
从图5-2中可以看出单个请求的响应时间,可以看到这个网页发送了49个请求。总的网页响应时间是682毫秒,性能非常好。
5.2.3 用Chrome捕获12306登录的POST请求
Chrome开发者工具在抓包时,如果页面发生了跳转,那么会把上一个页面的HTTP请求清空。此时需要选中Preserve log,以保留上次抓到的包。
我们用Chrome来捕获12306的登录请求,该登录请求用的是POST。具体步骤如下。
(1)在登录页面中输入用户名和密码,选中图片验证码后,单击“登录”按钮。
(2)在开发者工具中可以看到登录时发送的一系列请求。
(3)选中HTTP请求,在Headers选项卡中能看到该请求中的用户名和密码,如图5-3所示。
图5-3 抓12306登录的包
5.2.4 用Chrome测试接口的响应时间
如图5-4所示,Chrome中会显示每个请求的响应时间。
图5-4 单个请求的响应时间
5.2.5 过滤请求
因为可以操作的界面较小,查找HTTP请求不方便,所以一般都需要用到过滤功能。
Chrome开发者工具具有强大的过滤功能,可以让用户根据关键字来过滤,如图5-5所示。
图5-5 根据关键字过滤
在Filter输入框中输入method:POST,可以过滤POST方法的HTTP请求,如图5-6所示。
图5-6 根据HTTP方法过滤
5.3 vConsole
微信小程序、手机版网页H5、手机App也需要调试Bug,此时可以用第三方工具vConsole来完成。vConsole是一个轻量、可拓展的、针对手机网页的前端开发者调试面板。其用法和浏览器开发者工具差不多。vConsole如图5-7所示。
图5-7 vConsole工具
5.4 Charles抓包工具
如果要在mac OS系统中使用抓包工具,我们可以用Charles。Charles的工作原理与用法和Fiddler有点类似。
5.4.1 Charles工具的安装及使用方法
Charles与其他工具的安装过程大致相同,按照页面提示操作即可。Charles安装成功后,图标是一个花瓶,所以俗称青花瓷。Charles是收费软件,如果不付费的话,每隔30分钟,需要重启Charles。
5.4.2 在Charles中安装根证书
在Charles中安装根证书的步骤如下。
第1步:依次单击菜单栏中的Help→SSL Proxying→Install Charles Root Certificate,如图5-8所示。
第2步:这时候会弹出一个根证书界面,单击“添加”按钮,如图5-9所示。
第3步:证书添加成功,如图5-10所示。
图5-8 安装证书(1)
图5-9 安装证书(2)
图5-10 证书添加成功
第4步:双击证书以打开证书简介,把证书设置为信任,如图5-11所示。
图5-11 证书设置为信任
5.4.3 Charles配置规则
Charles的配置规则如图5-12所示。其中:
- Host为配置域名,*表示任意匹配;
- Port为网页浏览端口号,这里填443。
图5-12 设置规则
5.4.4 用Charles捕捉网站登录的请求
打开Charles,再用浏览器打开某网站并登录。找到登录的HTTP请求,可以看到登录时发送的用户名和密码,如图5-13所示。
图5-13 捕捉某网站的登录请求
5.5 Wireshark抓包工具
Wireshark是非常流行的网络封包分析软件,功能十分强大。它可以截取各种网络封包,显示网络封包的详细信息。它是一个跨平台的软件,可以在UNIX系列、Linux、mac OS、Windows等多个平台上进行网络协议的抓包工作。同时,它也是一个开源软件。如果想捕获TCP 3次握手协议,就应该使用Wireshark。
Wireshark的抓包原理是嗅探网卡,所以Wireshark只能查看数据包,不能修改数据包。
5.5.1 Wireshark捕捉HTTP
Wireshark捕捉HTTP协议的步骤如下。
第1步:启动Wireshark,此时会出现很多网络连接,选择一个正在使用的网络连接,如图5-14所示。
图5-14 选择网卡
第2步:输入过滤条件“HTTP”,这样就只捕获HTTP协议。在浏览器中访问http://files-cdn.
cnblogs.com/files/TankXiao/http.bmp,Wireshark能捕获到HTTP的报文。HTTP请求和HTTP响应是分开的,HTTP请求有个向右的箭头,HTTP响应有个向左的箭头,如图5-15所示。
图5-15 抓HTTP包
第3步:选择HTTP请求,右键单击并依次选择追踪流→TCP流,如图5-16所示。
图5-16 选择“追踪流”
第4步:打开一个对话框,可以看到完整的HTTP请求和HTTP响应,如图5-17所示。
图5-17 查看完整的HTTP请求和HTTP响应
5.5.2 用Wireshark捕获HTTPS
Fiddler和Charles都需要安装证书后才能捕获HTTPS,用Wireshark捕获HTTPS更麻烦。
某些浏览器支持将TLS会话使用的对称密钥保存在外部文件中,以供Wireshark加密使用。本节测试使用的是Chrome 71版本和Wireshark 5.0版本。捕获步骤具体如下。
第1步:配置系统变量。变量名为SSLKEYLOGFILE,变量值为C:ssl_keysslog.log,如图5-18所示。注意后缀名一定要用log,这样浏览器和服务器SSL协商的密钥信息才会存储到文件中。
图5-18 新建环境变量
第2步:在CMD中运行以下命令,
"C:Program Files (x86)GoogleChromeApplicationchrome.exe" --ssl-key-log-file=c:ssl_keysslog.log
运行成功后可以看到密钥文件已生成,如图5-19所示。
图5-19 密钥文件
第3步:在Wireshark中配置密钥文件,依次选择编辑→首选项→Protocols→TLS,如图5-20所示。
图5-20 配置密钥文件
第4步:重启Chrome,然后在Chrome中访问
https://www.cnblogs.com/tankxiao,此时就可以抓到HTTPS的包了,如图5-21所示。
图5-21 用Wireshark捕获HTTPS
5.6 本章小结
本章介绍了Fiddler之外其他常见的抓包工具。平常抓包用得最多的是浏览器开发者工具。在Windows上抓包首选Fiddler,在Mac计算机上无法使用Fiddler,可以用Charles。Fiddler和Charles是专门用来捕获HTTP/HTTPS的。Wireshark主要用来抓TCP/UDP或者其他协议的包,而不会用来抓HTTP。
本文摘自刚刚上架的《HTTP抓包之接口自动化测试》
本书内容来自作者多年从事接口测试的经验总结,贴近实际,能帮助读者解决实际工作中的难题。本书的主要内容有HTTP的基础知识;如何使用Fiddler来抓HTTP包;如何分析HTTP包;如何通过JMeter和Postman等发送HTTP包,从而实现软件自动化测试和接口的自动化测试;如何使用抓包工具来实现安全测试和性能测试等;几个日常生活中应用比较广泛的综合实例。
本书图文并茂、实例丰富,方便读者参考并动手实践,适合前端开发工程师、测试工程师、线上故障技术人员、接口开发人员和Web开发人员阅读。
推荐阅读
-
洗衣机不脱水了是怎么回事(洗衣机不甩干的处理方法)
洗衣机作为大家日常生活必备的家用电器,其利用率频繁,难免会因为机械磨损、缺乏润滑油、机件老化、弹簧疲劳变形等原因,出现各种不正...
-
电子表格零基础自学教程(小白也能学明白)
可能很多人(包括我)觉得Excel不就是做个表吗,没什么好学的。然而很多大型企业在面试的时候还是会问,“会Excel吗?”“会...
-
笔记本电脑报价大全(联想笔记本多少钱)
(注意:建议在旗舰店、官方旗舰店、官网购买) 一、游戏本设计本、办公本推荐如下: 华为品牌:(全球第一大电信设备商) 1...
-
煲机软件哪个好(让耳机有个思想准备)
《无间道》中陈永仁与刘建明有过一句经典对白——“高音甜、中音准、低音沉,总之一个词通透”。这一句话也一...
-
viewsonic平板电脑(viewsonic平板电脑刷机)
ViewSonic是一个视讯品牌,中文名字:优派。 ViewSonic 一、读音:英[vju:][?s?n?k],美[vj...
-
采访麦克风户外哪款好(讯飞智能无线麦克风C1采访神器)
对于视频创作者、直播工作者、远程培训老师、记者等媒体工作者来说,工作过程中,最让人费心的莫过于如何确保收音纯正、字幕快速生成、...
-
电脑硬件配置怎么查(详述两招快速查看电脑配置参数信息)
大家好,今天跟大家分享两个快速查看电脑配置参数信息的办法。 操作步骤如下: 1右击电脑屏幕最下方任务栏左侧的电脑徽标按钮,...
-
数据线没坏但充不上电怎么办(数据线充不上电处理方法)
苹果充电器突然充不上电是比较尴尬的问题,首先看自己的充电器数据线是不是原装,如果非原装在第一次充电时,苹果手机会提示你是否要适...
-
电脑开机出现黑屏如何处理(电脑不能开机黑屏解决方法)
电脑不能开机或者开机以后黑屏怎么解决?这里收集了所有常见的维修方法,看完秒变维修高手,实在是一篇不能错过的电脑维修教程。简单易...
-
手机宝典怎么搞(小米手机性能优化宝典)
别再总是抱怨手机卡顿,系统臃肿,反应慢,现在看完这篇文章,你会发现你并不了解小米手机,当然,文中许多方法并不是仅仅适用于小米手...