美文网首页
网络安全之NetworkSecurityConfig

网络安全之NetworkSecurityConfig

作者: David_zhou | 来源:发表于2023-02-01 10:01 被阅读0次

    这个东西影响开发时是否能本地抓取https包,一直对这个东西不太懂,每次要用了就百度或者找其他人的代码。
    为什么这个配置文件能决定抓包是否成功,需要好好学习下.
    现在有以下三个配置,哪个配置能成功抓htsps呢?各个字段什么含义?

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

    配置1

    <network-security-config>
        <base-config cleartextTrafficPermitted="true">
            <!--        <debug-overrides>-->
            <trust-anchors>
                <certificates src="system" />
                <certificates src="user" />
            </trust-anchors>
            <!--        </debug-overrides>-->
        </base-config>
    </network-security-config>
    

    配置2

    <network-security-config>
    <base-config cleartextTrafficPermitted="true">
        <trust-anchors>
            <certificates src="system" overridePins="true" />
            <certificates src="user" overridePins="true" />
        </trust-anchors>
    </base-config>
    </network-security-config>
    
    

    配置3
    答案揭晓:配置2 和配置3 是可以抓取的,配置1 是不行的。

    此处应该补上 配置文件字段的解析,自己现在还不清楚,需要仔细看看。文件的解析可以参考这个资料
    SSL-NetworkSecurityConfig证书配置解析
    网络安全之NetworkSecurityConfig

    现在的项目痛点release包不能抓https的包。几个方案可以尝试下
    1 测试开关打开后,输出所有的网络请求的请求和响应数据。
    2 手机root,放置自己的证书到特定目录。
    3 Charles + VirtualXposed + JustTrustMe 接口测试实战 | Android 高版本无法抓取 HTTPS,怎么办?
    4 从NetworkSecurityConfig的配置入手?
    5 改动包,重签名

    方案1比较容易实现。方案3 已经有人实践过,路是可以走通的。那么方案2和4,5呢? 后续尝试看看

    相关文章

      网友评论

          本文标题:网络安全之NetworkSecurityConfig

          本文链接:https://www.haomeiwen.com/subject/dbqbhdtx.html