iOS 真机抓包方式
只能抓 http(s)的包,不能抓自定义协议的包,如果要分析到更底层的包,像TLS handShake这种就没办法了
功能相对强大一些,可以针对某个网卡抓到所有的的数据包,类似于 tcpdump,也可以抓自定义协议的包,可以分析到 TLS handShake包
iOS 5之后, iPhone带了一个 Remote Virtual Interface(RVI)功能,我们可以通过 RVI把数据从 iOS设备上转发到我们 Mac机器上的一个虚拟网卡
连接手机到电脑上,获取到设备的 UUID,Xcode->Window-> Devices And simulators
在命令行中查看当前已有网络接口
接下来使用 rvictl创建虚拟网络接口
再次查看网络接口
可以看到虚拟接口已经创建成功。
虚拟网络接口已经创建完毕,接下来使用抓包工具抓到原始包分析
RVI设置好以后,我们可以在 Mac上直接利用 tcpdump查看数据包。
输入完密码后可以,抓包已经可以开始
按下 Ctrl+ G可以结束抓包
tcpdump很强大,但是可读性不太高,我们尝试用Wireshark分析原始数据包。
AirPlay是Apple私密协议,但也被很多商业破解收费,但每个版本 Apple都有可能再加密一次,这边有一份 non-official AirPlay协议,大致描述了 AirPlay的一个过程, non-official AirPlay protocol,接下来看一下 iOS 12上 AirPlay协议
工具: airServer可以将手机通过 AirPlay投到 mac上
以下分析过程都采用 wireShark
启动 wireShark
选择抓 rvi0网络接口数据,点击开始
airplay非正式版的协议
发送端:30.40.200.4
接收端:30.40.202.17
我们在 wireShark上看下具体原始数据包:
30.40.200.4--> 30.40.202.17
发送端向接收端查询AirPlay和 RAOP的信息,拿到数据包原文如下:
接收端回复数据包:
30.40.202.17--> 30.40.200.4
里面包含了很的信息我们都可以解析。
iOS 手机抓包工具介绍及教程
发现了一款iOS应用商店的宝藏级软件——Spider Proxy抓包工具,现以18元的超值价格提供终身版,是入手的好时机。
Spider Proxy作为一款移动端HTTP/HTTPS抓包和调试神器,无需电脑连接,即可实时查看、修改iOS设备的网络请求和响应,并支持记录导出及自定义网络调试,包括URL重定向、自定义Header等。
核心功能包括:
HTTP(S)流量解析,支持格式化预览
规则重写,实时修改请求响应
设备间数据共享,支持规则加密授权
数据备份与恢复
教程准备如下:
设备:iPhone
工具:Spider Proxy APP
注意事项:教程仅供学习,支持正版,严禁违法使用
安装信任证书后,Spider Proxy界面简洁,抓包记录分类明确,便于查找。点击记录可查看详细信息,设置页面则包含了HTTPS支持、数据同步、黑名单等功能。
特别亮点是VIP用户可同时授权5台设备,实现数据共享。规则重写功能强大,支持请求或响应的自定义操作,并可轻松分享和管理规则。
为了方便备份和协作,可通过备用账户功能将多个设备关联到同一VIP账户,共享云端数据。
软件测试Fiddler手机抓包iPhone
Fiddler是一个强大的网络调试工具,它能够截获浏览器及其他移动设备发出的HTTP/HTTPS请求。其独特之处在于,即便抓包的是iOS设备,用户也可以在Windows PC上直接进行操作,无需使用MAC。
一、在PC上安装Fiddler
1.访问官网下载Fiddler:Fiddler| Web Debugging Proxy and Troubleshooting Solutions
2.按照安装步骤进行安装。
二、Fiddler配置(配置完成后需重启Fiddler)
1.进入“工具-选项...”,设置HTTPS
2.设置“连接”,选中“允许远程计算机连接”,默认端口为8888
三、手机配置
(1)网络代理设置
确保安装Fiddler的机器与iPhone(iPad)在同一网络内,否则iPhone(iPad)无法将HTTP发送到Fiddler的机器上。打开iPhone,找到网络连接,打开HTTP代理,输入Fiddler所在机器的IP地址以及Fiddler的端口号8888
(2) Fiddler证书安装
为了让Fiddler捕获HTTPS请求,需要安装Fiddler证书。具体步骤如下:
1.确定Fiddler所在机器的IP地址
2.打开iPhone的Safari,访问192.168.1.104:8888,点击“FiddlerRoot certificate”,然后安装证书
3. iOS 10.3升级后,安装的证书默认不启用,需要手动开启。设置–>通用–>关于本机–>证书信任设置,将Fiddler的证书开关打开
现在,可以抓包了。iPhone上的应用(如Safari, Firefox, iTunes, App Store)发出的HTTP/HTTPS请求都可以被Fiddler获取,不仅能截获,还可以下断点、修改Request和Response。
四、注意事项
(1)使用完毕后,记得关闭iPhone(iPad)上的Fiddler代理,以免iPhone(iPad)无法上网
(2)只能捕获HTTP,而不能捕获HTTPS的解决办法
如果Fiddler只能捕获iPhone发出的HTTP请求,而不能捕获HTTPS请求,可能是证书没有安装好。解决办法是:
1.删除iPhone上的所有Fiddler证书
2.按照上面的方法,重新安装Fiddler证书
五、设置代理后,手机连不上网的解决办法
1.关闭电脑防火墙
2.打开注册表(cmd-regedit),在HKEY_CURRENT_USER\Software\Microsoft\Fiddler2下创建一个QWORD,值置为80(十进制)
3.编写fiddlerScript rule,点击“规则->自定义规则”,用Ctrl+F查找“OnBeforeRequest”方法,添加如下一行代码
设置完成后重启Fiddler即可。