背景

高版本的安卓系统,不再信任用户级证书,只信任系统级证书。还有些app与特定证书绑定无法抓包,可以另外通过hook技术抓取通信内容,本文只记录将fiddler证书添加到android系统证书中过程。

环境

设备 版本 备注
华为荣耀8 android 8 已经root
linux centos 7 使用openssl
openssl OpenSSL 1.0.2k-fips 转化证书格式

操作

下载fiddler cer格式证书

  1. 访问浏览器本地地址:8888, 点击下载fiddlerroot certificate 证书
  2. 将证书拷贝到linux 机器
  3. 查看openssl 版本
[root@bogon ~]# openssl version
OpenSSL 1.0.2k-fips  26 Jan 2017
  1. 转化证书格式
openssl x509 -inform DER -in '/root/Desktop/FiddlerRoot.cer'  -out cacert.pem
  1. 查看证书hash值
[root@bogon ~]# openssl x509 -inform PEM -subject_hash_old -in cacert.pem
e5c3944b
-----BEGIN CERTIFICATE-----
MIIDozCCAougAwIBAgIQAJGl31udK1aMaRIvxgnPPzANBgkqhkiG9w0BAQsFADBq
MSswKQYDVQQLDCJDcmVhdGVkIGJ5IGh0dHA6Ly93d3cuZmlkZGxlcjIuY29tMRgw
FgYDVQQKDA9ET19OT1RfVFJVU1RfQkMxITAfBgNVBAMMGERPX05PVF9UUlVTVF9G
*********
-----END CERTIFICATE-----
  1. 证书重命名
mv cacert.pem e5c3944b.0
  1. 将证书放到android 机器上
adb  push D:\doc\openssl\e5c3944b.0 /sdcard
  1. adb 进入android 系统并提升root权限
PS C:\Users\test> adb -s 172.16.13.85:5555 shell
hwedison:/ $ su
hwedison:/ #
  1. 重新挂载/system 分区为可写区
hwedison:/sdcard # mount -o rw,remount -t auto /system
  1. 将证书拷贝到系统证书目录下 /system/etc/security/cacerts
hwedison:/sdcard # cp e5**944b.0 /system/etc/security/cacerts
  1. 修改证书权限与其他证书一致
hwedison:/sdcard # chmod 644 /system/etc/security/cacerts/e5**944b.0

12 重新将system 分区挂在为只读,重启设备

hwedison:/sdcard # mount -o ro,remount -t auto /system
hwedison:/sdcard # reboot

后记

  • 通过上述步骤,再次进行抓包,部分没有证书绑定的https通信可以抓取到。
  • 上述证书可以保存起来,以后有其他测试机器需要再同一台机器上抓包,可以直接使用此证书。

记录android 添加系统证书相关推荐

  1. android 导入系统证书,安卓手机添加系统证书方法(HTTPS抓包)

    安卓7.0以后,安卓不信任用户安装的证书,所以抓https时无法解码请求,对于第三方应用,需要将证书添加为系统证书,网上解决方法较多,比如使用安卓模拟器(兼容性差,很多应用闪退),使用xposed框架 ...

  2. Ubuntu(linux)添加系统证书信任

    关于浏览器使用https访问网站 大家有时候在使用https://访问网站时 经常遇到证书信任问题  经过网上查找资料找到了  使用linux系统 Ubuntu亲测可以使用 添加证书的方式  方式 如 ...

  3. 移动安全:多方法实现Android导入系统证书并用Burp抓包

    文章目录 0x0需求 1x0 环境准备 2x0 导入系统证书 2x1 方法一:Android访问代理 2x2 方法二:adb推入证书 3x0 抓包测试 总结 0x0需求 一般来说在Android7以上 ...

  4. Android添加系统日历提醒,并从项目日历查看添加的事件<日历 111>(带效果图)

    前言 今天写一个从代码中添加系统日历提醒的功能,(分两篇,一个添加到系统日历,一个从手机上能直接查看) 一.话不多说,先看效果 这个是项目中的日历以及日历事件展示 这个是系统日历以及事件展示 可以看的 ...

  5. android 安装系统证书

    场景:Android8.0及以上需要安装系统证书才能正常抓包 安装系统证书需要root 需要root 需要root 以burpsuit为例 首先导出证书 转化证书格式为pem openssl x509 ...

  6. Android添加系统service

    当我们的应用程序需要使用或修改android系统提供的功能时,通常的做法是自己封装接口,接口的实现放在某一个service里,这个service要么是已经存在的,要么是自定义的.然后将这个servic ...

  7. android 添加系统日历事件,添加系统日历事件

    前两天,产品提一个需求,说是弄一个系统日历的提醒,到时提醒用户做一些事情,大概这么一个需求.搞了一两天,查看API翻阅文档,算是完成需求了. 这篇文章一个纯粹的代码文章,就是告诉怎么用系统日历添加提醒 ...

  8. Android添加系统级顶层窗口 和 WindowManager添加view的动画问题

    当Dialog有编辑框时如果选择会弹菜单窗口就不要用 Context applicationContext = mainActivity.getApplicationContext(); AlertD ...

  9. android系统证书导入工具,添加Fiddler/Mitmproxy证书为安卓系统证书

    Android证书分为"用户证书"和"系统证书"两种,在设置->安全->"查看安全证书"列表中,可以看到"系统&quo ...

最新文章

  1. Shiro总是将我重定向到login.jsp
  2. 【作业】第六章 面向对象基础
  3. 抓取html 中文乱码,利用代码抓取网页数据,出现中文乱码问题
  4. 导入jar时出现invalid LOC header (bad signature)
  5. ln函数怎么看奇偶性_Python中函数的参数应该怎么理解?看完这篇文章情不自禁的想收藏...
  6. http https http2.0
  7. java的编辑框丢失焦点_java – 捕获EditText丢失焦点
  8. 【设计模式】—— 访问者模式Visitor
  9. ubuntu 16.0.4如何配合网卡,
  10. 贝佐斯正接受14小时训练 以为周二进行的首次太空飞行做准备
  11. linux tcp客户端端口号,Linux网络编程--服务器客户端(TCP实现)
  12. Django restframework 嵌套关系处理
  13. 关于quartus ii 破解失败的问题
  14. uefi 懒人版黑苹果_clover+懒人版黑苹果安装(e3+970)
  15. oracle 分组随机抽取,Oracle 中实现随机抽取数据
  16. Hellow World----你好世界,别来无恙。
  17. selenium java自动化测试
  18. 数值计算基础(二)线性方程解法篇
  19. Microsoft Excel 教程:如何在 Excel 中使用 XLOOKUP 函数?
  20. 微信小程序格式化日期的几种方式

热门文章

  1. App逆向 | 某漫画app签名加密逻辑分析
  2. 查看照片EXIF信息的类
  3. js中时间戳转换成xxxx-xx-xx xx:xx:xx类型日期格式的做法
  4. skimage库(一)
  5. 爆款文案是一种创意活动,这种思维方式才能创作出更好的爆款文案
  6. linux 中-ldl和-lpthread 是什么意思?
  7. 网络安全学习day1
  8. Audyssey MultEQ、Audyssey Dynamic EQ、Audyssey Dynamic Volume使用心得
  9. php 时间随机数,PHP——生成随机数和日期时间
  10. 基于在软件工程中对贝叶斯网络的循证决策