mac下的抓包工具Charles

标签: 苹果相关 | 发表时间:2013-06-27 11:09 | 作者:gouki
出处:http://www.neatstudio.com/

 在mac下面,居然没有好的抓包工具,这让我十分纠结,毕竟不可能为了抓一个http包就跑到win下折腾。或许有人说tcpdump这么好的工具,你怎么不用。说实话,tcpdump太复杂了,我还没有细看,再加上不是所见所得,所以,用起来不是那么习惯

又有人说,wireshark怎么不用?好吧,其实我是有装wireshark,只是启动的时候会启动XQuartz,有点慢,当然这不是主要的,而是wireshark功能太强大了,以至于都不会写过滤器。

也有人说,图方便的话,完全可以用chrome自带的抓包工具啊?在没有找到这个工具之前,你可以尝试在地址栏输入:chrome://chrome-urls/,你会发现chrome原来有这么多的隐藏工具,嗯。我要说的就是其中的一个:chrome://net-internals/ ,在Events中,你可以进行过滤,不过,针对https的包,内容没法显示

越来越怀念windows下面,smartsniff完全就是wireshark的简化版,抓起包来刷刷的,过滤数据也很方便。

当然,mac下面的charles就真心不错了,试用了一下,果然对于https的包也能够抓取。

这里有一个简单的教程(实际操作略有出入):

在Mac下做开发,用Fiddler抓包由于离不开Windows比较痛苦,还好有Charles,到官网 http://www.charlesproxy.com/可下载到最新版本(若不支持rMBP可拖到 Retinizer中把文字变清晰)

HTTP抓包

  1. 打开Charles程序
  2. 查看Mac电脑的IP地址,如192.168.1.7
  3. 打开iOS设置,进入当前wifi连接,设置HTTP代理Group,将服务器填为上一步中获得的IP,即192.168.1.7,端口填8888
  4. iOS设备打开你要抓包的app进行网络操作
  5. Charles弹出确认框,点击Allow按钮即可

HTTPS抓包

  1. 下载Charles证书 http://www.charlesproxy.com/ssl.zip,解压后导入到iOS设备中(将crt文件作为邮件附件发给自己,再在iOS设备中点击附件即可安装;也可上传至dropbox之类的网盘,通过safari下载安装)
  2. 在Charles的工具栏上点击设置按钮,选择Proxy Settings…
  3. 切换到SSL选项卡,选中Enable SSL Proxying,别急,选完先别关掉,还有下一步
  4. 这一步跟Fiddler不同,Fiddler安装证书后就可以抓HTTPS网址的包了,Charles则麻烦一些,需要在上一步的SSL选项卡的Locations表单填写要抓包的域名和端口,点击Add按钮,在弹出的表单中Host填写域名,比如填api.instagram.com,Port填443

接下来就跟HTTP抓包一样了

---EOF---

上文中的一些操作,其实是有点出入的(HTTPS)抓包

