问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

使用Fiddler实现Android手机抓包的完整指南

创作时间:
作者:
@小白创作中心

使用Fiddler实现Android手机抓包的完整指南

引用
CSDN
1.
https://m.blog.csdn.net/weixin_42602900/article/details/145283276

一、Fiddler简介

Fiddler是位于客户端和服务器端之间的代理,也是目前最常用的抓包工具之一。它能够记录客户端和服务器之间的所有请求,可以针对特定的请求,分析请求数据、设置断点、调试Web应用、修改请求的数据,甚至可以修改服务器返回的数据,功能非常强大,是Web调试的利器。

注意:
Fiddler是以代理Web服务器的形式工作的,它使用默认代理地址:127.0.0.1,端口:8888,也就是说默认监听在安装本机的127.0.0.1::8888。如果需要抓局域网内其他机器的包,需要勾选上“Allow remote computers to connect”,允许远程设备连接,会设置监听为0.0.0.0:8888。

当Fiddler退出的时候它会自动注销,这样就不会影响别的程序。不过如果Fiddler非正常退出,这时候因为Fiddler没有自动注销,会造成网页无法访问,解决的办法是重新启动下Fiddler。

二、安装Fiddler

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

三、Fiddler设置

1. 设置HTTPS

Tools --> Options --> HTTPS

选中"Decrypt HTTPS traffic",Fiddler就可以截获HTTPS请求,第一次会弹出证书安装提示,若没有弹出提示,勾选Actions -> Trust Root Certificate

另外,如果你要监听的程序访问的HTTPS站点使用的是不可信的证书,则请接着把下面的“Ignore server certificate errors”勾选上。

手机上设置代理后,这时候Fiddler上抓到的是PC和App所有的请求,如果PC上打开网址,会很多,这时候就需要开启过滤功能了

设置过滤:我们本次是抓取局域网内Android的HTTP包,为减少干扰,设置 from remote clients only

from all processes 抓所有的请求
from browsers only 只抓浏览器的请求
from non-browsers only 只抓非浏览器的请求
from remote clients only 只抓远程客户端请求

点击Yes,留意一下红框里面的内容,DO_NOT_TRUST_FiddlerRoot,这个就是证书的名称

点击确定,这样Fiddler证书就已经添加成功了

查看证书,Actions -> Open Windows Certificate Manager

证书名称就是之前提醒大家留意的 DO_NOT_TRUST_FiddlerRoot

我们本次是抓取局域网内Android端的HTTP包,为减少干扰,设置 from remote clients only

2. 设置允许远程连接

Tools --> Options --> Connections

3. 重启Fiddler,使得配置生效

4. 查看端口监听

netstat -ano | findstr "8888"

四、Android端设置

首先查看电脑的IP地址,确保手机和电脑在同一个局域网内

win+R,调出cmd窗口

输入ipconfig,IPv4地址即为本机ip

或者可以直接在Fiddler上将鼠标放置于 Online 菜单上,会显示本机IP

设置代理

关闭4G、5G网络,使用WIFI,使得手机和Fiddler在同一局域网

注意:这里看手机,我试过了,设置代理就可以抓包了。

打开手机浏览器,输入ip:端口下载证书,如:192.168.1.105:8888

安装证书查看:打开手机设置,搜索“信任”,可以看到“信任的凭据”

注:每连一台Fiddler,Fiddler提供的证书都是不一样的,测试完一个场景,记得在证书管理里删除,因为这个证书只对应这台Fiddler,没法用于连其他的Fiddler。

通过上面基本,配置就全部结束了,可以抓包测试了,有好几个链接有session_id,选其中一个,直接点右侧的json可以很方便的看到自己的session_id了,=号后面的那一长串字母就是。

注意:session_id是自己账户的重要标识,为了安全请注意不要随意外传,自己用用就行了。

五、抓包测试

设置好Fiddler
设置好Android网络代理
打开Android手机被抓包APP
使用Fiddler抓包,查看抓包内容

最后我们捋一下:

  1. 电脑端安装Fiddler,设置端口监听(xx.xx.xx.xx:8888),设置系统信任Fiddler软件证书
  2. 手机和电脑在同一局域网,手机关闭4G/5G流量
  3. 手机设置网络代理,指向局域网中Fiddler的地址(IP+PORT)
  4. 在手机端用浏览器通过Fiddler的地址(xx.xx.xx.xx:8888)下载Fiddler证书并安装,注意此证书仅对此Fiddler有效
  5. 抓包测试完毕,记得关闭手机中的代理,删除手机端安装的Fiddler证书,不然换一个网络环境,手机上网会受影响

本篇主要是用Fiddler实现Android手机抓包的基础设置,工具安装设置完成后,其他抓包技巧,请参考其他文章探索!

六、参考

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号