zoukankan      html  css  js  c++  java
  • 抓包工具Charles

    转自:http://blog.csdn.net/jiangwei0910410003/article/details/41620363/

    今天就来看一下Mac上如何进行抓包,之前有一篇文章介绍了使用Fidder进行抓包

    http://blog.csdn.net/jiangwei0910410003/article/details/19806999

    不过可惜的是,Fidder使用C#开发的,所以就不能在Mac上使用了,不过还有另外一个抓包神器,就是Charles,它是Java开发的,所以跨平台,不仅可以在Mac上使用,Linux以及Window下都是可以使用的,当然需要安装JDK,才能运行,同时还有一个问题就是他是收费的。

    一、下载

    先到它的官网http://www.charlesproxy.com/可下载到最新版本,这个下载有点慢,我已经将它放到网盘中了:http://pan.baidu.com/s/1gdu0S4V

    这个是3.9.3版本的,下载下来,安装就不多说了,很easy....打开界面:

    二、破解

    不过这个收费的,那么接下来就开始破解吧,其实破解很简单就是替换一个文件就可以了,可以在网上搜:Charles3.9.3破解的jar文件

    这里我也是下载好了:http://pan.baidu.com/s/1i3gjEfj

    下载下来之后我们就可以进行破解吧:

    打开应用程序,选择Charles,选择显示包内容:

    然后点击Contents->Resources->Java:

    然后将我们下载下来的charles.jar替换这里的charles.jar就可以了。然后再次打开Charles,就不会太提示30天使用期限了,破解搞定

    三、抓包
    下面来看一下如何进行抓包

    第一、HTTP抓包
    1、打开Charles程序
    2、查看Mac电脑的IP地址,系统偏好设置->网络就可以查看到了,比如我的ip地址是:192.168.1.7
    3、打开iOS设置,进入当前wifi连接(Mac在一个局域网内),设置HTTP代理Group,将服务器填为上一步中获得的IP,即192.168.1.7,端口填8888:

    4、iOS设备打开你要抓包的app进行网络操作
    5、Charles弹出确认框,点击Allow按钮即可

    安卓端的代理设置:

    2.用安装了charles的电脑,代理待抓包anroid手机的网络连接:

         首先查看pc的网络IP地址;打开手机设置,进入当前wifi连接,设置代理为手动,将服务器填为上一步中获得的IP,端口默认为8888(在charles的proxy setting中可以改这个端口号)。这时Charles弹出确认框,点击Allow按钮即可

    第二、HTTPS抓包

    需要下载Charles证书http://www.charlesproxy.com/ssl.zip,解压后导入到iOS设备中,这里我也是下载好了:

    http://pan.baidu.com/s/1sjJiZYt

    Android上的HTTPS抓包:

    1. 下载Charles证书http://www.charlesproxy.com/ssl.zip,解压后导入到手机中,然后设置->安全->凭据存储->从存储设备安装,选中证书。
    2. 在Charles的工具栏上点击设置按钮,选择Proxy Settings;切换到SSL选项卡,选中Enable SSL Proxying,选项卡的Locations表单可以填写要抓包的域名和端口,点击Add按钮,在弹出的表单中Host填写域名,比如填api.instagram.com,Port填443。默认的..表示应用于所有地址
     

    IOS设备上的安装截图如下:

        点击打开:    点击安装:

    再次点击安装,证书就安装成功了

    然后在Charles的工具栏上点击Proxy按钮,选择Proxy Settings…
    切换到SSL选项卡,选中Enable SSL Proxying,别急,选完先别关掉,还有下一步
    这一步跟Fiddler不同,Fiddler安装证书后就可以抓HTTPS网址的包了,Charles则麻烦一些,需要在上一步的SSL选项卡的Locations表单填写要抓包的域名和端口,点击Add按钮,在弹出的表单中Host填写域名,比如填api.instagram.com,Port填443

    这时候我们打开网易app:

    就可以看到数据了,至此抓包工作就搞定了。

    3.中文乱码问题解决

        在charles的content/info.plist 中 的vmoption 添加-Dfile.encoding=UTF-8

  • 相关阅读:
    python基础学习Day15 面向对象、类名称空间、对象名称空间 (2)
    python基础学习Day14 内置函数 匿名函数
    python基础学习Day12 生成器、列表推导式、字典的表达式、字典键值对的互换、集合推导式
    python基础学习Day11 函数名的应用、闭包、迭代器
    python基础学习Day10 函数形参的动态参数、*args **kwargs 命名空间 global 与 nonlocal
    python基础学习Day9 函数的初识,实参、形参、
    定时器定时循环执行和只执行一次
    CocoaPods 安装和使用
    tableView的cell之间间隔显示空白区域
    去掉tableView空白区域的分割线
  • 原文地址:https://www.cnblogs.com/melody-emma/p/5192372.html
Copyright © 2011-2022 走看看