Burpsuite简介及MIME上传绕过实例

目录

预备知识

1.了解burpsuite

Burp Suite是用于攻击web应用程序的集成平台。包含了许多工具,并为这些工具设计了许多接口,以促进加快攻击应用程序的过程。所有的工具都共享一个能处理并显示HTTP消息,持久性,认证,代理,日志,警报的可扩展的框架。
在一个工具处理HTTP请求和响应时,它可以选择调用其他任意的Burp工具。例如,代理记录的请求可被Intruder用来构造一个自定义的自动攻击的准则,也可被Repeater用来手动攻击,也可被Scanner用来分析漏洞,或者被Spider(网络爬虫)用来自动搜索内容。
Burpsuite主要有如下模块/功能:
1.Target,显示目标站点目录结构。
2.Proxy,是一个拦截HTTP/S的代理服务器,作为一个在浏览器和目标应用程序之间的中间人,允许你拦截,查看,修改在两个方向上的原始数据流。
3.Spider,是一个应用智能感应的网络爬虫,它能完整的枚举应用程序的内容和功能。
4.Scanner,是一个高级工具,执行后,它能自动地发现web应用程序的安全漏洞。
5.Intruder,是一个定制的高度可配置的工具,对web应用程序进行自动化攻击,如:枚举标识符,收集有用的数据,以及使用fuzzing技术探测常规漏洞。
6.Repeater,是一个靠手动操作来触发单独的HTTP请求,并分析应用程序响应的工具。
7.Sequencer,是一个用来分析那些不可预知的应用程序会话令牌和重要数据项的随机性的工具。
8.Decoder,是一个进行手动执行或对应用程序数据者智能解码编码的工具。
9.Comparer,通常是通过一些相关的请求和响应得到两项数据的一个可视化的“差异”。
10.Extender,可以让你加载Burp Suite的扩展,使用你自己的或第三方代码来扩展Burp Suit的功能。
11.Options,对Burp Suite的一些设置。

2.了解服务端MIME类型检测

服务端MIME检测类型图片上传过程中http包的Content-Type是否为image/jpeg,如果是就可以成功上传。相关源代码:
Burpsuite简介及MIME上传绕过实例
可以看到红色区域中的if语句只对Content-Type和图片的大小做了判断。

实验目的

通过本实验了解利用Burpsuite绕过MIME上传检测的过程。

实验环境

Burpsuite简介及MIME上传绕过实例
服务器:win2003,IP地址:10.1.1.59:81
测试者:win10,IP地址随机

实验步骤一

使用Burpsuite的代理功能

访问http://10.1.1.59:81,输入用户名:admin,密码:password,打开burpsuite,设置好浏览器代理,点击sql injection:
Burpsuite简介及MIME上传绕过实例
截获的数据包如下:
Burpsuite简介及MIME上传绕过实例
单击右键,如下图所示:
Burpsuite简介及MIME上传绕过实例
Send to XXX分别表示将截获的数据发送到各个模块,然后在各个模块下进行下一步操作。
下拉菜单点击Send to Spider切换到Spider模块下,burpsuite会自动对网站进行爬行,切换到Control选项卡下可以查看爬行的状态和设置爬行范围,Options选项卡中可以进行爬行的设置等。一段时间后切换到Target模块查看结果。
Burpsuite简介及MIME上传绕过实例
Change request method表示更改请求方式,如之前使用的GET请求,点击Change request method后为变为POST:
Burpsuite简介及MIME上传绕过实例
Burpsuite简介及MIME上传绕过实例
Don’t intercept requests表示不截获请求,比如我们选择To this host,在Intercept is on时burp也不对此主机的请求做拦截。我们就可以正常访问该网页了。
Burpsuite简介及MIME上传绕过实例
然后切换到Proxy的Options选项卡下,查看Intercept Client Requests,已经增加了一条记录:
Burpsuite简介及MIME上传绕过实例
Do intercept下Response to this request功能可用于对服务端发送过来的信息做修改来欺骗浏览器。
如果开启URL-encode as you type表示对你输入的&,=等字符将会被URL编码替换。

Target模块

这个模块下有两个选项卡,Site map主要是将爬行的站点以树形结构显示,Scope主要是用来设置范围进行过滤。
有时当我们对一个目标网址进行测试时,Site map下会出现许多不相关的网址,我们可以使用Filter来过滤,只留下目标网址:
Burpsuite简介及MIME上传绕过实例
点击Filter,勾选Show only in-scope items:
Burpsuite简介及MIME上传绕过实例
此时Site map下只剩下目标网址了:
Burpsuite简介及MIME上传绕过实例
然后我们随便点击一个目录又会出现许多功能:
Burpsuite简介及MIME上传绕过实例
点击Remove from scope,比如我此时选择css,该目录就会消失,对应的Scope选项卡下便会多出一条记录:
Burpsuite简介及MIME上传绕过实例
点击Spider this branch,burp就会对该目录进行爬行。
点击Expand branch来展开分支,其他功能不是很常用,有兴趣的小伙伴可以自行研究哦。
Site map选项卡右边可以看到一些请求的信息,在Host下可以选择对链接进行高亮显示,comment下可以添加注释,针对单个链接也可进行右键操作。
Burpsuite简介及MIME上传绕过实例

实验步骤二

使用burpsuite上传绕过服务端MIME类型检测

1.首先在桌面上新建一个1.txt,此处我写入“hello_world”。因为目标主机只允许我们上传jpg文件,那么我们下载就要绕过这个限制,上传一个txt文件上去。
Burpsuite简介及MIME上传绕过实例
2.打开http://10.1.1.59:81,输入用户名:admin,密码:password,点击Upload:
Burpsuite简介及MIME上传绕过实例
3.设置好浏览器代理后,我们选择我们刚才创建的txt文件进行上传。此时burpsuite已经截获到了数据包,我们右击选择“send to reprater”:
Burpsuite简介及MIME上传绕过实例
4.切换到Repeater中将Content-Type后的text/plain修改为image/jpeg:
Burpsuite简介及MIME上传绕过实例
5.点击go,从右侧可以看到已经上传成功,在右下方输入1.txt进行搜索刚才上传的图片。
Burpsuite简介及MIME上传绕过实例
6.关闭代理,打开搜索到的路径:
Burpsuite简介及MIME上传绕过实例

上一篇:burpsuite intruder 小技巧之自动匹配返回值中的特征


下一篇:web安全day42:使用BurpSuite理解Web工作机制