Ste*_*ven 20 android fiddler httpsurlconnection
我花了无数个小时试图通过Fiddler为HttpsUrlConnection解密Android SSL流量,但收效甚微.如何使用HttpsUrlConnection可靠地配置Fiddler来解密来自Android应用的SSL流量?
这是我的步骤
以上工作.问题是非浏览器的Android流量在Fiddler中显示为连接隧道.我最初的研究表明问题是由于如何通过HttpsUrlConnection信任证书,所以我确保信任所有基于本文的证书https://secure.mcafee.com/us/resources/white-papers/wp-defeating-ssl -cert-validation.pdf
不幸的是,信任所有证书对我来说并不适用于HttpsUrlConnection,所以我停止了调查.几天后,我决定再次尝试,并惊讶地发现正在为HttpsUrlConnection解密小提琴流量!不幸的是我没有做任何进一步的修改来解决这个问题所以我不能完全确定它为什么开始工作.它使用的设备是LG-Optimus L9 Android版本4.0.4并且是根的.
现在我正在尝试为Nexus 7 Android版本4.2.2(未植根)配置此功能,但我在fiddler中看到的所有内容都是连接隧道.由于两个设备上的证书都具有相同的序列号,而我正在测试的应用程序是相同的,因此我难以理解为什么我无法使用其他Android设备配置Fiddler.
总结一下
小智 25
我的研究表明HttpsUrlConnection管道实现中存在一个错误.
要解决问题,您需要在Fiddler中执行以下步骤:
在Fiddler中,单击"规则 - >自定义规则";
在打开的脚本中找到函数OnBeforeResponse
在函数体中添加以下代码:
if (oSession.oRequest["User-Agent"].indexOf("Dalvik") > -1 && oSession.HTTPMethodIs("CONNECT")) {
oSession.oResponse.headers["Connection"] = "Keep-Alive";
}
Run Code Online (Sandbox Code Playgroud)4.保存文件并重启Fiddler
| 归档时间: |
|
| 查看次数: |
8168 次 |
| 最近记录: |