BurpSuite基础教程第五发:Intruder模块(暴力破解)

2018年3月6日11:09:15
  • BurpSuite基础教程第五发:Intruder模块(暴力破解)已关闭评论
  • 249 views
  • A+
所属分类:BurpSuite

BurpSuite基础教程第五发:Intruder模块(暴力破解)

Burp intruder是一个强大的工具,用于自动对Web应用程序自定义的攻击。它可以用来自动执行您的测试过程中可能出现的所有类型的任务。例如目录爆破,注入,密码爆破等。
Module 1:Target
用于配置目标服务器进行攻击的详细信息。

BurpSuite基础教程第五发:Intruder模块(暴力破解)

  • Host:这是目标服务器的IP地址或主机名。
  • Port:这是目标服务的端口号。
  • Use HTTPS:这指定的SSL是否应该被使用
BurpSuite任何请求处,右键菜单选择“Send to intruder”选项,将自动发送到此模块下并自动填充以上内容

Module 2:Positions

设置Payloads的插入点以及攻击类型(攻击模式)。

BurpSuite基础教程第五发:Intruder模块(暴力破解)

  • attack type:攻击模式设置
    • sniper:对变量依次进行破解。多个标记依次进行。
    • battering ram:对变量同时进行破解。多个标记同时进行。
    • pitchfork:每一个变量标记对应一个字典,取每个字典的对应项。
    • cluster bomb:每个变量对应一个字典,并且进行交集破解,尝试各种组合。适用于用户名+密码的破解。
  • add:插入一个新的标记
  • clear:清除所有的标记
  • auto:自动设置标记,一个请求发到该模块后burpsuite会自动标记cookie URL等参数
  • refresh:如果必要的话,这可以要求模板编辑器的语法高亮。

Module 3:Payloads

设置payload,配置字典
选项1:Payload Sets
Payload数量类型设置

BurpSuite基础教程第五发:Intruder模块(暴力破解)

  • Payload Set:指定需要配置的变量
  • Payload type:Payload类型。
    • 这里只介绍部分常用Payload,其他Payload可自行研究。
    • Simple list:简单字典
    • Runtime file:运行文件
    • Custom iterator:自定义迭代器
    • Character substitution:字符替换
    • Recursive grep:递归查找
    • lllegal unicode:非法字符
    • Character blocks:字符块
    • Numbers:数字组合
    • Dates:日期组合
    • Brute forcer:暴力破解
    • Null payloads:空payload
    • Username generator:用户名生成
    • copy other payload:复制其他payload

选项2:Payload Opetions[Payload type]

由于该选项会根据选项1中Payload type的设置而改变,这里不再进行讲述。

BurpSuite基础教程第五发:Intruder模块(暴力破解)

选项3:Payload Processing

对生成的Payload进行编码、加密、截取等操作

BurpSuite基础教程第五发:Intruder模块(暴力破解)

  • add:添加一条规则,会弹出添加操作窗口,可添加的规则如下:
    • Add prefix - 添加一个文字前缀
    • Add suffix - 添加一个文字后缀
    • Match/replace - 将替换匹配特定正则表达式的有效载荷的任何部位,用一个文字字符串表示。
    • Substring - 提取的有效载荷的子部分中,从指定的偏移量(0-索引)和至所指定的长度开始。
    • Reverse substring - 对于子规则来说,最终的偏移量指定的有效载荷的末尾向后计数,并且长度从端部向后偏移计数。
    • Modify case - 这个修改了的有效载荷的情况下,如果适用的话。同样的选项作为的情况下修改有效载荷类型。
    • Encode - URL,HTML,Base64的,ASCII码或十六进制字符串构建各种平台:采用不同的计划,该编码的有效载荷。
    • Hash - hash
    • Add raw payload - 这之前或之后,在当前处理的值增加了原始负载值。它可以是有用的,例如,如果你需要提交相同的有效载荷在raw和哈希表。
    • Skip raw payload - 将检查是否当前处理的值匹配指定的正则表达式,如果是这样,跳过有效载荷和移动到下一个。这可能是有用的,例如,如果知道一个参数值必须有一个最小长度和要跳过的一个列表,比这更短的长度的任何值。
    • Invoke Burp extension - 调用一个Burp exxtension(扩展)来处理负载。扩展名必须已注册入侵者有效载荷处理器。您可以从已注册的当前加载的扩展可用的处理器列表中选择所需的处理器。
  • Edit:编辑一条规则。
  • Remove:删除一条规则。
  • Up:上移。
  • Down:下移。

选项4:Payload Encoding

你可以配置哪些有效载荷中的字符应该是URL编码的HTTP请求中的安全传输。任何已配置的URL编码最后应用,任何有效载荷处理规则执行之后。 这是推荐使用此设置进行最终URL编码,而不是一个有效载荷处理规则,因为可以用来有效载荷的grep选项来检查响应为呼应有效载荷的最终URL编码应用之前。

