Android抓包、证书安装\不信任总结

证书安装

1、从burp中导出证书,一般是cer格式,如果手机不识别,需要转换格式,各种格式可以都试一下
burp证书

2、转换格式可以使用浏览器,例如firefox,选项-隐私与安全-查看证书,里面导入证书后再导出,导出后为crt格式
隐私与安全->查看证书
导出后的证书
或使用openssl命令转换格式

3、安装到手机,首先usb线连接手机,进入内存,把文件放到目录里,再从手机中安装。
手机上安装:设置->安全->加密与凭据->从存储设备安装,然后找到刚刚放到手机中的证书,点击安装就行。

用户证书不信任

Android版本较高,会提示“已安装证书授权中心 受到不明第三方的监控”,也就是不信任用户证书。
解决办法有两个
方法一:安装为系统证书
1、安装成系统证书,需要root,安装re浏览器(可以管理手机里所有文件),主要是需要往system目录下写文件的权限。
在导出burp证书后,用openssl转换格式为pem格式,查看pem证书详情,得到它的hash值

举例:

openssl x509 -subject_hash_old -in <certificate.pem>

得到如下信息,第一排就是hash值

e7f15d06
-----BEGIN CERTIFICATE-----
MIIFRjCCBC6gAwIBAgIGAXWR+Jx8MA0GCSqGSIb3DQEBCwUAMIGmMTcwNQYDVQQD
DC5DaGFybGVzIFByb3h5IENBICg0IE5vdiAyMDIwLCBMQVBUT1AtQ0xITEI1MlQp
MSUwIwYDVQQLDBxodHRwczovL2NoYXJsZXNwcm94eS5jb20vc3NsMREwDwYDVQQK
DAhYSzcyIEx0ZDERMA8GA1UEBwwIQXVja2xhbmQxETAPBgNVBAgMCEF1Y2tsYW5k
MQswCQYDVQQGEwJOWjAgFw0wMDAxMDEwMDAwMDBaGA8yMDUwMDEwMTA2MzYzMFow
gaYxNzA1BgNVBAMMLkNoYXJsZXMgUHJveHkgQ0EgKDQgTm92IDIwMjAsIExBUFRP
UC1DTEhMQjUyVCkxJTAjBgNVBAsMHGh0dHBzOi8vY2hhcmxlc3Byb3h5LmNvbS9z
c2wxETAPBgNVBAoMCFhLNzIgTHRkMREwDwYDVQQHDAhBdWNrbGFuZDERMA8GA1UE
CAwIQXVja2xhbmQxCzAJBgNVBAYTAk5aMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
MIIBCgKCAQEAkxNd8Bu8+4kbKiWGxR2mHTFOQ299YrjQOK/qjRHQjOKFhkdFLCIU
Zb1JrAtUQd49eo7zg6qYcS5fFIcmmgJsLAHg36PSyJ4pZJLkxcjTQ27ZGbfHpGeh
CZvWSx+vjhc8abNnmsk88r9Ib6BujtxTqklSLHbQp1hBAMKgP1+F5YQAjqAkOPmV
OyuJzKdOZ5zhq3i+zrRhOvi8As/PIN9F6uYoEK/nsao9Ik313lnx8OhiY/pheoLR
QetnotzFSg0HkB2Ly8cbJTP+uerc2eUMz/c8/pa4rBtqtGr4fz2A1M8cSzhr81F9
sr/CNft/Vxbhxs3Q55tNw6U8VtFkrSBZzwIDAQABo4IBdDCCAXAwDwYDVR0TAQH/
BAUwAwEB/zCCASwGCWCGSAGG+EIBDQSCAR0TggEZVGhpcyBSb290IGNlcnRpZmlj
YXRlIHdhcyBnZW5lcmF0ZWQgYnkgQ2hhcmxlcyBQcm94eSBmb3IgU1NMIFByb3h5
aW5nLiBJZiB0aGlzIGNlcnRpZmljYXRlIGlzIHBhcnQgb2YgYSBjZXJ0aWZpY2F0
ZSBjaGFpbiwgdGhpcyBtZWFucyB0aGF0IHlvdSdyZSBicm93c2luZyB0aHJvdWdo
IENoYXJsZXMgUHJveHkgd2l0aCBTU0wgUHJveHlpbmcgZW5hYmxlZCBmb3IgdGhp
cyB3ZWJzaXRlLiBQbGVhc2Ugc2VlIGh0dHA6Ly9jaGFybGVzcHJveHkuY29tL3Nz
bCBmb3IgbW9yZSBpbmZvcm1hdGlvbi4wDgYDVR0PAQH/BAQDAgIEMB0GA1UdDgQW
BBSxw2j7SHsxFof+y6iYmC/UNdasZzANBgkqhkiG9w0BAQsFAAOCAQEAYqFkNhj4
tF4TNAfmpA5Vm86v8RWHfgwvsBcYDKub0w5hOSX0xq3D1Tvu4McLFyUhg2CELtVu
6ef6qvcxypxwQ7fhhmW1uKRJYOsB+dZiKkJ5kYW/5PH9hMmUb44w4hQWAHnp2G2j
e1DAHmPE5CFqcO0bsqXI6+uhNegfAhN+AnR+h9ArhSgXEqtUnGdIpjRG5GVgy7Z9
YANMcX/fr28LisuE4qH8RNaH7Ep17y2v2BGUiiSssUouzhcw/wia3djrAsT1frv/
f4A9kVAxVoXWYRmKa5x4mXHJuVc/OGhLC4ZlkZoP54HIFrpv90vvccfU/IXzHzoX
zbzLXpMEucGQ3w==
-----END CERTIFICATE-----

将证书重名名为e7f15d06.0,这个文件直接放入系统证书的目录里。
打开手机里re浏览器,找到/system/etc/security/cacerts,里面都是hash.0这个格式的文件,放这里面就好了。

问题:重新刷机了,安装了re浏览器,也挂载读写权限了,但是还是无法写入system。
问题解决:因为系统是Android10,网上那些挂载分区,修改system读写权限都不管用了。可以使用magisk里的Move Certificates模块,安装好该模块后自动将用户证书添加进系统证书了。
magisk安装好后,在线下载模块,需要挂vpn,fq。

方法二:
1、将要抓包的apk,反编译后,在AndroidManifest.xml中找到android:networkSecurityConfig="@xml/network_security_config"
如果没有就加上
2、在res/xml目录中,新建network_security_config.xml文件,有的话直接在这个文件中修改
添加如下代码:

<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <base-config>
        <trust-anchors>
            <certificates src="user" />
            <certificates src="system"/>
        </trust-anchors>
    </base-config>
</network-security-config>

如图所示:
user就是信任用户证书
system就是信任系统证书
在这里插入图片描述
3、保存,重新编译打包APK,安装到手机,就可以抓包了
这个方法仅限于APK没有做重新编译重打包重签名这些防护的情况。

  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值