使用burpsuite的Intruder模块进行模糊测试Fuzzing ③

使用burpsuite的Intruder模块进行模糊测试Fuzzing ③

阅读我们之前的两篇文章后[ ],您可能会想:“ Burpsuite的入侵者为我们提供的其他功能如何呢?” 或“我们如何使用其他有效负载选项,而不是仅使用简单列表?”

所以今天,在本文中,您将回答所有问题,无论是有关有效负载选项,攻击类型还是grep匹配或grep提取值。

模糊测试攻击类型

到目前为止,您可能已经看到,在所有攻击情形中,我们都使用Sniper作为攻击类型。我们这样做是因为Sniper使用了一组有效载荷,并依次针对单个位置但是,这样一来,我们就无法在同一请求中设置多个有效负载位置。

因此,在这种情况下,我们需要设置不同的输入参数作为注入点,我们可以使用Burpsuite提供的其他攻击类型。

因此,让我们更深入地研究并探索最常见的攻击类型之一,即Cluster Bomb[集束炸弹],在这里,我们将尝试通过分别在不同的注入点注入两个不同的有效负载列表来模糊测试用户的用户名和密码。

Cluster Bomb(集束炸弹)

以类似的方式返回,让我们捕获正在进行的HTTP请求并将其与Intruder共享。

现在,让我们通过使用“Add $”按钮选择登录和密码字段的输入值来配置有效负载位置。因此,选择“攻击类型”为“Cluster Bomb”。

是时候用所有可能的用户名列表填充空白框了。

现在,使用用户名,我们也需要一些密码。因此,让我们使用用户名可能存在的所有可能的密码来配置有效负载2位置。

按下“攻击”按钮后,模糊测试将启动,并且将获得包含用户名和密码的所有组合的输出.

但是,等等,让我们首先清除其背后的背景概念,例如两个不同的有效负载列表将如何工作,以便成功进行302重定向

在此攻击中,负载列表2中的第一个密码将类似地模糊负载列表1中的所有用户名,然后第二个密码将再次模糊测试所有用户名,攻击继续进行……。也就是说,有效负载列表2中的下一个有效负载(密码)将模糊测试有效负载列表1中的所有有效负载(用户名)。

因此,在此攻击中生成的请求总数是所有已定义的有效负载集中的有效负载数量的乘积

Battering ram(破城槌)

Battering ram攻击类型是Bug Bounty Hunters最喜欢的攻击类型,因为它需要一组有效负载列表才能在请求中的多个位置击中漏洞。

在这里,单个列表被注入到不同的有效负载位置,即在要在请求中的多个位置插入相同输入的地方使用它。

让我们通过在捕获的请求中对Battering ram操纵攻击类型来使其更加清晰。在这里,我们将尝试找出密码与用户名相似的帐户。

现在,让我们通过在输入字段中键入一些负载来注入它们。然后,让我们点击“攻击”按钮开始攻击。

接下来,我们返回了输出列表。从下图可以看到,请求的总数等于我们注入的有效负载数。因此,我不这么认为,需要对长度或状态栏进行排序,因为使用302重定向的“ignite”输出很明显。

Pitchfork(干草叉)

尽管这种攻击类型带有多个有效载荷集和不同的注入点,但它与所有其他三种攻击类型完全不同。但是,它不会使事情变得混乱,即,它仅将有效负载列表中的第一个有效负载与有效负载列表2中的第一个有效负载进行检查,如果发现它们是正确的凭据,则通过。

对于上面已使用的请求,也请尝试一下。只需将攻击类型操纵为Pitchfork并通过选择有效载荷位置并单击“添加”按钮来标记有效载荷位置。

让我们像对“Cluster Bomb(群集炸弹)”所做的一样选择有效负载集并注入有效负载列表。

以类似的方式,在有效载荷集合2中为列表1的有效载荷设置相应的有效载荷,即

bee : 12345
ignite : ignite
raj : 123
mummy : hacking
user : raj

现在,一旦我们按下Attack(攻击)按钮,为了开始攻击,我们将被重定向到一个新窗口,在该窗口中我们将获得成功的登录凭据。

有效载荷类型的模糊测试

我们知道这一事实,Burpsuite的“入侵者”选项卡中的有效载荷类型旨在根据我们的方便来管理和创建有效载荷。尽管我们仅在其中使用了“简单列表”选项,但是还有许多其他列表仍然对我们不可见。让我们一一探讨。

Brute forcer(暴力破解)

有时,人们将模糊测试和暴力破解这两个术语混为一谈,因此,为了将二者分开,burpsuite具有内置的有效负载类型为暴力破解,它会使用输入字符串生成指定长度的有效负载,该有效负载包含a的所有排列指定的输入字符集。

因此,这一次,我们将不指定任何有效负载列表,而是配置burpsuite使其自己的有效负载并将其注入到提到的有效负载位置。

打开ON,burpsuite监测并捕获由Mutillidae的登录门户网站制作的HTTP请求,分享给了入侵者

现在,我们将对密码字段进行模糊处理,就像我们之前选择123作为注入点并将攻击类型设置为Sniper一样

是时候配置最重要的东西了,从有效负载类型选项中选择Brute forcer,并随即填写空白的输入字段。

字符集–有效负载中将使用的字符集。

最小长度–最短有效载荷的长度

最大长度–最长有效载荷的长度

注意 :

数量有效载荷将被增加到与字符集的大小和最大长度。

最后,点击“攻击”按钮。坐下休息,因为现在burp将完成其工作,它将创建有效负载并将其与为正确密码提供的用户名相匹配。