1、如果没有设置ssl的话,那么你看到的ssl的接口中,会有一个报错:SSL Proxying not enabled for this host: enable in Proxy Settings, SSL locations,这个时候,在左侧的域名上点右键:enable ssl,就OK了。(其实就是上面的第4部,不过这个操作是简化操作,上面的第4步太麻烦了)
2、如果这样还是不能抓包,那么官方会有一个说明(http://www.charlesproxy.com/documentation/using-charles/ssl-certificates/):

MAC OS X

Download and unzip the  Charles CA Certificate bundle. The bundle contains the Charles CA Certificate file.

Run the Keychain Access utility from the Applications/Utilities folder. This tool enables you to manage your certificates.

Choose the "login" keychain then go to the File menu and choose Import. Choose the .crt file you downloaded above, and ensure that the login keychain is chosen in the dropdown menu.

Complete the import and the Charles CA SSL Certificate will now be trusted for your login account.

Move the Charles Proxy SSL Proxying certificate from your login keychain to the System keychain by drag-and-drop if you want all users on the machine to trust it.

You will need to quit and reopen Safari to see the change.

GOOGLE CHROME

On Mac OS X, please follow the instructions for Mac OS X above. These instructions only apply on Windows.

Open the Options dialog, go to the "Under the Hood" tab, then click the "Manage certificates" button.

Go to the Trusted Root Certification Authorities tab and click Import.

Find the charles-proxy-ssl-proxying-certificate.crt file. On Windows and Linux it is in the docs directory in your Charles installation directory. On Mac OS X (or if you can’t find it) you can download and unzip  ssl.zip.

Choose the charles-proxy-ssl-proxying-certificate.crt file, then click Next and Finish, leaving the default options, until you complete the import. Chrome will now always trust certificates signed by Charles.

After importing you can delete the charles-proxy-ssl-proxying-certificate.crt file if you downloaded it.

---如果用chrome,那就直接可以使用/如果firefox,会有插件提示你安装/如果是safari,则需要打开证书管理器,将刚才导入的证书把login改为system(这样所有用户就都能使用了,不过都是自己的电脑,无所谓了),safari可能需要重启下浏览器

经此,我终于可以抓包了。而且https包也不再只是一堆 乱码。黑黑

相关 [mac 工具 charles] 推荐:

mac下的抓包工具Charles

- - 膘叔
 在mac下面,居然没有好的抓包工具,这让我十分纠结,毕竟不可能为了抓一个http包就跑到win下折腾. 或许有人说tcpdump这么好的工具,你怎么不用. 说实话,tcpdump太复杂了,我还没有细看,再加上不是所见所得,所以,用起来不是那么习惯. 又有人说,wireshark怎么不用. 好吧,其实我是有装wireshark,只是启动的时候会启动XQuartz,有点慢,当然这不是主要的,而是wireshark功能太强大了,以至于都不会写过滤器.

四谈iOS抓包:Mac下好用的HTTP/HTTPS抓包工具Charles

- - 99css
在Mac下做开发,用Fiddler抓包由于离不开Windows比较痛苦,还好有Charles,到官网 http://www.charlesproxy.com/可下载到最新版本(若不支持rMBP可拖到 Retinizer中把文字变清晰). 查看Mac电脑的IP地址,如192.168.1.7. 打开iOS设置,进入当前wifi连接,设置HTTP代理Group,将服务器填为上一步中获得的IP,即192.168.1.7,端口填8888.

HTTP抓包工具之Charles

- - 标点符
Charles是一个HTTP代理服务器,当浏览器连接Charles的代理访问互联网时,Charles可以监控浏览器发送和接收的所有数据. 它允许一个开发者查看所有连接互联网的HTTP通信,这些包括request, response和HTTP headers (包含cookies与caching信息).

Mac 上的屏幕录像工具?QuickTime Player!

- kissingwolf - 果迷网
相信很多人都不知道 Mac 系统内置的 QuickTime Player 还有屏幕录像的功能,说真的笔者之前也不知道(火星了),今天正好在 MacStories 上看到了这篇文章,才发现这一功能的,而且在 Lion 下非常强大. 其实 QuickTime Player 在10.6时代就有屏幕录像功能,不过功能非常简单,用的人应该也不多,而且这个软件一直没有更新,从第10版发布以来就压根没升级过,不过在 Lion 系统中 QuickTime Player 终于更新到了10.1版,虽然从版本号来看改进似乎非常小,但增加了大量的新功能,比如支持更多的编解码器、全屏模式、仅导出音频等等.

RedSn0w 越狱工具 Mac 和 Windows 版本更新到 0.9.10b7

- - Engadget 中国版
度过一个周末差点让我们忘记 RedSn0w 已经更新了,这个更新为那些热衷于 iOS 设备越狱的人士又准备了一份礼物. 新的版本更新到 0.9.10b7 ,现在可以给 A5 设备使用 Corona 越狱;对于一些越狱新手来说,如果你不小心卸载了完美越狱,现在可以重新安装越狱. 还有一个重要的功能,是支持直接从 Cydia 读取你设备的 SHSH 文件,而在这之前这个文件有时候需要另外的软件进行读取和备份.

使用Charles对Https请求进行抓包

- - 标点符
昨天对某个APP做分析的时候发现其请求是Https的,抓包工具不能正常的显示请求的内容及返回的情况. 通过搜索发现 Charles是支持针对Https抓包的. 证书下载地址:https://www.charlesproxy.com/documentation/additional/legacy-ssl-proxying/.

Charles抓取微信小程序数据包(HTTP/HTTPS) - 简书

- -
项目前台为小程序,为快速定位错误,使用Charles进行抓包分析. 硬件环境:MAC + IPhone6P. Charles(MAC)破解版下载. 打开Charles -> Proxy -> Proxy Settings. 设置端口号为:8888,并勾选'Enable transparent Http proxying'项.

Mac技巧之隐藏 Lion 系统 Launchpad 不常用软件的免费工具:Launchpad Control

- 子奇 - 苹果fans-中文 Apple Blog
    Mac OS X Lion 系统的 Launchpad 功能对于软件多到 Dock 栏放不下的人非常有用,不用再 “Finder — 应用程序” 里面慢慢找了. 但 Launchpad 默认将本台 Mac 上所有软件都显示出来,夹杂不常用软件会让我们花费很多时间在翻页和在一堆软件图标里寻找上.

新的 Mac Mini

- delphij - Gea-Suan Lin's BLOG
為了螢幕的問題弄得相當疲倦 XD. 這幾天可以在一般的店家通路買到新的 Mac Mini,但沒事先做好功課,配上 Dell U2711 讓人碰了不少壁…. 買完 Mac Mini 後第一個想法是用 DVI & USB KVM 同時接 PC 與 Mac Mini,於是順便買 ATEN CS682,裝上去後發現只能支援到 1920×1080… 想想算了,其他地方也還用的到.

Mac迅雷正式上架Mac App Store

- Woooon - cnBeta.COM
今天在Mac App store中赫然发现Mac迅雷的身影. 摘录信息如下:Thunder For Mac 是基于Mac平台的下载软件,支持P2SP,BT和eMule下载协议;高速可靠的数据传输和简约的界面操作,让下载更轻松.