模拟手机应用进行抓包

前提条件是:安装Fiddler的机器,跟智能手机 在同一个网络里, 否则智能手机不能把HTTP发送到Fiddler的机器上来。

配置Fiddler, 允许"远程连接"

用Fiddler对Android应用进行抓包

  • 启动Fiddler,打开菜单栏中的 Tools > Fiddler Options,打开“Fiddler Options”对话框。

模拟手机应用进行抓包 - 图1

  • 在Fiddler Options”对话框切换到“Connections”选项卡,然后勾选“Allow romote computers to connect”后面的复选框,然后点击“OK”按钮。

模拟手机应用进行抓包 - 图2

  • 在本机命令行输入:ipconfig,找到本机的ip地址。

模拟手机应用进行抓包 - 图3

  • 下面来设置Android设备上的代理服务器:

    打开android设备的“设置”->“WLAN”,找到你要连接的网络,在上面长按,然后选择“修改网络”,弹出网络设置对话框,在接下来弹出的对话框中,勾选“显示高级选项”。在接下来显示的页面中,点击“代理”,选择“手动”。

  • 在“代理”后面的输入框选择“手动”,在“代理服务器主机名”后面的输入框输入电脑的ip地址,在“代理服务器端口”后面的输入框输入8888,然后点击“保存”按钮。

    代理服务器主机名设为PC的IP,代理服务器端口设为Fiddler上配置的端口8888,点"保存"。

模拟手机应用进行抓包 - 图4

  • 然后启动android设备中的浏览器,访问百度的首页,在fiddler中可以看到完成的请求和响应数据。

模拟手机应用进行抓包 - 图5

用Fiddler对IOS应用进行抓包

打开IPhone, 找到你的网络连接, 打开HTTP代理, 输入Fiddler所在机器的IP地址(比如:192.168.1.104) 以及Fiddler的端口号8888

模拟手机应用进行抓包 - 图6

  • 只能捕获HTTP,而不能捕获HTTPS的解决办法

为了让Fiddler能捕获HTTPS请求。如果你只需要截获HTTP请求, 可以忽略这一步

  • 首先要知道Fiddler所在的机器的IP地址: 假如我安装了Fiddler的机器的IP地址是:192.168.1.104
  • 打开IPhone 的Safari, 访问 http://192.168.0.52:8888, 点"FiddlerRoot certificate" 然后安装证书模拟手机应用进行抓包 - 图7

模拟手机应用进行抓包 - 图8

过证书校验

上面的设置还不能抓像招商银行、支付宝等APP的https包,因为这些APP对https证书进行了校验,还需要将Fiddler代理服务器的证书导到Android设备上才能抓这些APP的包

导入的过程:

打开浏览器,在地址栏中输入代理服务器的IP和端口,会看到一个Fiddler提供的页面:

模拟手机应用进行抓包 - 图9

点击页面中的“FiddlerRootcertificate”链接,接着系统会弹出对话框:

模拟手机应用进行抓包 - 图10

输入一个证书名称,然后直接点“确定”就好了。

注意

用完了, 记得把IPhone上的Fiddler代理关闭, 以免IPhone上不了网。

夜神android模拟器设置代理的方法

app开发测试为了调试方便,通常会在电脑上装一些android模拟器,开多台进行测试。调试中通常要干的一件事就是抓取,那么想要抓包,我们必须要设置代理。

夜神android模拟机设置代理的方法:

  • 点击设置,然后进入到wifi连接选项。如图1:模拟手机应用进行抓包 - 图11

进入列表后,鼠标点击wifi位置,长按左键,会出现一个修改网络的弹窗,如下图:

模拟手机应用进行抓包 - 图12

点击上图中的“修改网络”,会出现下图中的弹窗,勾选“显示高级选项”,模拟手机应用进行抓包 - 图13

接着一切都明了了,代理服务器主机名填写你电脑的ip就行了(window系统的话,用ipconfig查看),接着再填写端口模拟手机应用进行抓包 - 图14