捕获和检查Android流量

本文描述如何使用Fiddler Everywhere捕获和检查来自Android设备和模拟器的流量。

在Android设备上进行流量抓取和流量检测。

  1. 提供先决条件
  2. 到处配置提琴手
  3. 配置Android设备
  4. 检查浏览器流量
  5. 检查Android应用程序流量

先决条件

  • 安装Fiddler Everywhere . 1.0.0及以上版本
  • 将Android设备连接到同一网络,或在Fiddler Everywhere主机上使用Android模拟器。确保Fiddler Everywhere和Android设备运行的机器在同一网络中可被发现。

到处配置Fiddler

  1. 在Fiddler Everywhere中启用远程连接设置>连接>允许远程计算机连接

  2. 查看dler Everywhere应用主机的本地IP地址。你可以使用连接状态在右下角获取主机IP地址。也可以在使用时获取IP地址ipconfig/ifconfig(取决于操作系统)。为了便于演示,让我们假设Fiddler Everywhere主机的本地IP为192.168.148.39

  3. 启用系统捕获

配置Android设备

以下步骤适用于通过与Fiddler Everywhere主机相同的网络访问Internet的真实Android设备。

  1. 在Android设备或模拟器上设置Fiddler Everywhere代理。

    1. 打开已连接的Wi-Fi,轻按设置

    2. 选择编辑和扩大高级设置.对于以前的Android版本,你可能需要触摸并按住连接网络的名称,然后轻按修改,并展开高级设置

    3. 代理中,选择手动代理

      • 输入Fiddler Everywhere主机的IP地址—例如,192.168.148.39

      • 输入Fiddler Everywhere代理端口。缺省情况下,端口为8866

  2. 在Android设备上安装Fiddler Everywhere的根证书。

    1. 在Android设备上打开移动浏览器,输入http://ipv4.fiddler:8866echo Fiddler Everywhere的服务地址。

      只有当系统捕获是打开的。

    2. 轻按该选项可下载证书。然后按如下方式保存并安装:

      • 保存并安装证书(Android 10及以下版本):

        • 在提示窗口中,输入描述性证书名称,然后轻按保存

        • 将下载的Fiddler证书安装到设备证书存储区。设置的位置取决于Android版本,但通常位于下面设置>安全>加密和凭证>安装证书>CA证书

      • 保存并安装证书(Android 11及以上):

        • 在提示窗口中,输入描述性证书名称并选择VPN和应用程序作为凭证使用。
    3. 中的用户证书安装了Fiddler Everywhere证书Android操作系统>设置>安全>加密和凭证>用户和凭证部分。

完成上述设置后,您就可以从Android移动浏览器捕获流量了。测试您的配置如下:

  1. 在Fiddler Everywhere中,确保这一点设置>连接>允许远程计算机连接被选中实时路况捕获模式开启。
  2. 在模拟器上,打开谷歌Chrome(或任何其他尊重代理设置的移动浏览器)并键入https://example.com
  3. 观察安全的交通被捕获回到提琴手无处不在。

配置Android模拟器

Android虚拟设备(avd或Android模拟器)可以通过直接配置Android操作系统(像实际设备一样)使用Fiddler Everywhere作为代理。关键的区别是Fiddler Everywhere代理地址将是模拟器的环回地址。查看模拟器文档中用作环回地址的IP地址。在大多数情况下,Android模拟器的环回别名为10.0.2.2.注意,一些第三方模拟器正在使用不同的别名作为环回地址。

  1. 打开模拟器,打开模拟Wi-Fi,轻按设置,并展开高级设置

  2. 选择编辑和扩大高级设置.对于一些较旧的Android版本,你可能需要触摸并按住连接网络的名称,然后轻按修改,并展开高级设置

  3. 开放代理,然后选择手动代理

    • 输入模拟器环回地址作为代理地址。对于状态Android模拟器,地址为10.0.2.2
    • 输入代理端口。使用在Fiddler Everywhere应用程序中配置的端口(可通过设置>连接>提琴手监听端口…).默认端口为8866
  4. 在Android设备上安装Fiddler Everywhere的根证书。

    1. 在Android设备上打开移动浏览器,输入http://ipv4.fiddler:8866echo Fiddler Everywhere的服务地址。

    2. 轻按该选项可下载证书。然后按如下方式保存并安装:

      • (Android 10及更早版本)保存并安装证书:

        1. 在提示窗口中,输入描述性证书名称,然后轻按保存
        2. 将下载的Fiddler证书安装到设备证书存储区。设置的位置取决于Android版本,但通常位于下面设置>安全>加密和凭证>安装证书>CA证书
      • (Android 11及以上版本)保存并安装证书:

        1. 在提示窗口中,输入描述性证书名称。
        2. 证书使用字段中,选择VPN和应用程序
    3. 中的用户证书安装了Fiddler Everywhere证书Android操作系统>设置>安全>加密和凭证>用户和凭证部分。

完成上述设置后,您就可以从Android移动浏览器捕获流量了。测试您的配置如下:

  1. 在Fiddler Everywhere中,确保这一点设置>连接>允许远程计算机连接检查过了吗实时路况捕获模式开启。
  2. 在模拟器上,打开谷歌Chrome(或任何其他尊重代理设置的移动浏览器)并键入https://example.com
  3. 回到Fiddler Everywhere,观察安全流量被捕获。

浏览器流量检查

现在,您可以立即从移动浏览器监控HTTP/HTTPS流量。例如,在您的Android设备上打开Chrome浏览器,键入您选择的地址,并观察捕获的流量实时路况《无处不在的小提琴手》的一部分。

为了区分来自移动设备的流量和从Fiddler Everywhere主机捕获的流量,您可以应用客户端IP列筛选器(例如,在使用移动设备IP时)或过程列筛选器(在使用设备进程名时)。

完成调试后,从Android设备上删除Wi-Fi代理以恢复连接。

查看Android应用流量

您可以监视活动开发中的应用程序的流量,这意味着您可以访问该应用程序的代码库。

  1. (适用于Android API 24及以上版本)将以下代码添加到Android / src / main / res / xml / network_security_config.xml文件:

    <?XML版本="1.0"编码="utf-8"?>         
  2. AndroidManifest.xml_文件,引用network-security-config中的参数应用程序标签:

    android: networkSecurityConfig = " @xml / network_security_config”

    例如:

    <应用android: name = " com.tns。NativeScriptApplication" android:allowBackup="true" android:icon="@drawable/icon" android:networkSecurityConfig="@xml/network_security_config">…
  3. 重新构建应用程序。现在可以开始监视它的HTTP/HTTPS流量了。

额外的资源

Baidu
map