系统限制

Android 7 开始系统有了一个非常安全(讨厌)的限制,所有应用默认情况下不再信任用户自行安装的证书,而仅信任系统预装的。因此,即便我们安装证书后也无法愉快地抓包了:confused:

但是这一限制仅对 targetSdkVersion>=24 的应用生效。

下面提供几种方案绕过这一限制。

添加证书信任

本方案需要修改 AndroidManifest,推荐用于自己的应用,其他应用需要重新打包了。

首先在 res/xml 中创建一个网络安全配置文件,信任用户证书:

然后在 Manifest 的 application 节点新增一个 android:networkSecurityConfig 属性指向刚才创建的配置文件即可:

使用子系统

此方案本质上是降低系统的版本,例如 平行空间 等双开应用,会创建一个独立的运行环境,相当于子系统。这个环境内的系统版本不一定与手机系统相同。目前,平行空间 4.0.8625 版本以下系统 API < 24,应该可以正常使用。

同理,你也可以使用模拟器抓包,或者干脆找一个旧系统的手机。

修改系统证书

此方案需要 ROOT.

既然默认只信任系统证书,那我们何不直接把自己的证书导入为系统级别?

注意,Android 系统证书使用的是 .0 格式,不同于常见的 .cer/pem,需要使用 openssl 命令行工具转换下。

确定文件名

.cer 格式证书执行:

openssl x509 -inform DER -subject_hash_old -in xxx.cer

.pem 格式证书执行:

openssl x509 -inform PEM -subject_hash_old -in xxx.pem

输出的一个行8位字符串就是文件名,例如 269953fb 则最终文件名应该是 269953fb.0.

转换格式

同样,CER 与 PEM 请分别执行下面两个命令:

注意替换证书文件名与目标文件名。

CER: openssl x509 -inform DER -text -in xxx.cer > 269953fb.0

PEM: openssl x509 -inform PEM -text -in xxx.pem > 4bb9877f.0

最后编辑一下输出的文件,把 -----BEGIN CERTIFICATE----- 到最后的这部分移动到开头。

安装证书

导入到手机 sd 卡:adb push e:/269953fb.0 /sdcard

复制到系统证书目录:

修改文件权限:

重启设备

其他问题

对于应用固定证书、双向加密等问题,参考这篇更全面的教程。

android sdk抓包 https,Android7 https 抓包相关推荐

  1. Linux下idea 配置Android SDK

    ==1==先来个SDK下载传送门:http://dl.google.com/android/android-sdk_r24.4.1-linux.tgz 请选择对应版本 ==2==下载完成后,直接将压缩 ...

  2. Error:Android Source Generator: [sdk] Android SDK is not specified.

    有时候使用intellij idea 带入android 项目,运行提示Error:Android Source Generator: [sdk] Android SDK is not specifi ...

  3. Android SDK的下载与安装(Windows)

    1.下载Android SDK Tools 下载地址:https://www.androiddevtools.cn/ 找到SDK Tools,选择最新的zip版本,下载解压至任意路径(不要有中文) 2 ...

  4. Android SDK下载与安装(仅支持jdk1.8及以下)

    1.Android SDK下载与安装(仅支持jdk1.8及以下) 1.Android SDK下载 下载地址:https://www.androiddevtools.cn/最新版 2.Android S ...

  5. 使用迅雷代替SDK Manager快速下载Android SDK

    之前使用SDK Manager(即Android SDK and AVD Manager)下载Android SDK相关文件非常地慢,今天无事 在网上找到一个非常好的办法下载这些东西... 参考:ht ...

  6. 在mac OS安装Android SDK教程

    在mac OS如何安装Android SDK 安装步骤 1.先下载android sdk for mac 地址:https://dl.google.com/android/repository/too ...

  7. android p安装教程,Android SDK的安装教程

    Android4.1虽说已经发布了好些天,但由于的我手机比较坑,系统依旧保持在2.3 .4.0的都是可望不可即的了,就别说4.1.由于资金的问题,没法换手机,只能另想方法,通过在笔记本上装androi ...

  8. Android sdk 安装教程

    Android4.1虽说已经发布了好些天,但由于的我手机比较坑,系统依旧保持在2.3.4.0的都是可望不可即的了,就别说4.1.由于资金的问题,没法换手机,只能另想方法,通过在笔记本上装android ...

  9. macOS 安装 Android SDK

    1,macOS 安装 Android SDK ╰─➤ brew search android-sdk ╰─➤ brew cask install android-sdk 2,配置环境变量 ╰─➤ vi ...

最新文章

  1. MTK6515 android打版软件配置(DrvGen.exe 使用)
  2. 测验3: 基本数据类型 (第3周)
  3. 转载 Android解决java.lang.OutOfMemoryError: bitmap size exceeds VM budget
  4. 1053 Path of Equal Weigh(甲级)
  5. 【java】java中的线程池 ThreadPoolExecutor源码分析
  6. python写入txt,读取txt,拷贝txt文件
  7. 深圳有哪些牛逼的互联网公司?看完你再跳槽!
  8. web一阶段 day13 阿里矢量图库的使用方法
  9. word2016 图片去底灰_Word 2016 可以删除图片背景
  10. request请求 下载附件
  11. excel高级筛选怎么用_神!Excel高级筛选原来如此好用
  12. asp二进制mysql_asP 读取二进制数据库
  13. 《所谓情商高就是会说话》
  14. [Minitab]如何製作柏拉圖(Pareto chart)?
  15. 康考迪亚大学获560万加元捐赠以鼓励创造力,是魁北克美术学院有史以来最大一笔捐赠
  16. iOS生成gif图片
  17. 独木带你玩转彩屏——应用1驱动彩屏(寄存器spi版)
  18. 无人驾驶及Apollo开源平台技术教程
  19. Prometheus监控告警搭建(一)
  20. golang学习之negroni/gizp源码分析

热门文章

  1. 【附源码】计算机毕业设计SSM-小区停车场信息系统
  2. 机器学习算法 03 —— 逻辑回归算法(精确率和召回率、ROC曲线和AUC指标、过采样和欠采样)
  3. 解密PDF文件打开密码
  4. 计算机病毒的格式是什么样的,文件病毒的格式是什么
  5. java Jacob调用VB编写的DLL(COM组件)
  6. CY13-Q2 OpenStack、OpenNebula、Eucalyptus、CloudStack社区活跃度比较
  7. Java性能优化学习1:理论基础学习与分析
  8. 文档管理服务器脱机编辑,如何离线访问nicelabel文档管理系统
  9. anaconda 安装 snownlp
  10. arm64内核内存布局-vmemmap笔记