最近工作需要开始接触移动端,要改移动端的需求,只能学习抓包技能,所以开始走向抓包的需求了。
手机配置代理
手机:设置——无线局域网——配置代理——手动——填写服务器(自己的电脑)+端口(与Charles中开启的一样)
Charles配置
1、配置开启端口号
2、开启抓包
3、出现诸如此类的请求抓包成功
配置过程中可能遇到的问题
Q1:SSL Proxying not enabled for this host: enable in Proxy Settings, SSL locations
charles解析不出path,我们就没法建立映射。
具体的解决方案为在proxy中的SSL Proxying setting中钩上Enable SSL Proxying,并且将要解析的host加上
Q2:You may need to configure your browser or application to trust the Charles Root Certificate。See SSL Proxying in the Help menu
为什么会出现这种情况呢?因为charles相当于一个中间人代理,用户浏览器直接访问目标服务器,验证CA证书有效,所以不会出现这种提示,但是中间加入charles代理后,实际上用户浏览器就会验证Charlse提供的证书,这里显然是验证不过的,所以就会出现这种提示。我们必须手动在客户端导入Charles的证书,才能不出现这个信任提示。
charles 在 iphone 上安装证书方法
1.Charles 当中点击 Help > SSL Proxying > Install Charles Root Certificate on a Mobile Device or Remote Browser
2.点击 iPhone
手机的 Safari 或者 Safari浏览器, 输入网址 http://chls.pro/ssl
, 点击下载 charles 的证书.
3.进入 iPhone
手机的 Settings > General > Profile(s) 或者 设置 > 通用 > 描述文件:
4.点击 Install 或者 安装, 安装 chls
证书.
5.进入 iPhone
手机的 Settings > General > About > Certificate Trust Settings 或者 设置 > 通用 > 关于本机 > 证书信任设置, 启用已经安装好的 Charles Proxy CA
证书.