admin管理员组

文章数量:1559710

Android7.0后证书不信任,要用到两个工具,一个是openssl,一个MT管埋器(获得安卓系统的超级管理员权限,有些用adb命令推不进夜神模拟器里)

工具一:openssl

下载openssl地址:https://slproweb/products/Win32OpenSSL.html

Windows配置OpenSSL环境变量步骤:

        我的电脑--属性--高级系统设置--环境变量--系统变量--path--编辑--新建--添加OpenSSL的bin目录路径--确定

Linux 或 macOS

打开终端,并使用以下命令编辑你的shell配置文件(.bashrc.zshrc.bash_profile等,取决于你使用的shell):

export PATH=$PATH:/path/to/openssl/bin

/path/to/openssl/bin替换为OpenSSL实际的安装路径。之后,执行以下命令使更改生效:

source ~/.bashrc  # 如果你使用的是bash
# 或者
source ~/.zshrc   # 如果你使用的是zsh

确保你已经安装了OpenSSL,并且知道它的安装路径。如果你是通过包管理器安装的,通常安装路径会是标准的系统路径,例如/usr/bin/usr/local/bin

工具二:MT

下载链接:https://pan.baidu/s/1TxnB71BSnIUexzUk8OYXiQ?pwd=vm7j 
提取码:vm7j

操作步骤

手机抓包一个是要把让电脑和手机出于同一个网络(模拟器),最简单连同一个wifi

1.模拟器代理设置

打开模拟器,找到设置,找到连接wifi(长按),把代理改成手动,填写电脑的ip(直接cmd那里ipconfig)找到ipv4的,或者在charles查看,填写端口号并保存

 2.证书下载

配置好代理后打开模拟器的浏览器,输入地址:http://chls.pro/ssl进行证书安装下载

   证书查看:设置--安全--信任的凭据

3.charles下载pem或cer证书

从下载charles下载的pem证书(或者cer证书也行,两个证书有对应的转换命令)

4.pem或cer证书hash值转换

pem格式证书转换命令:

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

cer格式证书转换命令:

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

打开cmd窗口,进入证书下载目录,根据下载格式执行命令,得到如下图内容,红框内是命名需要用到的,后缀名的数字是为了防止文件名冲突的,如果两个证书算出的Hash值是一样的话,那么一个证书的后缀名数字可以设置成0,而另一个证书的后缀名数字可以设置成1;

5.hash.0文件转换

根据下载证书格式执行命令:

openssl x509 -inform DER -text -in 011.cer > 8a26b43b.0 #cer格式
openssl x509 -inform DER -text -in 011.pem > 8a26b43b.0 #pem格式

 8a26b43b是上面计算的hash值,执行后得到一个8a26b43b.0文件

用记事本打开,看到如下: 

在Certificate上面加上刚才解析出来的东西

 从begin到end certificate

6.文件移动到安卓证书

保存文件后,通过MT工具把这个.0的文件放到模拟器安卓证书文件下

打开MT工具,直接拖进去,具体拖到哪个位置,自己找一下,然后把文件移动到放证书的位置/system/etc/security/cacerts/,再把这个.0的文件权限改为777(长按文件,属性,把读写执行权限都勾了)然后点开模拟器浏览器,就不会弹出不信任证书,助你轻松抓包。

 参考文献:https://blog.51cto/u_16213694/11660483

本文标签: 模拟器证书手机charles