一、实验目的
使用burpsuite软件实现重放攻击。
二、实验准备
1.笔记本电脑一台,安装vmware虚拟机和windows XP系统,下载安装burpsuite professional v1.6。
2.实验参考了几篇csdn博客和i春秋网站burpsuite视频教程(https://www.ichunqiu.com/course/51241)。
三、软件原理
Burpsuite是Web应用程序测试的最佳工具之一,其多种功能可以帮我们执行各种任务:请求的拦截和修改,扫描web应用程序漏洞,以暴力破解登陆表单,执行会话令牌等多种的随机性检查。
1.软件功能
proxy—Burpsuite带有一个代理,通过默认端口8080上运行,使用这个代理,我们可以截获并修改从客户端到web应用程序的数据包。
Spider–Burpsuite的蜘蛛功能是用来抓取Web应用程序的链接和内容等,它会自动提交登陆表单(通过用户自定义输入)的情况下。Burpsuite的蜘蛛可以爬行扫描出网站上所有的链接,通过对这些链接的详细扫描来发现Web应用程序的漏洞 。
Scanner–它是用来扫描Web应用程序漏洞的,在测试的过程中可能会出现一些误报,因为自动扫描器扫描的结果不可能完全100%准确。
Intruder–此功能可用于多种用途,如利用漏洞,Web应用程序模糊测试,进行暴力破解等。
Repeater–此功能用于根据不同的情况修改和重放相同的请求次数并进行分析。
Sequencer–此功能主要用来检查Web应用程序提供的会话令牌的随机性,并执行各种测试。
Decoder–此功能可用于解码数据找回原来的数据形式,或者进行编码和加密数据。
Comparer–此功能用来执行任意的两个请求,响应或任何其它形式的数据之间的比较。
2.工作流程
图片来源于一篇博客,我认为比较系统地描述了burpsuite软件的测试流程。
四、实验内容
(一)登陆信息重放
1.设置浏览器的代理服务器和端口为127.0.0.1:8080,注意保持一致。
proxy(代理)—opitions,其中running要勾选才可以监听。
浏览器—工具—internet选项—局域网设置—代理服务器(设置代理就是把浏览器发的数据包通过burpsuite,被burpsuite拦截)
2.打开飞牛网,进行用户名、密码登陆(这里抹掉了用户名)。
这时burpsuite已经成功拦截到登录信息。
3.把不需要的请求“forward”掉,然后筛选请求地址。
发现成功捕获到了登录数据,用户名(抹掉)和明文的密码。
4.右键选择send to repeater。
点击按钮“go”,在右侧的“response”可以看到页面的回应数据,右键点击“send to comparer”。
对左侧“request”数据进行部分更改,如用户名的手机号码删减几位数,点击按钮“go”,再次观察回应数据,右键点击“send to comparer”。
5.在comparer中进行两次回应的比较。
(二)篡改、转发请求测试
代理服务器和burpsuite的配置与(一)类似。
1.在淘宝中搜索nike,观察正常的搜索结果。
2.在burpsuite中点击proxy(代理)—opitions,其中running要勾选才可以监听。
3.在淘宝中再次搜索nike,发现burpsuite中已经截获到数据包。
4.把不需要的请求“forward”掉,然后筛选请求地址。
最后筛选出了一个请求地址。
将其中的搜索关键字由“nike”改为“vans”,并发回服务器,观察结果。
结果是页面中的搜索项和搜索结果都变成了“vans”。
利用同样的原理进行操作,可以使登录页面的请求结果变成“用户名/密码错误”。
五、实验小结
1.burpsuite是一个是用于攻击web 应用程序的集成平台。它包含了许多工具,并为这些工具设计了许多接口,以促进加快攻击应用程序的过程。本次试验主要用了proxy、repeater、comparer三个模块,对其他模块的功能还没有实践方面的了解,今后针对这些方面进行更加深入学习。
2.实验涉及到“浏览器代理”,在这里进行简要解释:
提供代理服务的电脑系统或其它类型的网络终端称为代理服务器(英文:Proxy Server)。一个完整的代理请求过程为:客户端首先与代理服务器创建连接,接着根据代理服务器所使用的代理协议,请求对目标服务器创建连接、或者获得目标服务器的指定资源。而所谓的浏览器代理就是给浏览器指定一个代理服务器,浏览器的所有请求都会经过这个代理服务器。不同浏览器的设置方式类似。
设置好后可以通过分析/修改代理服务器的流量从而修改用户与服务器之间的请求响应,通过修改请求/响应达到我们需要的目的。例如:前端上传绕过,抓取表单数据等。