一、fiddler抓取安卓应用数据包
1、 Fiddler 上设置HTTPS,工具--选项--HTTPS(安装证书),这里选择从所有进程
2、Fiddler上设置Connections,勾选以下选项,保持默认端口8888,设置完,确认后,重启一下fiddler
3、导出fiddler证书,点击选项(options)下的HTTPS下的操作(Action),点击第一项后,再点击第二项进行证书的导出。
4、查看本机ip,cmd下通过ipconfig查看
5、手机上设置代理(手机和fiddler的电脑连接同一个wifi网络)
1),进入wifi的详细信息,找到代理设置,打开手动设置代理。
2),输入电脑的ip地址和端口号8888
6、手机安装fillder证书
1)在手机浏览器上输入IP地址:端口号,如我的是10.33.38.190:8888
2)点击最后一行的蓝色链接下载证书,下载完后点击证书,提示无法安装
3)进入手机设置,安全选项,点击从存储设备安装
4)安装完成后,提示证书已安装,便可抓到手机上的数据包了
Android7.0 之后默认不信任用户添加到系统的CA证书,使用系统浏览器打不开www.baidu.com时可尝试使用其他浏览器,或修改配置
二,fiddler设置断点
1, 对request设置断点
1)进入规则–自动断点–之前请求
当我们设置断点后,进行HTTP请求,数据包顺序列会有中断的标记,单击该数据包可以看到在右侧会增加一行操作栏。这个时候我们在前端是没有正常加载网页的,点击运行完成【Run to Completion】后可以返回响应数据。
2)通过菜单选项或快捷键进行设置时,会将所有的HTTP请求都设置断点,但有时我们只想针对某个服务器发出的请求设置断点,应该怎么操作呢?Fiddler是支持命令操作的,我们可以通过“bpu 服务器地址”命令来对特定的请求设置断点。
在下图所示的位置输入命令,然后回车运行。
这个时候从该服务器发出的所有请求都会被中断,而从其他服务器发出的请求可以正常响应。
如果要清除原来的断点,可以在命令行输入“bpu”,就会清除所有的断点。
2,对response设置断点
1)同样的也可以通过菜单选项或快捷键alt+F11进行设置
2)通过命令“bpafter 服务器地址”
三、修改请求数据
在发起请求后,需要修改请求的数据时,可以设置请求前设置断点 1、设置断点后,选中请求,进入Inpectors--Raw中修改请求信息 2、修改请求信息后,发送请求,在服务器返回响应后等待
在修改信息后,点击Break on Response按钮,进行请求的发送,然后再服务器返回后,进行等待。
3、将响应结果返回,操作完成
在服务器返回信息后,点击Run to Completion完成响应数据的返回并完成。
-----在只修改请求数据时,也可以跳过第三步,直接操作第四步,到响应结果
四、修改相应数据
在发起请求,需要修改响应数据时,可以设置请求前断点/响应后断点两种,区别就是在设置为请求前的断点时,需要多点击一步。在此用响应后断点1、设置响应后断点
2、选中请求,进入Inpectors–Raw中修改响应信息
3、修改数据后,返回响应数据并完成操作
在修改响应数据后,点击Run to Completion返回给响应数据,完成操作。