HTTP/HTTPS 抓包工具 Charles

2,861 阅读2分钟
原文链接: www.jianshu.com

Charles是一款抓包神器,它是Java开发的跨平台的软件,不仅可以在Mac上使用,Linux以及Window下都是可以使用的,当然需要安装JDK,才能运行,他是收费的,当然,如果不付费,也能使用,只是每过十分钟,就会弹出一个对话框.charles官网

当然了,网上还是有破解版的,怎么下载破解的,就不用我说了,直接百度或谷歌吧.

HTTP抓包

http抓包比较简单,基本上只要打开了charles,然后随便一个网络请求,就可以在charles中看到抓取的信息了


那么我们怎么抓取iOS真机设备上的http呢?

  1. 打开charles
  2. 记下电脑的ip地址,然后打开charles的设置,charle-proxy - proxy settings


    记住端口号·
  3. 打开手机的wifi详情,选择http代理,填入刚刚记下的电脑的ip地址,还有上面记下的charles的端口号(例如,默认的8888)

  4. 在手机上进行网络访问,这样charles会出现一个提示,大体上意思是,是否允许charles作为手机的网络请求代理

    ,选择 Allow,然后,手机上的网络请求,在charles上就可以看到了

HTTPS抓包

在电脑上抓包https,例如百度的,首先就是安装Charles的根证书,Help - SSL Proxying - Install Charles Root Certificate ,会打开 钥匙 应用,安装进去



当安装后,可能你看不到在哪里,在右上角的搜索中 输入 cha 则会显示出来,你看到上面是 此根证书不被信任!,


这样,证书是不可用的,你还是不能抓包https,怎么做呢?
在证书上 右键 - 显示详情 ,展开信任 选择 始终信任


然后点击左上角的关闭,系统会弹出授权提示框,授权同意修改,回到列表,稍等,证书就刷新了


这个时候就可以用了


就可以抓包这个host了

其实这一步等价于


在host中可以输入 * 表示 匹配所有的


当然,Port 也可以输入 :*这样就是匹配所有的了

这个时候,你访问https网络请求,就可以在charles上看到了!