1、抓包的目的
抓包的目的对所截获的数据包进行解密和分析,获取有用信息,甚至伪造新的数据包,进行发送。对于测试及开发者来讲就是校验数据正确性及功能调试,而对于黑客则更可能是数据分析及篡改数据。 因此,学会抓包,对于学好网络安全技术十分重要。浏览器
2、常见抓包工具
经常使用的抓包工具备fiddler、wireshark、httpwatch、 firebug、F12等。抓包抓的是协议,fiddler抓的是HTTP、HTTPS协议,wireshark抓的是其余协议。fiddler、wireshark能够修改接口的参数和返回值,经常使用的F12调试工具只能够查看接口的参数和响应值。 然而,由于鄙人使用的是Mac系统,因此选用上面都没有当仍然强大的Charles做为主要的移动端抓包工具。安全
3、iOS Charles 抓包入门
一、本节目标
本节以抓取HTTP和HTTPS访问的请求数据及返回数据。网络
二、安装Charles
从 https://www.charlesproxy.com/download/ 下载安装 Charles 最新版。 PS:注册 License 或 破解,请自行处理。app
三、HTTP抓取
电脑端,操做步骤:Charles -> Proxy -> Proxies,勾选并配置端口。 查看本机IP:Charles -> Help -> Local IP Address 。
电脑和手机的wifi要一致,手机WIFI上设置HTTP代理,IP和端口和上面一致,截图以下:
查看电脑端Charles,会有些数据,截图中能够看到HTTP正常请求
此时能够看到请求的数据及返回数据。 选择任一一个HTTPS的请求,会发现一个红红的叉叉unknown,查看提示: You may need to configure your browser or application to trust the Charles Root Certificate. See SSL Proxying in the Help menu.
工具
四、HTTPS抓取
电脑端 Charles -> help -> SSL Proxying -> Install Charles Root Certificate 给电脑端安装证书。 电脑端打开 钥匙串访问 -> 证书 -> Charls Prox Ca (xxx-xxx) ,右键使其证书受权信任。
电脑端 Charles -> help -> SSL Proxying -> Install Charles Root Certificate on a Mobile Device or Remote Browser ,能够看到以下图:
在手机Safari浏览器输入地址 chls.pro/ssl,出现证书安装页面,点击安装 手机设置有密码的输入密码进行安装。 注意1:chls.pro/ssl 须要设置好代理以及Charles开着 注意2:iOS 10.3系统,须要在 设置→通用→关于本机→证书信任设置 里面启用彻底信任Charles证书 设置好的两图以下:
此时返回电脑端Charles -> Proxy -> SSL Proxying Settings,添加SSL容许。
此时选择一个HTTPS就能够看到请求头和返回内容。
测试
4、iOS Charles 抓包放弃
经过上面的章节,基本能够简单抓取到大部分数据。不过对于非技术人员,仅分析数据或简单获取的状况下,能够单独使用APP来进行操做。 App Store搜索下,选择免费的APP就能够,手机端基本都是安装证书及证书容许。pwa