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模块详解的更多相关文章

  1. Burpsuite模块—-Intruder模块详解

    一.简介 Burp Intruder是一个强大的工具,用于自动对Web应用程序自定义的攻击,Burp Intruder 是高度可配置的,并被用来在广范围内进行自动化攻击.你可以使用 Burp Intr ...

  2. Burp Suite安装及详细使用教程-Intruder模块详解

    01 介绍 安装要求: Java 的V1.5 + 安装( 推荐使用最新的JRE ), 可从这里免费 http://java.sun.com/j2se/downloads.html Burp Suite ...

  3. Burp Suite使用详解一

    本文由阿德马翻译自国外网站,请尊重劳动成果,转载注明出处 Burp Suite是Web应用程序测试的最佳工具之一,其多种功能可以帮我们执行各种任务.请求的拦截和修改,扫描web应用程序漏洞,以暴力破解 ...

  4. Python中操作mysql的pymysql模块详解

    Python中操作mysql的pymysql模块详解 前言 pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同.但目前pymysql支持python3.x而后者不支持 ...

  5. python之OS模块详解

    python之OS模块详解 ^_^,步入第二个模块世界----->OS 常见函数列表 os.sep:取代操作系统特定的路径分隔符 os.name:指示你正在使用的工作平台.比如对于Windows ...

  6. python之sys模块详解

    python之sys模块详解 sys模块功能多,我们这里介绍一些比较实用的功能,相信你会喜欢的,和我一起走进python的模块吧! sys模块的常见函数列表 sys.argv: 实现从程序外部向程序传 ...

  7. python中threading模块详解(一)

    python中threading模块详解(一) 来源 http://blog.chinaunix.net/uid-27571599-id-3484048.html threading提供了一个比thr ...

  8. python time 模块详解

    Python中time模块详解 发表于2011年5月5日 12:58 a.m.    位于分类我爱Python 在平常的代码中,我们常常需要与时间打交道.在Python中,与时间处理有关的模块就包括: ...

  9. python time模块详解

    python time模块详解 转自:http://blog.csdn.net/kiki113/article/details/4033017 python 的内嵌time模板翻译及说明  一.简介 ...

随机推荐

  1. php中文件断点上传怎么实现?

    1.使用PHP的创始人 Rasmus Lerdorf 写的APC扩展模块来实现(http://pecl.php.net/package/apc) APC实现方法: 安装APC,参照官方文档安装,可以使 ...

  2. BZOJ 1901 洛谷 P2617 ZOJ 2112 Dynamic Rankings

    以下时空限制来自zoj Time limit 10000 ms Memory limit 32768 kB OS Linux Source Online Contest of Christopher' ...

  3. CloudSim学习

    CloudSim CloudSim是墨尔本大学云计算和分布式系统实验室推出的云计算模拟软件.它可以使研究者规避实际部署的诸多不便(比如说资金缺乏等因素),在单机上即可实现对大规模云集群的模拟和相应算法 ...

  4. 3D Computer Grapihcs Using OpenGL - 15 Draw Element Instanced

    友情提示:继续本节之前,需要保存此前的代码,本节为了试验,会对代码做一些修改,但后续的修改需要我们把代码返回之前的进度. OpenGL内置支持Instancing,有专门的函数来处理这件事情. 为了方 ...

  5. 程序员心髓:移动应用API设计10大技巧

    移动App与基于Web/云服务发生对话是很常见的事情,最简单的可能仅仅只是检索数据,但也可能包含发送数据.用户授权和管理.而这也就验证了为移动应用建立API的重要性,为此,我们特总结了10大移动API ...

  6. Comparable接口与Comparator接口的比较————总结

    之前的两篇文章主要学习了Comparable接口和Comparator接口的学习.既然已经学习完了,现在就趁热打铁,进行总结吧! Comparable接口和Comparator接口的共同点: 1. 都 ...

  7. Java日期时间格式转换

    1.Date转String 将日期格式化成指定的格式 public static String stampToDate(Date date) { SimpleDateFormat simpleDate ...

  8. Java的LinkedList底层源码分析

    首先我们先说一下,源码里可以看出此类不仅仅用双向链表实现了队列数据结构的功能,还提供了链表数据结构的功能.

  9. Mybatis 一对多 关联查询查询

    一对多 与 一对一 查询有许多相似之处. 最主要的区别是 查询结果是list,与之对应的标签为collection. 班级和学生,一个班有多个学生,而每个学生只能属于一个班. 此时班级编号作为学生表的 ...

  10. tensorflow基本操作(1)

    import tensorflow as tf import numpy as np 点乘,支持broadcasting 乘号* 和 multiply等价 mul已经废弃不用了 matmul 是矩阵相 ...