您的位置:首页 > 移动开发 > IOS开发

使用Charles在iOS6上进行抓包

2013-10-22 17:30 232 查看


抓取Web页面的网络请求很容易,Chrome和Firefox都很容易做到。iOS APP如何抓包呢?其实也很容易,我比较喜欢使用

Charles。

我用的是Mac电脑,首先建立一个热点,然后让iOS设备脸上这个热点,并且把Mac电脑的IP设置为代理。这时候,访问网络的时候,Charles会弹出一个选项,只要点击允许就可以。

以上HTTP的请求就可以了,但是如果是HTTPS的请求就需要费电劲了。首先要在Charles菜单里面选择安装证书,然后在Charles的代理设置里面,把Enable SSL Proxying前面的选项勾上。接下来iOS设备通过Safari访问http://charlesproxy.com/charles.crt 安装这个证书。做完这些一般的https请求都可以抓取了。但是,有些APP在代码里面

进行了https的证书验证,需要把证书验证给去掉。如果你的iOS设备没有破解,那就无能为力了。如果你想继续抓包,就需要破解iOS设备,然后去装一个iOS SSL Kill的Cydia插件。这个插件是开源的,Github上有,网址是https://github.com/iSECPartners/ios-ssl-kill-switch。做到这些,基本上可以分析iOS上任意APP的网络协议了。不过,如果是APP的网络使用的是CFNetwork,我现在也不知道怎么做,不过我还没遇到过。

写的不太详细,不明白的可以参考以下网址。
http://www.ravelrumba.com/blog/ipad-http-debugging/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: