首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Android 9 (Pie) -无法通过Charles proxy和Fiddler等网络监控工具捕获任何api (本地/ web)

在 Android 9 (Pie) 及更高版本中,Google 引入了更严格的网络安全配置,默认情况下不允许应用程序信任用户或设备安装的证书。这意味着像 Charles Proxy 和 Fiddler 这样的网络监控工具可能无法捕获应用程序的网络流量,因为它们依赖于中间人攻击(MITM)技术来解密 HTTPS 流量。

要解决这个问题,您需要在应用程序的网络安全配置中明确允许信任用户或设备安装的证书。以下是详细的步骤:

1. 创建网络安全配置文件

首先,您需要创建一个 XML 文件来定义网络安全配置。这个文件通常放在 res/xml 目录下。

示例 network_security_config.xml

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <domain-config cleartextTrafficPermitted="true">
        <domain includeSubdomains="true">yourdomain.com</domain>
        <trust-anchors>
            <certificates src="user"/>
        </trust-anchors>
    </domain-config>
    <debug-overrides>
        <trust-anchors>
            <certificates src="user"/>
        </trust-anchors>
    </debug-overrides>
</network-security-config>

在这个配置文件中,<debug-overrides> 部分允许在调试模式下信任用户安装的证书。

2. 在 AndroidManifest.xml 中引用网络安全配置文件

接下来,您需要在应用程序的 AndroidManifest.xml 文件中引用这个网络安全配置文件。

示例 AndroidManifest.xml

代码语言:javascript
复制
<application
    android:networkSecurityConfig="@xml/network_security_config"
    ... >
    ...
</application>

3. 安装 Charles Proxy 或 Fiddler 的证书

确保您已经在 Android 设备上安装了 Charles Proxy 或 Fiddler 的根证书。通常,您可以通过以下步骤来安装证书:

  1. 打开 Charles Proxy 或 Fiddler,找到导出根证书的选项。
  2. 将证书导出为 .crt 文件。
  3. 将证书文件传输到 Android 设备。
  4. 在 Android 设备上,打开“设置” -> “安全” -> “从存储设备安装证书”。
  5. 选择导入的证书文件并安装。

4. 配置代理

确保您的 Android 设备已正确配置为使用 Charles Proxy 或 Fiddler 作为代理服务器。通常,您可以通过以下步骤来配置代理:

  1. 打开 Android 设备的“设置”。
  2. 选择“Wi-Fi”。
  3. 长按当前连接的 Wi-Fi 网络,然后选择“修改网络”。
  4. 展开“高级选项”。
  5. 在“代理”部分,选择“手动”。
  6. 输入 Charles Proxy 或 Fiddler 的 IP 地址和端口号。

5. 重新启动应用程序并捕获流量

完成上述步骤后,重新启动您的应用程序。此时,Charles Proxy 或 Fiddler 应该能够捕获应用程序的网络流量。

注意事项

  • 仅在调试模式下使用:上述配置仅应在调试模式下使用,不应在生产环境中使用,因为它会降低应用程序的安全性。
  • 清除缓存:如果您在更改网络安全配置后仍然无法捕获流量,请尝试清除应用程序的缓存或重新安装应用程序。
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

《爆肝整理》保姆级系列教程-玩转Charles抓包神器教程(6)-Charles安卓手机抓包大揭秘

Charles也能截获 Android Windows Phone 设备发出的 HTTP/HTTPS 请求。...如下图所示: 3.大致思路步骤 1.电脑本地安装charles证书 2.查看电脑charles的IP端口号 3.手机连接charles,抓取简单的http 4.charles设置ssl proxy...一直在报证书安全警告错误,无法抓取,因此需要我们安装证书,原因宏哥在抓取PC端Web页面包已经说过了,这里就不做赘述了。...5.6Android手机配置证书 通过前边宏哥的测试,我们知道在抓取Android手机数据包的时候 跟web端也是一样,都需要配置证书,否则是无法正常进行抓包的。...对了,关于Android7.0的版本在Fiddler那里已经详细地介绍了,只不过是工具换了一下,原理都差不多,这里后边就不再做介绍了。

5.5K51

手机APP的秘密,看的一清二楚!