从下图可以看到,我们将有效负载作为带有302重定向的“ aa1” ,似乎是成功的。现在,在“入侵者”选项卡的顶部导航并选择“攻击”,然后单击“暂停”按钮以暂停模糊测试。

Character Frobber(角色劫掠者) 越权

在渗透测试期间,有时会遇到这样的情况,即字符串负责应用程序的响应,即,如果我们使用有效的值操纵字符串值,则响应将被更改。当我们进行帐户接管时,通常会发生这种情况,在这种情况下,我们尝试使用一个真实用户之一来操纵用户ID越权。

但是,如果我们尝试手动操作字符串的字符,则可能需要数周甚至数月的时间才能找到有效的请求,从而使我们的工作变得轻松,burpsuite提供了一种令人称奇的有效负载类型,即Character Forbber ,它可以修改通过将特定字符ASCII码来将现有基本字符串上每个字符位置的值设置为1

现在,返回到Mutillidae应用程序,在仪表板左侧,选择OWASP 2017>断开的身份验证和会话管理>权限提升>通过CBC-位翻转,并捕获请求。

从上面的图片中,我们可以看到一个字符串正在传递到URL中,似乎它负责用户拥有应用程序ID,用户ID和组ID。

现在,一旦我们捕获了传递的HTTP请求,我们就将其直接共享给入侵者以进行进一步处理。

让我们将有效负载位置设置为此传递的字符串。

选择的时间,将有效载荷类型选择为“ Character frobber ”,然后 将“有效操作”选项选择为Base value of payload position

现在,让我们通过使用“ Grep Extract”选项使这种攻击更具效果,该选项将帮助我们确定将哪个有效负载字符串定义给哪个应用程序ID。

因此,在“选项”选项卡上,向下滚动到“ Grep –提取”字段,选中“从响应中提取以下项目”,然后单击“添加”按钮

您将被重定向到一个新窗口,单击获取响应按钮,然后在其中搜索“ Application ID”,进一步选择输出并单击OK,在本例中为“ A1B2”。

点击“攻击”按钮并启动模糊器。(您可以选择用户ID或组ID,而不是应用程序ID。)

从下图可以看到,我们已经成功捕获了与特定应用程序ID对应的所有字符串。

在输出中,您会注意到有效载荷彼此几乎相似,但是字符之间又逐渐增加。

Numbers 号码

与暴力破解类似,此有效负载类型是专门为数字部分设计的。许多赏金猎手都喜欢这种有效负载类型,因为它在OTP绕过攻击中主要充当了帮手。

尽管使用此有效负载的方法相同,但是无论是将其用于OTP绕过还是登录蛮力。

因此,让我们通过捕获登录页面的正在进行的HTTP请求来了解此有效负载类型的工作原理。

一旦将其共享给入侵者,我们就需要为其设置位置,在这里我们标记密码字段并将攻击类型设置为“ Sniper”

从提供的有效载荷类型选项中选择数字,然后根据需要进一步配置以下内容。

从–将从该有效负载开始。

到–最后的负载

步骤–这表示迭代,这里我将其设置为“ 1”,即100之后的下一个有效负载将是101、102、103,依此类推。如果我们将其设置为“ 2 ”,则100之后的下一个有效载荷将为102,104,106,增量为2,

设置完所有这些内容后,请点击“攻击”按钮,然后坐下来等待响应。几分钟后,我们将在123处获得302重定向

Case Modification (案例修改)

有时很难确定用户在这种情况下已设置了密码。从而,为了解决这一难题,burpsuite在其内部集成了有效负载类型,该负载类型可调整基值的大小写(上下)并在其中创建有效负载。

但是,这不仅是密码,开发人员有时会在其输入字段中阻止某些特定情况,因此为了确定这种情况,我们也可以使用它。

让我们捕获请求并检查其实际暴露情况。

您知道我们下一步需要做什么,选择有效负载位置,然后选择Sniper作为攻击类型

现在,这就是最好的过去。从提供的列表中选择案例修改并进行配置。

用XSS脚本填充空框,然后单击“攻击”按钮。(在这里,我们测试XSS漏洞的次数是开发人员阻止“ SCRIPT”或“ script”关键字的次数。)

我们将有效载荷注入了正确的位置。右键单击,选择“在浏览器中显示响应”以检查是否启用了Java脚本。

然后我们去了,弹出的窗口显示为“ 1”

Username generator (用户名生成器)

在进行社会工程攻击时,可以很容易地收集有关用户的信息,无论是用户的姓名还是联系电话,甚至有时我们甚至都可以猜出密码,但是最困难的是识别他设置的用户名。

因此,为了摆脱这种情况,burpsuite提供了一种更好的有效负载类型,我们只需要提供一个特定的名称,它就会生成所有可能的用户名并根据注入的密码进行检查。

想知道,这怎么做?查看以下情况。

使用随机的用户名和正确的密码捕获请求,并将其共享给入侵者。

现在,该设置我们的有效负载位置了,选择“random”,然后单击“添加”按钮,将攻击类型进一步选择为sniper。

在这里从有效负载类型中选择“用户名生成器”,然后输入所需的用户名。在本例中,我们使用的是Ignite Technologies”。

我们甚至可以选择有效负载的最大数量,即用户名,这里我们也将其设置为50。

按下“攻击”按钮后,我们的模糊器将启动,由此我们可以看到列表中注册了大量用户名,而我们的用户名就是Ignite

from

Leave a Reply

您的电子邮箱地址不会被公开。 必填项已用 * 标注