burp intruder模块详解
0×01 介绍
安装要求:
Java 的V1.5 + 安装( 推荐使用最新的JRE ), 可从这里免费
http://java.sun.com/j2se/downloads.html
Burp Suite 下载地址: http://portswigger.net/burp/download.html
入门:
安装完成后可以双击可执行的JAR 文件,如果不工作,你可以运行在命令提示符或终端输入。
命令: Java –jar burpsuite_v1.4.jar
Burp
Burp Suite 包含了一系列burp 工具,这些工具之间有大量接口可以互相通信,之所以这样设计的目的是为了促进和提高 整个攻击的效率。平台中所有工具共享同一robust 框架,以便统一处理HTTP 请求,持久性,认证,上游代理,日志记录,报警和可扩展性。Burp Suite允许攻击者结合手工和自动技术去枚举、分析、攻击Web 应用程序。这些不同的burp 工具通过协同工作,有效的分享信息,支持以某种工具中的信 息为基础供另一种工具使用的方式发起攻击
Proxy 提供一个直观、友好的用户界面,他的代理服务器包含非常详细的拦截规则,并能准确分析HTTP 消息的结构与内容。
Spide 爬行蜘蛛工具,可以用来抓取目标网站,以显示网站的内容,基本结构,和其他功能。
Scanner Web 应用程序的安全漏洞进行自动发现工具。它被设计用于渗透测试,并密切与您现有的技术和方法,以适应执行手动和半自动化的Web 应用程序渗透测试。
Repeater 可让您手动重新发送单个HTTP 请求
Intruder 是burp 套件的优势,他提供一组特别有用的功能。它可以自动实施各种定制攻击,包括资源枚举、数据提取、模糊测试等常见漏洞等。在各种有效的扫描工具中,它能够以最细化、最简单的方式访问它生产的请求与响应,允许组合利用个人智能与该工具的控制优点。
Sequencer 对会话令牌,会话标识符或其他出于安全原因需要随机产生的键值的可预测性进行分析。
Decoder 转化成规范的形式编码数据,或转化成各种形式编码和散列的原始数据。它能够智能识别多种编码格式,使用启发式技术。
Comparer 是一个简单的工具,执行比较数据之间的任何两个项目(一个可视化的“差异”)。在攻击一个Web 应用程序的情况下,这一要求通常会出现当你想快速识别两个应用程序的响应之间的差异(例如,入侵者攻击的过程中收到的两种反应之间之间,或登录失败的反应使用有效的和无效的用户名)之间,或两个应用程序请求(例如,确定不同的行为引起不同的请求参数)。
0×02 配置
打开Burp 套件,配置监听端口(点击图片可放大)
一旦代理端口选择和服务在burp 套件开始,我们需要配置我们的浏览器。在大多数浏览器,你只需打开设置-网络-代理,然后告诉它使用“localhost”和端口“8080”(或任何您正在运行的端口,默认Burp: 8080)。然后保存更新的设置.
现在我们可以再浏览器中输入我们要检查的网站。你会看到burp 套件工具,proxy 选项卡上会亮起红色,表示它需要你的输入。默认行为是拦截设置为ON,这意味着它捕获的所有发送请求,然后要求用户输入,以决定是否数据包将被转发或丢弃。你可以转发,并观看页面载入目标网站。如果你嫌麻烦那你可以INTECEPTOR Off,只是手动抓取的网站,将捕获的数据发送到“历史记录”选项卡,你可以手动检查审查和测试。
关掉拦截你在历史记录里面会看到所有提交过的数据,在这里你可以看到所有request 和response 的数据。现在,我们可以右键进行其他的测试。
0×03 intruder 定制攻击自动化
今天我将利用DVWA 的SQL 注入进行测试。你可以看到下面的图片,SQL 注入很简单,我们
测试:
我们需要捕捉用户ID 请求,点击提交按钮,抓取数据包后,用有效载荷测试用户输入的ID值。
要做到这一点,我们必须确保,Burp 拦截我们的要求:
将提交用户ID 的请求,并发送到intruder 你可以看到下面:
工具已经自动为我们创造了有效载荷测试的位置。有效载荷的位置使用§符号作为每个有针对性的攻击位置的起始和结束标记。你想测试的位置前后用§§符号进行标示。
然后设置攻击类型,有4 种模式供大家选择。具体这四种模式的区别大家可以参考burp 的官方帮助文档。
Sniper 这种攻击模式可以让我们选择的攻击位置注入一个单一的有效载荷。这需要的有效载荷选项,将它们插入到选定的位置,然后重复,直到它已测试所有的有效载荷选项。如果选择多个位置,它会只适用于测试,一次一个位置。我会告诉你如何使用这个测试在几秒钟之内的SQL 漏洞的迹象
Pitchfork 这种攻击模式允许你测试多种有效载荷,最大能够自定义8 个,基于攻击位置。这种攻击模式设置不同的有效载荷为每个位置逐一同时测试。
Cluster bomb 这种攻击模式使用多种有效载荷,并允许你测试每一个可能有效载荷在每个选择的攻击位置,这意味着接下来的测试,交换任何其他有效载荷。当你有不同需要注射的地方,它将会非常的方便。
今天我选用的是sniper 模式进行测试,我会告诉你如何使用这个测试SQL 漏洞。虽然Burp自带了测试语句但是我还是希望自己手动去整理语句,下面是我自己整理的一些SQL 注入测试的语句:
'
"
/
/*
#
)
(
)'
('
and 1=1
and 1=2
and 1>2
and 12
+and+12
/**/and/**/1
我们来配置攻击测试。如图
由于我个人已经整理好txt 所以我直接载入我的语句
确定后,我们来到选项标签下面的grep—match 设置测试结果匹配选项。大家可以用默认的选项,也可以载入自己收集的错误信息。
设置完成后,我们就可以运行测试,点击主菜单上的intruder— start sttack
现在,这将打开一个新的窗口,在这里我们可以看到自动测试的结果
你可以清楚地看到,返回页面大小差异。后面对勾的地方,表示发现grep-match 中我们提供的文本。如果你点击一个请求,你可以查看到我们实际发送的请求,以及响应,因此,我们现在可以清楚地看到错误信息。
现在我们已经确定找到了一个潜在SQL INJECTION 漏洞。这是好的开端,但现在怎么办?现在,我们回去给入侵者设置和工作,改变我们的设置,以进一步测试和利用。现在让我们看看如果我们可以设置入侵者测试ORDER BY 来确定快速列数。使用了同样的要求,我们将现在的位置插入语句。
ORDER BY 1—
ORDER BY 2—
+ORDER+BY+1—
+ORDER+BY+2—
/**/ORDER/**/BY/**/1—
/**/ORDER/**/BY/**/2—
现在我们已经找到列数为2!您可以使用响应请求长度的线索来判断。现在我们将这个请求发送到Repeater,现在我们将使用Repeater 找到脆弱列。
好了 现在我们知道脆弱的列,我们现在可以把这个请求转入到intruder 中去进行下一步的信息刺探和测试,我们插入自己整理好的一些数据库信息进行自动化测试。
basic.txt:
Version()
User()
Database()
@@hostname
@@basedir
@@datadir
这里我们不用设置grep 了 至于为什么大家自己想把。。。
接下来我们可以用intruder 的另一种攻击模式来检查我们其他可以利用的数据库
现在我们有基本信息,库,我们可以继续下去,重新配置intruder,从而获得所有的表名。但要记得库名要做十六进制转换,编码可以用burp 自带的decoder。
重新配置intruder—获取列名
现在就可以直接用repeater 直接发送请求获取数据了
文章在此就告一段落了。这次讲解burp-intruder 只是抛砖引玉,更多强大功能欢迎大家和我探讨。 如果有朋友愿意共享1.4.0.5 专业版,麻烦递我个。Thanks
小编:Burp Suite是一个Web应用程序集成攻击平台,它包含了一系列burp工具,这些工具之间有大量接口可以互相通信,这样设计的目的是为了促进和提高整个攻击的效率。平台中所有工具共享同一robust框架,以便统一处理HTTP请求,持久性,认证,上游代理,日志记录,报警和可扩展性。
Burp Suite允许攻击者结合手工和自动技术去枚举、分析、攻击Web应用程序。这些不同的burp工具通过协同工作,有效的分享信息,支持以某种工具中的信息为基础供另一种工具使用的方式发起攻击。
今天freebuf会员小冰为大家带来这篇Burp Suite使用详细教程,文章条理清楚,各个细节都提到了,实为Burp Suite使用指南的一篇佳作!
0×00 题外话
最近迷上了burp suite 这个安全工具,百度了关于这个工具的教程还卖900rmb。。。ohno。本来准备买滴,但是大牛太高傲了,所以没买了。所以就有了今天这个文章。感谢帮助我的几个朋友:Mickey、安天的Sunge。
0×01 介绍
安装要求:
Java 的V1.5 + 安装( 推荐使用最新的JRE ), 可从这里免费
http://java.sun.com/j2se/downloads.html
Burp Suite 下载地址: http://portswigger.net/burp/download.html
入门:
安装完成后可以双击可执行的JAR 文件,如果不工作,你可以运行在命令提示符或终端输入。
命令: Java –jar burpsuite_v1.4.jar
Burp
Burp Suite 包含了一系列burp 工具,这些工具之间有大量接口可以互相通信,之所以这样设计的目的是为了促进和提高 整个攻击的效率。平台中所有工具共享同一robust 框架,以便统一处理HTTP 请求,持久性,认证,上游代理,日志记录,报警和可扩展性。Burp Suite允许攻击者结合手工和自动技术去枚举、分析、攻击Web 应用程序。这些不同的burp 工具通过协同工作,有效的分享信息,支持以某种工具中的信 息为基础供另一种工具使用的方式发起攻击
Proxy 提供一个直观、友好的用户界面,他的代理服务器包含非常详细的拦截规则,并能准确分析HTTP 消息的结构与内容。
Spide 爬行蜘蛛工具,可以用来抓取目标网站,以显示网站的内容,基本结构,和其他功能。
Scanner Web 应用程序的安全漏洞进行自动发现工具。它被设计用于渗透测试,并密切与您现有的技术和方法,以适应执行手动和半自动化的Web 应用程序渗透测试。
Repeater 可让您手动重新发送单个HTTP 请求
Intruder 是burp 套件的优势,他提供一组特别有用的功能。它可以自动实施各种定制攻击,包括资源枚举、数据提取、模糊测试等常见漏洞等。在各种有效的扫描工具中,它能够以最细化、最简单的方式访问它生产的请求与响应,允许组合利用个人智能与该工具的控制优点。
Sequencer 对会话令牌,会话标识符或其他出于安全原因需要随机产生的键值的可预测性进行分析。
Decoder 转化成规范的形式编码数据,或转化成各种形式编码和散列的原始数据。它能够智能识别多种编码格式,使用启发式技术。
Comparer 是一个简单的工具,执行比较数据之间的任何两个项目(一个可视化的“差异”)。在攻击一个Web 应用程序的情况下,这一要求通常会出现当你想快速识别两个应用程序的响应之间的差异(例如,入侵者攻击的过程中收到的两种反应之间之间,或登录失败的反应使用有效的和无效的用户名)之间,或两个应用程序请求(例如,确定不同的行为引起不同的请求参数)。
0×02 配置
打开Burp 套件,配置监听端口(点击图片可放大)
一旦代理端口选择和服务在burp 套件开始,我们需要配置我们的浏览器。在大多数浏览器,你只需打开设置-网络-代理,然后告诉它使用“localhost”和端口“8080”(或任何您正在运行的端口,默认Burp: 8080)。然后保存更新的设置.
现在我们可以再浏览器中输入我们要检查的网站。你会看到burp 套件工具,proxy 选项卡上会亮起红色,表示它需要你的输入。默认行为是拦截设置为ON,这意味着它捕获的所有发送请求,然后要求用户输入,以决定是否数据包将被转发或丢弃。你可以转发,并观看页面载入目标网站。如果你嫌麻烦那你可以INTECEPTOR Off,只是手动抓取的网站,将捕获的数据发送到“历史记录”选项卡,你可以手动检查审查和测试。
关掉拦截你在历史记录里面会看到所有提交过的数据,在这里你可以看到所有request 和response 的数据。现在,我们可以右键进行其他的测试。
0×03 intruder 定制攻击自动化
今天我将利用DVWA 的SQL 注入进行测试。你可以看到下面的图片,SQL 注入很简单,我们
测试:
我们需要捕捉用户ID 请求,点击提交按钮,抓取数据包后,用有效载荷测试用户输入的ID值。
要做到这一点,我们必须确保,Burp 拦截我们的要求:
将提交用户ID 的请求,并发送到intruder 你可以看到下面:
工具已经自动为我们创造了有效载荷测试的位置。有效载荷的位置使用§符号作为每个有针对性的攻击位置的起始和结束标记。你想测试的位置前后用§§符号进行标示。
然后设置攻击类型,有4 种模式供大家选择。具体这四种模式的区别大家可以参考burp 的官方帮助文档。
Sniper 这种攻击模式可以让我们选择的攻击位置注入一个单一的有效载荷。这需要的有效载荷选项,将它们插入到选定的位置,然后重复,直到它已测试所有的有效载荷选项。如果选择多个位置,它会只适用于测试,一次一个位置。我会告诉你如何使用这个测试在几秒钟之内的SQL 漏洞的迹象
Pitchfork 这种攻击模式允许你测试多种有效载荷,最大能够自定义8 个,基于攻击位置。这种攻击模式设置不同的有效载荷为每个位置逐一同时测试。
Cluster bomb 这种攻击模式使用多种有效载荷,并允许你测试每一个可能有效载荷在每个选择的攻击位置,这意味着接下来的测试,交换任何其他有效载荷。当你有不同需要注射的地方,它将会非常的方便。
今天我选用的是sniper 模式进行测试,我会告诉你如何使用这个测试SQL 漏洞。虽然Burp自带了测试语句但是我还是希望自己手动去整理语句,下面是我自己整理的一些SQL 注入测试的语句:
'
"
/
/*
#
)
(
)'
('
and 1=1
and 1=2
and 1>2
and 12
+and+12
/**/and/**/1
我们来配置攻击测试。如图
由于我个人已经整理好txt 所以我直接载入我的语句
确定后,我们来到选项标签下面的grep—match 设置测试结果匹配选项。大家可以用默认的选项,也可以载入自己收集的错误信息。
设置完成后,我们就可以运行测试,点击主菜单上的intruder— start sttack
现在,这将打开一个新的窗口,在这里我们可以看到自动测试的结果
你可以清楚地看到,返回页面大小差异。后面对勾的地方,表示发现grep-match 中我们提供的文本。如果你点击一个请求,你可以查看到我们实际发送的请求,以及响应,因此,我们现在可以清楚地看到错误信息。
现在我们已经确定找到了一个潜在SQL INJECTION 漏洞。这是好的开端,但现在怎么办?现在,我们回去给入侵者设置和工作,改变我们的设置,以进一步测试和利用。现在让我们看看如果我们可以设置入侵者测试ORDER BY 来确定快速列数。使用了同样的要求,我们将现在的位置插入语句。
ORDER BY 1—
ORDER BY 2—
+ORDER+BY+1—
+ORDER+BY+2—
/**/ORDER/**/BY/**/1—
/**/ORDER/**/BY/**/2—
现在我们已经找到列数为2!您可以使用响应请求长度的线索来判断。现在我们将这个请求发送到Repeater,现在我们将使用Repeater 找到脆弱列。
好了 现在我们知道脆弱的列,我们现在可以把这个请求转入到intruder 中去进行下一步的信息刺探和测试,我们插入自己整理好的一些数据库信息进行自动化测试。
basic.txt:
Version()
User()
Database()
@@hostname
@@basedir
@@datadir
这里我们不用设置grep 了 至于为什么大家自己想把。。。
接下来我们可以用intruder 的另一种攻击模式来检查我们其他可以利用的数据库
现在我们有基本信息,库,我们可以继续下去,重新配置intruder,从而获得所有的表名。但要记得库名要做十六进制转换,编码可以用burp 自带的decoder。
重新配置intruder—获取列名
现在就可以直接用repeater 直接发送请求获取数据了
文章在此就告一段落了。这次讲解burp-intruder 只是抛砖引玉,更多强大功能欢迎大家和我探讨。 如果有朋友愿意共享1.4.0.5 专业版,麻烦递我个。Thanks
burp intruder模块详解的更多相关文章
- Burpsuite模块—-Intruder模块详解
一.简介 Burp Intruder是一个强大的工具,用于自动对Web应用程序自定义的攻击,Burp Intruder 是高度可配置的,并被用来在广范围内进行自动化攻击.你可以使用 Burp Intr ...
- Burp Suite安装及详细使用教程-Intruder模块详解
01 介绍 安装要求: Java 的V1.5 + 安装( 推荐使用最新的JRE ), 可从这里免费 http://java.sun.com/j2se/downloads.html Burp Suite ...
- Burp Suite使用详解一
本文由阿德马翻译自国外网站,请尊重劳动成果,转载注明出处 Burp Suite是Web应用程序测试的最佳工具之一,其多种功能可以帮我们执行各种任务.请求的拦截和修改,扫描web应用程序漏洞,以暴力破解 ...
- Python中操作mysql的pymysql模块详解
Python中操作mysql的pymysql模块详解 前言 pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同.但目前pymysql支持python3.x而后者不支持 ...
- python之OS模块详解
python之OS模块详解 ^_^,步入第二个模块世界----->OS 常见函数列表 os.sep:取代操作系统特定的路径分隔符 os.name:指示你正在使用的工作平台.比如对于Windows ...
- python之sys模块详解
python之sys模块详解 sys模块功能多,我们这里介绍一些比较实用的功能,相信你会喜欢的,和我一起走进python的模块吧! sys模块的常见函数列表 sys.argv: 实现从程序外部向程序传 ...
- python中threading模块详解(一)
python中threading模块详解(一) 来源 http://blog.chinaunix.net/uid-27571599-id-3484048.html threading提供了一个比thr ...
- python time 模块详解
Python中time模块详解 发表于2011年5月5日 12:58 a.m. 位于分类我爱Python 在平常的代码中,我们常常需要与时间打交道.在Python中,与时间处理有关的模块就包括: ...
- python time模块详解
python time模块详解 转自:http://blog.csdn.net/kiki113/article/details/4033017 python 的内嵌time模板翻译及说明 一.简介 ...
随机推荐
- Markers
immune pdf(file = paste0(outdir,"T_B_NK_feature.pdf")) VlnPlot(expr_1_4,features = c(" ...
- sh_07_火车站安检
sh_07_火车站安检 # 定义布尔型变量 has_ticket 表示是否有车票 has_ticket = True # 定义整型变量 knife_length 表示刀的长度,单位:厘米 knife_ ...
- 【CF1252L】Road Construction(基环树,最大流)
题意:给定一张n点n边无重边自环的无向图,刚开始每条边都没有被选择,每条边上有一个颜色集合,必须从中选择一种 有K个工人,每个工人有颜色a[i],需要把工人分配到与其颜色相同的边上 问是否能有一种使得 ...
- ZooKeeper 原生API操作
zookeeper客户端和服务器会话的建立是一个异步的过程,也就是说在程序中,程序方法在处理完客户端初始化后立即返回(即程序继续往下执行代码,这样,在大多数情况下并没有真正的构建好一个可用会话,在会话 ...
- vue几种简单的传值方式
除了一下的几种方式外,可以参考 https://www.cnblogs.com/hpx2020/p/10936279.html 组件传值的方法: 一.父组件向子组件传递数据(props) 第1:父组件 ...
- 交互式数据可视化-D3.js(二)选择集和数据
选择集 select和selectAll类似jquery: d3.select('body') d3.select('.body') d3.select('#body') d3.selectAll(' ...
- 四十二、python中异常
1.常用异常: AttributeError 试图访问一个对象没有的树形,比如foo.x,但是foo没有属性xIOError 输入/输出异常:基本上是无法打开文件ImportError 无法引入模块或 ...
- 各种sort排序总结
冒泡排序 选择排序 插入排序
- leetcode 125 验证回文字符串 Valid Palindrome
验证回文字符串 C++ 思路就是先重新定义一个string ,先遍历第一遍,字符串统一小写,去除空格:然后遍历第二遍,首尾一一对应比较:时间复杂度O(n+n/2),空间O(n); class Solu ...
- 六:flask-自定义URL转换器
flask进行url参数匹配的时候,是继承的werkzeug.routing.BaseConverter库进行重写的 导入看源码 里面有所有的URL参数数据类型的判断 也就是说,可以继承过后实现自己的 ...