关于Burp、Fiddler、Charles抓包测试
一、测试目标
- URL :https://cms.publiccms.com/admin/login.html
- 账号:test
- 密码:test
- 目标:使用Burp、Fiddler、Charles完成该网站的抓包测试
二、工具分析
1、Burp Suite
- 版本:Burp Suite2021.6
- 功能:Proxy可以拦截HTTP/S的代理服务器,作为一个在浏览器和目标应用程序之间的中间人,允许你拦截,查看,修改在两个方向上的原始数据流。除此之外,还可进行跨站脚本(XSS)、SQL注入、扫描Web网站、渗透测试、移动端测试deng
- 原理:打开BurpSuite自带的brower浏览器,利用Proxy拦截网站的POST请求的接口及数据。
2、Fiddler
- 版本:Fiddler2020.10
- 功能:Fiddler是位于客户端和服务器端的HTTP代理(proxy),是目前最常用的http抓包工具之一 。
Fiddler能够记录客户端和服务器之间的所有 HTTP请求,可以针对特定的HTTP请求,分析请求数据、设置断点(breakpoint)、调试web应用、修改请求(request)的数据,甚至可以修改服务器返回的数据,功能非常强大,是web调试的利器。 - 原理:通过代理的方式获取程序http通讯的数据,可以用其检测网页和服务器的交互情况,能够记录所有客户端和服务器间的http请求,支持监视、设置断点、甚至修改输入输出数据
3、Charles
- 版本:Charles_V4.2.7
- 功能:是一个HTTP代理服务器,HTTP监视器,反转代理服务器,当浏览器连接Charles的代理访问互联网时,Charles可以监控浏览器发送和接收的所有数据。它允许一个开发者查看所有连接互联网的HTTP通信,这些包括request, response和HTTP headers (包含cookies与caching信息)。
- 原理:作为代理可以知道所有客户端发送到服务端的请求内容以及服务端返回给客户端的数据内容
三、操作流程
1、Burp Suite抓包实战:
第一步:打开burp,创建一个临时项目:
- 根据实际情况选择项目;
- 点击“下一步”;
- 点击“启动”;
第二步:点击代理>>打开浏览器
- 输入被测系统的网址;
- 将拦截关闭;
- 输入被测系统账号及密码;
- 将拦截开启后,点击登录;
- 注:登录之前,必须先开启拦截,这样才能抓到登录的包;
- 这是抓的登录;
- 注意看登录中是否包含账号及密码,如果包含,则抓包正确;
- 此密码被加密,实际测试中,可以写真实的密码;
- 右击>>选择Repeater重放器>>点击发送;
- 能查看响应数据;
第三步:再次打开代理>>将拦截关闭: - 拦截关闭后,之前点击的登录则再次生效,跳转至被首页;
- 再次点击拦截开启,随机选择一个场景抓包;
- 右击>>选择Repeater重放器>>点击发送;
- 能查看响应数据;
- 响应数据中包含“我的内容”中的页面,抓包成功;
2、Fiddler 抓包实战:
第一步:右击移除所有会话
第二步:打开浏览器>>输入被测系统网址:
- 找到带有传输箭头的标志;
- 这是抓的登录;
- 注意看右边web表单,登录中是否包含账号及密码,如果包含,则抓包正确;
第三步:再次右击移除所有会话>>打开浏览器>>点击该系统中“我的内容-搜索”;
- 找到带有传输箭头的标志;
- 这是抓的随意一个场景;
- web视图中包含“我的内容”中的页面,抓包成功;
3、Charles 抓包实战:
第一步:点击代理>>选择SSL代理>>添加被测系统网址;
- 注:https需要设置代理;http则无需代理;
第二步:打开浏览器>>输入被测系统网址;
- 显示红色按钮,则录制开始;
- 显示灰色按钮,则录制停止;
- 找到带有传输标志的箭头;
- 这是抓的登录,注意看右边内容,登录中是否包含账号及密码,如果包含,则抓包正确;
第三步:点击扫把标志清除所有数据>>再次打开浏览器>>点击该系统中“我的内容”;
- 找到带有传输箭头的标志;
- 这是抓的随意一个场景;
- 内容中包含“我的内容”中的页面,抓包成功;
总的来说,burp综合实力最强嘻嘻;Fiddler有些会限制代理,会导致https网址抓取失败,网站直接无法跳转,Charles则代理设置的相对不灵活。
- 分割线~~~