BurpSuite基础教程第五发:Intruder模块(暴力破解)

Module 4:Opetions

此选项卡包含了request headers,request engine,attack results ,grep match,grep_extrack,grep payloads和redirections。你可以发动攻击之前,在主要Intruder的UI上编辑这些选项,大部分设置也可以在攻击时对已在运行的窗口进行修改。

BurpSuite基础教程第五发:Intruder模块(暴力破解)

选项1:Request Headers

这些设置控制在Intruder是否更新配置请求头。

BurpSuite基础教程第五发:Intruder模块(暴力破解)

  • Update Content-length header:更新Content-Length头。
  • Set Connection:close:设置连接:close

选项2:Request Engine

设置发送请求的线程、超时重试等。

BurpSuite基础教程第五发:Intruder模块(暴力破解)

  • Number of threads:线程,该选项控制攻击请求的并发数。
  • Number of retries on network failure:网络故障的重试次数 - 如果出现连接错误或其他网络问题,Burp会放弃和移动之前重试的请求指定的次数。
  • ause before retry:重试前等待时间,当重试失败的请求,Burp会等待指定的时间(以毫秒为单位),然后重试。
  • Throttle between requests:请求之间的等待时间,Burp可以在每次请求之前等待一个指定的延迟(以毫秒为单位) 。此选项很有用,以避免超载应用程序,或者是更隐蔽。
  • Start time:开始时间,此选项允许您配置攻击立即启动,或在指定的延迟后,或开始处于暂停状态。

选项3:Attack Results

设置攻击结果的显示。

BurpSuite基础教程第五发:Intruder模块(暴力破解)

  • Store requests/responses:存储请求/响应,这个选项确定攻击是否会保存单个请求和响应的内容
  • Make unmodified baseline request:未修改的基本请求,如果选择此选项,那么除了配置的攻击请求,Burp会发出模板请求设置为基值,所有有效载荷的位置。此请求将在结果表显示为项目# 0 。使用此选项很有用,提供一个用来比较的攻击响应基地的响应。
  • Use denial-of-service mode:使用拒绝服务的模式,如果选择此选项,那么攻击会发出请求,如正常,但不会等待处理从服务器收到任何答复。只要发出的每个请求, TCP连接将被关闭。这个功能可以被用来执行拒绝服务的应用层对脆弱的应用程序的攻击,通过重复发送该启动高负荷任务的服务器上,同时避免通过举办开放套接字等待服务器响应锁定了本地资源的请求。
  • Store full payloads:保存完整的有效载荷。如果选择此选项,Burp将存储全部有效载荷值的结果。

选项4:Grep - Match

在响应中找出存在指定的内容的一项。

BurpSuite基础教程第五发:Intruder模块(暴力破解)

可以通过列表旁边的操作按钮对列表中的选项进行操作,我们也可以通过add添加我们自定义的内容。
  • Match:匹配类型,指定的表达式是否是简单的字符串或regular expressions(正则表达式)。
  • Case sensitive match:区分大小写的匹配,指定检查表达式是否应区分大小写。
  • Exclude HTTP headers:排除HTTP头,指定的HTTP响应头是否应被排除在检查。

选项5:Grep - Extract

通过正则提取返回信息中的内容

BurpSuite基础教程第五发:Intruder模块(暴力破解)

点击ADD就弹出正则编辑窗口,如图我们选中我们需要获取的部分就可以自动生成正则表达式。点击OK就可以在列表中添加这条正则表达式。BurpSuite基础教程第五发:Intruder模块(暴力破解)
选项6:Grep - Payloads

这些设置可以用于包含已提交的有效负载的反射的标志结果项目。如果启用了此选项,BurpSuite会添加包含一个复选框指示当前负载的值在每个响应发现新的结果列。

BurpSuite基础教程第五发:Intruder模块(暴力破解)

  • Search responses for payload strings:在响应中搜索Payload。
  • Case sensitive match:区分大小写,此指定是否对有效负载的检查区分大小写。
  • Exclude HTTP headers:排除HTTP标头,不对HTTP响应头进行检查。
  • Match against pre-URL-encoded payloads:对预URL编码的有效载荷匹配。

选项6:Redirections

重定向响应,控制Burp在进行攻击时如何处理重定向。

BurpSuite基础教程第五发:Intruder模块(暴力破解)

  • Follow redirections:跟随重定向
    • Never:不跟随重定向(关闭跟随重定向)。
    • On-site only:只会跟随重定向到同一个网页“网站” ,即使用相同的主机,端口和协议的是在原始请求使用的URL 。
    • In-scope only:只跟随范围内,Intruder只会跟随重定向到目标范围之内的URL 。
    • Always:总是跟随重定向,将遵循重定向到任何任何URL。(此选项可能会引导burp到其他网站)

根据自己的需要配置好相关的内容后就可以点击任意模块右上角的start attack或者菜单栏中的Intruder->start attack发起攻击请求。详细的使用我会在后边扩展中演示。

avatar