抓包工具chlers的使用
1,下载chlers破解版:https://zhubangbang.com/charles-crack-version-free-download-and-install-tutorial.html
2,启动 Charles 后,第一次 Charles 会询问你是否把Charles设置为系统的代理,如果此时你忽略了这个询问敞口,你可以在后期设置的;将 Charles 设置成系统代理:选择菜单中的 “Proxy” -> “Mac OS X Proxy/windows proxy” 来将 Charles 设置成系统代理,参考如下,如果Mac下有管理密码,需要输入密码后方可进行;
3,将charles设置为chrome的代理
需要注意的是,Chrome 和 Firefox 浏览器并不一定使用的就是本机,可能是一些代理工具,而 Charles 是通过将自己设置成代理服务器来完成资源记录的,所以如果你的charles无法截取 Chrome 和 Firefox 浏览器的网络请求内容,需要在浏览器里做下修改。在 Chrome 中设置成使用系统的代理服务器设置即可,或者直接将代理服务器设置成 127.0.0.1:8888 也可达到相同效果。
备注:如果您的chrome有用过改HOST的扩展工具(比如你用了 Host Switch Plus 这个扩展工具),请暂时关闭;否则chrome会通过你的扩展控制,不能使用charles;你的chrome中可能会看到**您的网络代理设置是由扩展程序管理的。** 这种的提示;如果你有修改HOST或者用host进行FQ的需求,我更加推荐你使用 SwitchHosts 这个工具;
4,charles 主界面的介绍
Charles 主要提供两种查看封包的视图,分别名为 “Structure” 和 “Sequence”。
– Structure/结构视图,将网络请求按访问的域名分类,比如某个域名下有n个资源请求,那么所有此域名下的请求都会在这里做一个详细的分类;
– Sequence/序列视图,将网络请求按访问的时间排序,按照你的电脑的发送请求顺序进行。
可以根据具体的需要在这两种视图之前来回切换。
5,当使用”序列视图”的时候
请求多了有些时候会看不过来,Charles 提供了一个简单的 Filter 功能,可以输入关键字来快速筛选出 URL 中带指定关键字的网络请求。
对于需要抓取的某个请求,通常情况下,我们需要对网络请求进行过滤,只监控向指定目录服务器上发送的请求。对于这种需求,以下几种办法:
方法一:直接过滤域名;
在主界面的中部的 Filter 栏中填入需要过滤出来的关键字。例如我查看的域名地址是:https://zhubangbang.com , 那么只需要在 Filter 栏中填入 zhubangbang.com或bang,即可过滤含有这些关键字信息的请求(只要host和path中含有即可)。
方法二:修改Include的域名和端口
在 Charles 的菜单栏选择 “Proxy”->”Recording Settings”,然后选择 Include 栏,选择添加一个项目,然后填入需要监控的协议,主机地址,端口号。这样就可以只截取目标网站的封包了;
通常情况下,我们使用方法一做封包过滤,方法二做一些唯一的域名抓包,正常情况下,不推荐这种设置方法;
因为这种方法,你的charles只能抓你配置的域名;如果某天早晨,你的charles一切正常,访问也正常,而且在active commections里也看到了某个域名的请求信息,但是在主界面死活看到获取到的信息,不用着急,非常有可能是因为你设置了include的指定域名;而且是设置后你忘记解除了,导致你一脸懵逼;这种方法非常不推荐,太粗暴了,除非你这半个月都只看某个HOST下的信息,否则千万千万别这么搞,很容易在以后使用时候的忘记解除;
如果你只是为了更清楚的查看某个域名下的请求和响应信息,推荐使用结构视图模式下的焦点域名设置;那种模式比这种方法更好,下面是过滤焦点域名后在序列模式下的调用方法;
方法三:过滤焦点域名
在目标的网络请求上右键,选中focus(此时,该域名已经被设置为一个焦点标记了;);然后点击fillter后面的focused来筛选你的做的focus标记文件;
你设置的焦点域名在”focused Hosts”里面可以查看和管理
结构视图,这种模式下的展现更加人性化;
当你设置某个域名为焦点域名的时候,会把当前域名单独显示在上面,
而其它的非焦点域名,都会在other Hosts里显示;
捕获的信息,界面展示的信息如下,
contents是最常用的一个标签,其中上半部分是请求,下半部分是响应;
请求部分中,会根据请求的内容,而分为很多项;比如如果是表单提交,还会有form的选项供你查看提交的内容(表格图形化的方式),最后一项”Raw”是未经处理的请求信息,可以理解为,raw左侧的所有项目都是对raw信息的拆分和美化,以便直观查看;当然响应区域的raw和其它项目的关系也是一样,响应部分的Raw是接收到的全部未处理信息;如果响应内容是 JSON 格式的,那么 Charles 可以自动帮你将 JSON 内容格式化,方便你查看。如果响应内容是图片,那么 Charles 可以显示出图片的预览。
6,Charles菜单介绍
一、file(文件菜单)
这个实在没有必要新建一篇文章介绍,需要注意的是;
“导入””导出”这个功能在和别人沟通的时候很常用,比如你向第三方工具/类库开发人员求助某个功能,或者有BUG怎么避开;
他们一般会让你提供抓包到时候收到的文件,或者应用场景之类的;
你可以导出你捕捉到的信息,发送给别人(类似PS里的PSD源文件),
别人收到后,在charles里打开就可以看到同样的抓包信息了,方便远程分析和交流;
二、edit(编辑菜单)
charles中Edit菜单的介绍;
我的是4.1.2版本,mac系统下的菜单大同小异;
这里用的一般也就查找和偏好设置;
查找设置
界面如上图,也没啥好说的;
偏好设置
视图选项
启动设置
警告设置
三、view(视图菜单)
Charles的视图菜单里的东西其实是非常常用的功能;
但是我们一般是不需要从这里点进来的;
里面,无非是查看的视图结构(按照域名和按照访问时间)
然后是一些概览之类的;如下图
在下面是把charles的请求和响应以什么方式来展现的;
Focus Host是焦点域名的;这里配置好的可以在结构视图中,单独拎出来显示;
如下图,在把zhubangbang.com设为焦点域名,在视图中是下图这么展示的;
在序列视图的时候,是按照下面这么展示的;
选择focued后,就会只保留你的焦点域名;