app双向https认证抓包

技术#2-用自定义CA证书重写已打包的CA证书

如果第一种方法不起效的话,可能是因为开发人员限制了应用程序所能信任的CA证书了。还记得刚才我们使用自定义的<trust-anchors> 来提供CA证书路径吗?而开发人员同样可以使用这种方法来保护自己的应用程序免受SSL拦截攻击。

在这种场景下,为了让我们的拦截证书可以被信任,我们就需要提取APK并用我们自定义的CA证书来重写应用程序所提供的CA证书。需要注意的是,这种方法可能会要求进行一系列验证。

 

使用APK Studio之类的工具打开APK文件,然后在窗口中找到应用程序所捆绑的证书。在上图中,证书位于应用程序的assets目录下。接下来,用我们自定义的CA覆盖应用程序原本的CA(‘UniversalRootCA’证书),这样就可以让应用程序直接信任我们的证书了并实现流量拦截了。

 

E:\>"C:\Program Files\Java\jdk-10.0.1\bin\keytool.exe" -printcert -rfc -file FiddlerRoot.cer
-----BEGIN CERTIFICATE-----
MIIDsjCCApqgAwIBAgIQGiQOmP4Iir9CQH5xAj6v2DANBgkqhkiG9w0BAQsFADBn
MSswKQYDVQQLDCJDcmVhdGVkIGJ5IGh0dHA6Ly93d3cuZmlkZGxlcjIuY29tMRUw
EwYDVQQKDAxET19OT1RfVFJVU1QxITAfBgNVBAMMGERPX05PVF9UUlVTVF9GaWRk
bGVyUm9vdDAeFw0xNjA2MDYxMDQzMjVaFw0yMjA2MDYxMDQzMjVaMGcxKzApBgNV
BAsMIkNyZWF0ZWQgYnkgaHR0cDovL3d3dy5maWRkbGVyMi5jb20xFTATBgNVBAoM
DERPX05PVF9UUlVTVDEhMB8GA1UEAwwYRE9fTk9UX1RSVVNUX0ZpZGRsZXJSb290
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAy5HbEPXePrHH5uac5AFy
r4Mq8NtcQEPiZWMKClgKR1odIiowt/2/EjWPJ9/KYvoqew0QZflHh//HjHGK6kcq
udWIlVvaNLj8mk5sZlnQc62sLl2XY+fhPIqDEH7tglvsru9nBGga9Jysr9Y2xu8Q
BoPfXShUWjodykhDC/5mXEqOgm/TRPyjoic8vGF1tdnF4cMsG8YpdikkOAMv01my
3aL116GzHwASdRs0107kblTXRdF1pCNLSuV6bxBJkmjuRD1gsjM5h9Nm13TbcgTL
VoTzaFkSNtnEw0Z39bf5CPtBUphzPGoFDDdcPyFQAU9nqyABNgud2wo5xW20NeM9
rQIDAQABo1owWDATBgNVHSUEDDAKBggrBgEFBQcDATASBgNVHRMBAf8ECDAGAQH/
AgEAMB0GA1UdDgQWBBReRghmaVajfFIXRuUmQ7OIUe3TETAOBgNVHQ8BAf8EBAMC
AQYwDQYJKoZIhvcNAQELBQADggEBACZumLSGR8ZCso0qreAUawO+BcmloliHkGk3
wD8IMmytEmjlLQJ4lXb/k9U8H7mHCS1+Rwhb5kOhYgkA4cuURq9MlZydqBHqUpEb
D6nzmj5Q3WIsA00WAFJdhdmca+r3BvfqpR7wx+1WdB2NiJIanKj/gn3QUvMePsr2
yujtZHs4amZOzpW4l6CzSR/Plqjzgw6oO8FJVTLxE3zyyhtx1vtvyH+UheMi6Foo
jAPndgUqs3DKtFcwu4LTNjSMHBdHQFkzV1nTGRufG88VfGPjbwpUYrs+U2ybcXuU
6CaJJQZsxgDYhNnCyjHlju/QrOo5y73O+Ctqggjp6PXWAtEuQKM=
-----END CERTIFICATE-----

替换安邦金融的abjr_client.cert

resigner重新签名

 

posted @ 2018-12-20 14:37  飞晨信息  阅读(603)  评论(0)    收藏  举报