BrupSuit证书导入Android7.0以上手机

Android安全策略提升

Android7.0 对SSL证书提升了大量限制。 例如应用不信任用户证书,用户无法自己导入证书等。

如何破解

我们可以通过https://github.com/levyitay/AddSecurityExceptionAndroid项目来对apk进行修改。也可以通过导入证书为系统证书来实现。后者需要有root权限

作为证书变为系统证书

  1. 从brupsuit中导出证书文件certificate.der

  2. 生成PEM文件openssl x509 -in certificate.der -inform DER -out certificate.pem -outform PEM

  3. 提取hash:

    openssl x509 -inform PEM -subject_hash -in certificate.pem | head -1,

    or:   

    openssl x509 -subject_hash_old -in <Certificate_File>

    记住输出的hash,例如a0b1c2d3

  4. cat certificate.pem > a0b1c2d3.0

  5. openssl x509 -inform PEM -text -in certificate.pem -out /dev/null >> a0b1c2d3.0

  6. 连接手机,执行adb rootadb remount

  7. adb push a0b1c2d3.0 /system/etc/security/cacerts/

  8. 进入手机终端adb shell

  9. 加上权限chmod 644 /system/etc/security/cacerts/a0b1c2d3.0

  10. 重启手机,查看证书是否安装完成。

参考

  1. https://nvisium.com/blog/2017/07/12/advantages-and-disadvantages-of-android-n-network-security-configuration/

  2. https://github.com/levyitay/AddSecurityExceptionAndroid

发表评论