0x00 摘要 在逆向分析以及移动端开发的时候,总会需要对APP的网络行为进行监控测试,本文总结一些抓包思路,并对其使用方法进行实践 在抓包界,Wireshark 应该算是综合排名第一的工具(其实 Wireshark...将捕获到的数据包拖到本地使用 Wireshark 进行查看: #!...,因此,本文以 win7 为测试环境 实验步骤: 4.1 捕获 http 数据包 手机设置代理: 打开 Charles 即可捕获数据包(Proxy —— Proxy Settings): 4.2...—查看证书 成功捕获 https 数据包 0x06 总结 当我们停止捕获数据包时,将FiddlerCharles 关闭,此时手机端是无法正常访问网络的,因为设置了代理,这时候需要将代理关闭...(Charles 免费版其实还比较厚道,如果重度需要,建议购买正版),本文旨在浅析捕获移动终端数据包的方法思路。

66030
  • 手机APP的秘密,看的一清二楚!

    0x00 摘要在逆向分析以及移动端开发的时候,总会需要对APP的网络行为进行监控测试,本文总结一些抓包思路,并对其使用方法进行实践在抓包界,Wireshark 应该算是综合排名第一的工具(其实 Wireshark...iOS 系统下实验实验步骤:2.1 说明 模拟器中自带的 tcpdump 工具,位于:/system/xbin/ 目录下2.2 数据包捕获 可以通过 adb shell 命令在 CMD 模式下连接模拟器...打开 Charles 即可捕获数据包(Proxy —— Proxy Settings):??...0x06 总结当我们停止捕获数据包时,将FiddlerCharles 关闭,此时手机端是无法正常访问网络的,因为设置了代理,这时候需要将代理关闭,即可正常浏览网页对于大多数走代理的应用可以选择 Fiddler...基于 Wireshark」以上所有工具各有优劣,读者可以根据工作环境,按需使用,个人觉得一般情况下使用 Wireshark + Fiddler 或者 Wireshark + Charles 即可完成各平台的抓包分析任务以上工具中只有

    39210

    APP各种抓包教程

    Pixel3 Android11 、已 root + Xposed charles 是一款非常优秀的抓包工具,全平台支持,在 mac,windows,linux 上都可以使用,既可以抓取 web 端的包...:此时我的Windows Proxy是去掉对勾的,因为这里我是想在PC端抓手机端的包,所以没必要打开电脑的本地代理 ) 填入代理端口 8888(或者自定义,但不能系统已占用端口冲突),并且勾上 Support...Charles Fiddler 的比较 Fiddler 虽然也可以完成对手机的抓包,但是如果 App 设置了不走代理,那 Fiddler 就失败了,并且 Fiddler 每次都需要手动修改网络设置的代理...单向校验 Android 系统中已经提供了检验证书的 api,我们只需要实现 checkClientTrusted 、 checkServerTrusted 、 verify 方法即可。...当然也可能会伪装成其他文件,例如图片文件。 怎么找到证书密码呢?一般要么逆向分析找到密码,要么通过 hook api java.security.KeyStore 使密码自吐。

    10.8K66

    Charles-proxy 抓包工具-移动端调试必备

    在这里说明一下,因为Fiddler 抓包工具使用C#语言写的,不能在 MAC 上运行,而 Charles-proxy 他是 java 开发的,可以跨平台运行(包括Mac、Linux、Windows)...支持本地映射远程映射,比如你可以把线上资源映射到本地某个文件夹下,这样可以方面的处理一些特殊情况下的bug线上调试(网络的css,js资源用的是本地代码,这些你可以本地随便修改,数据之类的都是线上的环境...web,可以把所有请求抓到;但如果你想抓某些应用(比如手机上的应用),应用使用的某些资源,如果没有向服务器发送请求,而是通过调用内部资源的方式进行展现,那么此时charles是抓不到的;验证这个的方式很简单...,就是把网络断掉后,如果还可以继续展现,就是属于调用内部资源的,这种时候就不要想着通过抓包工具捕获资源了,他都没有像服务器发起请求,手机点烂也抓不到的; 启动 Charles 后,第一次 Charles...Firefox 浏览器并不一定使用的就是本机,可能是一些代理工具,而 Charles通过将自己设置成代理服务器来完成资源记录的,所以如果你的charles无法截取 Chrome Firefox

    64520

    猫哥网络编程系列:HTTP PEM 万能调试法

    「HTTP PEM 调试法」之 Proxy 在上一期《猫哥网络编程系列:详解 BAT 面试题》中,我们有介绍到 Windows 下的 Fiddler Mac 下的 Charles 这两款 HTTP...通过 Fiddler/Charles 代理工具将 JS 脚本注入成功后,我们便可以通过前文提到的 weinre 后台开始 debug 相应的页面,以下是在 iPhone 模拟器中调试新浪微博界面的截图:...使用该方法可以调试 Android iOS 中「任意 App 的 H5 页面」,但由于主要使用了 weinre 服务,其原理决定了该方法无法像真正的 Chrome DevTools 一样支持 JS...在实际 Web App 开发过程中,推荐使用以下工具进行调试 : 微信官方调试工具 调试基于微信的 Web App Chrome Remote Debugging 调试 Android Web App...例如,PHP 程序员可以在项目代码中所有的 curl 调用点,将「CURLOPT_PROXY」设置成 Fiddler/Charles 的代理服务,然后一步步调试,从接口字段上理解数据库设计 Controller

    1.8K60

    太干了,Android 抓包姿势总结!

    ,如果发现不一致,那么可能就是由于中间人攻击(比如 Fiddler/Charles 抓包工具),App 客户端可以终止 https 链接。...,这款软件支持众多的 http 调试任务,包括通过捕获浏览器的会话以及使用它捕获 HTTPS 会话 利用 Fiddler 与 BurpSuite 联动连抓取流量 首先对 Fiddler 进行设置,在...:8080 BurpSuite 的 IP 及端口号与 Fiddler 保持一致 成功接收到转发的流量 0x06 Charles+BurpSuite 联动 Charles 是常用的网络封包截取工具,...Charles 通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络封包的截取分析。...抓取 http 包则设置 Web Proxy(HTTP)选项(IP 及端口与 BurpSuite 保持一致) 抓取 https 包则设置 Secure Web Proxy(HTTPS)选项(IP

    4.5K41

    《吐血整理》保姆级系列教程-玩转Fiddler抓包教程(2)-初识Fiddler让你理性认识一下

    Fiddler是以web proxy代理服务器的形式工作的 , 它也是一个http协议数据抓包与调试代理工具,它能够记录检查当前你的电脑互联网之间的http消息, 也就是说可以将网络传输发送与接受的数据包进行截获...抓包工具:wireshark、fiddler、httpwatch、charles、chrome开发者工具(F12),各工具的对比, 说到抓包工具,有FiddlerCharles、HttpWatch、WIRESHARK...(2)Fiddler无法监测或修改基于其他协议的数据,如SMTP、POP3、Telnet、IRC。...Fiddler的原理简单点说就是通过改写HTTP代理然后让网络数据从Fiddler这边通过 这样子来监控并且截取到网络信息数据。当你打开Fiddler的时候, 就已经设置好了浏览器的代理了。...☺️ Fiddler是以代理WEB服务器的形式工作的,浏览器与服务器之间通过建立TCP连接以HTTP协议进行通信,浏览器默认通过自己发送HTTP请求到服务器,本地使用代理地址:127.0.0.1, 端口

    1.6K32

    从原理到实战,全面总结 Android HTTPS 抓包

    HTTPS 抓包原理 - 中间人攻击 我们熟悉的 FiddlerCharles HttpCanary App 抓包工具,其实都是采用了中间人攻击(Man-in-the-MiddleAttack,...2、通过代理方式将网络流量归集到 MITM 主机: 在电脑命令行执行 ipconfig 获得本地 IP 地址(也可以通过 Charles 的 Help→Local Ip Address 查看),然后将手机电脑连接到同一个局域网下...手机本地抓包方案 前面提到的 FiddlerCharles 或者 Wireshark 抓包方案的整个配置过程是比较繁琐的,比如需要配置手机代理、安装证书。...实践中可以采用综合的抓包方案:在手机上使用本地抓包方案,无法满足需求时再使用 Fiddler 方案补齐。...6.2 OkHttp 拦截器 对于基于 OkHttp 实现网络请求的应用,可以通过拦截器监控应用内的网络数据,再通过通知栏、桌面小部件入口查看抓取的数据。

    2.2K10

    这些抓包工具,你值得拥有

    1 Fiddler Fiddler 是一个使用 C# 编写的 http 抓包工具。它使用灵活,功能强大,支持众多的 http 调试任务,是 web、移动应用的开发调试利器。...所以 Fiddler 经常被运用在网络爬虫抓包、HTTP API 测试、手机抓包场景。...它跟 Selenium 有点类似,使用驱动程序在 Android、iOS 设备上执行模拟点击、滑动操作。 Appium 的核心是一个公开 REST APIWeb Server。...4 Wireshark Wireshark 是一款非常优秀、支持 Unix Windows 平台的网络协议分析工具。...网络安全工程师可以利用其监控 TCP 网络动态、分析 DDos 数据。 推荐原因: Wireshark 能抓取网卡所有的数据包。这也说明其能抓取 ISO 模型中除了物理层之外的协议数据包。

    2.1K20

    《爆肝整理》保姆级系列教程-玩转Charles抓包神器教程(4)-Charles如何设置捕获会话

    1.简介 前边几篇宏哥介绍了Charles界面内容以及作用。今天宏哥就讲解分享如何设置Charles后,我们就可以愉快地捕获会话,进行抓包了。...PC(电脑)端——web抓包手机(AndroidIOS苹果)端——APP抓包。...4.1web 抓包 Charles Web抓包非常简单,启动Charles会自动与浏览器设置成代理,不需要进行过多的设置,接下来我就就是通过浏览器发送网络请求,Charles就会直接抓取到这些信息响应信息...5.1.1电脑端设置 1.启动安装好的Charles抓包工具。 2.查看电脑IP地址。...中查看 :Help -> Local IP Address ,如下图所示: 3.点击【Proxy】–>【Proxy Settings】我们在设置下端口号“9999”(CharlesFiddler一样默认的端口也是

    1.8K60

    高颜值抓包工具Charles,实现MacIOS端抓取https请求

    常见的抓包工具FiddlerCharles,在此之前介绍过Fiddler抓包:Fiddler抓包详解,今天我们介绍Mac端以及IOS端如何使用Charles抓取https。...下都是可以使用的,并且在AndroidiOS设备上通用。...2Charles原理 当程序连接Charles的代理访问互联网时,Charles可以监控这个程序发送接收的所有数据。...3Charles作用 截取 Http Https 网络封包。 支持重发网络请求,方便后端调试。 支持修改网络请求参数。 支持网络请求的截获并动态修改。 支持模拟慢速网络。...三Charles界面视图介绍 1Charles界面视图 Charles在Mac端的界面: 1)在顶部导航是基本设置、代理设置、工具、帮助; 2)中间位置是请求的接口名字、请求内容、响应内容

    1.8K10

    盘点App测试会用到哪些工具

    8、静态代码分析 8.1、Android平台 8.2、iOS平台 9、代码覆盖率 10、常用的云测平台 10.1、免费开源 10.2、商业(限时免费) 11、持续集成 12、监控SDK...# 公众号:AllTests软件测试 Fiddler Charles Tcpdump Wireshark BurpSuites 第三方proxy server(如:Anyproxy、mitmproxy...、browsermob-proxy) 6、弱网模拟 # 公众号:AllTests软件测试 Fiddler Charles ACT(Augmented Traffic Control by facebook...) iOS developer mode 其他限速软件,比如各种随身WIFI、路由器、网卡 7、常用的专项测试工具 7.1、Android平台 (1)集成工具 # 公众号:AllTests软件测试 GT...Charles Android API(版本限制) (5)FPS # 公众号:AllTests软件测试 ADB shell service call SurfaceFlinger 1013(需要root

    98210

    Fiddler 抓包 Android

    APP 不走系统代理 原因/实现 网络请求代理设置 NO_PROXY网络请求的时候,通过OkHttp可以设置一个选项,代理的类型。我们在这里直接设置成Proxy.NO_PROXY。...,最终导致我们无法获取任何请求。...解决方案 不过既然我们已经知道了Fiddler Charles不能抓包的具体原因,前面也提到了代理抓包的原理,那我们就总有办法解决。...优势: 操作方便,通过修改设备的hosts可以十分方便的首先 劣势: 需要为每个需要操作的域名提前添加host 在手机手持设备上难以修改hosts(即对移动APP这类应用很难实现) 方法2:在网络设备上直接做流量转发...,将指定终端设备上发往80及443端口的数据直接转发到代理服务器的 目标端口上 优势: 可以针对连接到网络设备上的终端设备进行分别配置,而手机终端设备不需要进行任何设备 劣势: 需要单独的硬件设备

    2.5K20

    Charles 抓包工具

    Charles 通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络封包的截取分析。 Charles 是收费软件,可以免费试用 30 天。...Include Exclude 选项卡的操作相同,选择 Add,然后填入需要监控的Procotol、Host Port信息,这样就达到了过滤的目的。...创建原始目标 Web 服务器的反向代理,然后将客户端应用程序连接到本地端口;反向代理对客户端应用程序是透明的,使您可以查看 Charles 以前可能无法访问的流量。...Web界面提供对以下功能的访问: 节流控制 激活或停用任何已配置的限制预设 录音控制 开始停止会话录制 工具 激活停用工具 会话控制 清除当前会话 以任何支持的格式导出当前会话 以 Charles...Rewrite Settings(重写) Rewrite 工具允许创建请求和响应在通过 Charles 时修改他们的规则。如:添加或更改头信息、搜索替换响应内容中的某些文本

    2.3K30

    FiddlerCharles抓取数据

    Fiddler抓取数据 一、Fiddler简介 现在的移动应用程序几乎都会网络打交道,所以在分析一个 app 的时候,如果可以抓取出其发出的数据包,将对分析程序的流程逻辑有极大的帮助。...三、手机配置 首先查看电脑的 IP 地址,确保手机电脑在同一个局域网内 Android 手机上的配置 将 Fiddler 代理服务器的证书导到手机上才能抓这些 APP 的包。...特别是做APP开发,调试与服务端的通信,Charles是必备工具。...Charles本质是就是 一个http抓包分析工具,在工作的时候需要先把charles设置成代理服务器,这样所有的网络请求都会经过charles了。...四、设置代理(记住手机跟电脑要在同一个网络,用的同一个路由器) 1)查看默认端口    Proxy->Proxy Settings  在这个页面会看到HTTP Proxy的默认端口是8888   我们不需要修改

    1.1K10

    10款抓包工具优缺点对比

    Wireshark 介绍:Wireshark是一个免费的网络协议分析工具,支持Windows、macOSLinux多个平台。它可以捕获分析网络数据包,支持多种网络协议解码。...Fiddler 介绍:Fiddler是一个免费的HTTPHTTPS调试工具,支持Windows平台。它可以捕获HTTPHTTPS流量,并提供了丰富的调试分析功能。...Charles 介绍:Charles是一个HTTP代理服务器反向代理服务器,支持macOS、WindowsLinux多个平台。...Burp Suite 介绍:Burp Suite是一个面向Web应用程序测试的集成平台,支持Windows、macOSLinux多个平台。...PacketTotal 介绍:PacketTotal是一个基于Web网络数据包分析平台,可以在任何平台上使用。它提供了在线的数据包分析、多种过滤搜索功能以及免费的恶意软件分析服务。

    3.5K20

    全网最全fiddler使用教程fiddler如何抓包

    是一个使用本地127.0.0.1:8888的HTTP代理,任何能够设置HTTP代理为127.0.0.1:8888的浏览器应用程序都可以使用Fiddler。...三、Fiddler简介工作原理   1.Fiddler简介   Fiddler是位于客户端和服务器端的HTTP代理。   目前最常用的http抓包工具之一。功能非常强大,是web调试的利器。   ...当Fiddler退出的时候它会自动注销,   关掉Fiddler、谷歌IE浏览器的代理服务器会自动取消。如果Fiddler非正常退出,因为Fiddler没有自动注销,会造成网页无法访问。...Timeline页签:时间轴,也称为Fiddler的瀑布图,展示网络请求时间的功能。每个网络请求都会经历域名解析、建立连接、发送请求、接受数据阶段。...$ 六、Fiddler对于WEB项目的抓包改包项目实战   打开Fidder会自动抓包,如果想要改包的话则在AutoResponder页签,如下图:如果你对此文有任何疑问,如果你也需要接口项目实战,

    13.4K31
    领券