【简单工具】BurpSuite密码爆破(暴力破解DVWA low级别下的用户名及密码)

目录

  • 1 强大的入侵工具Intruder
  • 2 密码爆破实验
    • 2.1 实验目的
    • 2.2 实验环境
    • 2.3 实验过程
      • 2.3.1 账户及密码字典准备
      • 2.3.2 爆破过程
  • 3 重要参数选择考虑因素
    • 3.1 最好的教程
    • 3.2 攻击类型的选择
    • 3.3 Payload类型的选择
  • 4 总结

本博客分享内容仅供学习交流,互联网并非法外之地,请勿滥用乱用技术。

1 强大的入侵工具Intruder

  1. 功能:
    Intruder是一个定制的高度可配置的工具,可以对Web应用程序进行自动化攻击,如通过标识符枚举用户名、ID和账户号码,模糊测试, SQL注入,跨站,目录遍历等。
  2. 原理:
    它的工作原理是Intruder在原始请求数据的基础上,通过修改各种请求参数获取不同的请求应答。在每一次请求中, Intruder通常会携带一个或多个有效攻击载荷( Payload ),在不同的位置进行攻击重放,通过应答数据的比对分析获得需要的特征数据。
  3. 应用场合:
    • 标识符枚举。Web应用程序经常使用标识符号|用用户、账户、资产等数据信息。例如,用户名、文件ID 和账户号码。
    • 提取有用的数据。在某些场景下,不是简单地识别有效标识符,而是通过简单标识符提取其他数据。例如,通过用户的个人空间ID获取所有用户在其个人空间的名字和年龄。
    • 模糊测试。很多输入型的漏洞(如SQL注入、跨站点脚本和文件路径遍历)可以通过请求参数提交各种测试字符串,并分析错误消息和其他异常情况,来对应用程序进行检测。受限于应用程序的大小和复杂性,手动执行这个测试是一个耗时且烦琐的过程,因此可以设置Payload ,通过Burp Intruder自动化地对Web 应用程序进行模糊测试。

2 密码爆破实验

2.1 实验目的

利用BurpSuite的Intruder入侵模块,对无验证码和次数限制的网站密码进行爆破。

2.2 实验环境

  1. 靶机:在CentOS中部署DVWA靶场环境,登录账号密码后,在左侧DVWA Security将安全级别设置为low。这样设置后,在进行实验时用户密码登录的请求没有user_token,实验难度较低。
    【简单工具】BurpSuite密码爆破(暴力破解DVWA low级别下的用户名及密码)_第1张图片

  2. 攻击工具:win10系统上安装的BurpSuite专业版软件,利用BurpSuite中的Intruder入侵模块对登录账户密码进行爆破。

  3. 两个系统桥接到同一个VMnet中。

2.3 实验过程

2.3.1 账户及密码字典准备

  1. 要实现暴力破解密码,前提是有重复的信息收集来保证生成一个合理的密码字典,在此,我们已经知道了DVWA默认登录账号为admin登录密码为password,我们利用字典生成器来构建一个密码字典。
    【简单工具】BurpSuite密码爆破(暴力破解DVWA low级别下的用户名及密码)_第2张图片
  2. 点击开始制作字典,软件提示按条件设置将生成的密码有接近2万条,将保存文件命名为pass.txt。
    【简单工具】BurpSuite密码爆破(暴力破解DVWA low级别下的用户名及密码)_第3张图片
  3. 打开文件可以看到我们的默认密码已然在列。
    【简单工具】BurpSuite密码爆破(暴力破解DVWA low级别下的用户名及密码)_第4张图片
  4. 同理地,我们创建一个命名为loginname.txt的文件来存放账户名,输入几个账户以控制后续爆破的工作量,比如admin、administrator、root等。
    【简单工具】BurpSuite密码爆破(暴力破解DVWA low级别下的用户名及密码)_第5张图片
  5. 将两个文件复制黏贴到BurpSuite所在文件夹中,备用。

2.3.2 爆破过程

  1. 在win10系统上打开BurpSuite软件,进入代理界面并启动数据拦截,随后点击OpenBrowser打开浏览器。
    【简单工具】BurpSuite密码爆破(暴力破解DVWA low级别下的用户名及密码)_第6张图片
  2. 在浏览器中输入DVWA所在系统的IP地址进行访问,输入账号密码并点击login。随后可以看到BurpSuite上拦截到请求报文如下,可以看到我们已经将security级别设为low,但是在报文最后一行仍然有user_token,这意味着在首页的安全级别并没有随security设为low而降低,不是本节密码爆破入门能解决的东西。
    【简单工具】BurpSuite密码爆破(暴力破解DVWA low级别下的用户名及密码)_第7张图片
  3. 输入在浏览器DVWA首页先输入正确的账号密码,进入以下界面,这才是安全级别降低之后用来尝试密码爆破的练习场所,随便输入一个账号密码,并点击login提交请求。
    【简单工具】BurpSuite密码爆破(暴力破解DVWA low级别下的用户名及密码)_第8张图片
  4. 在数据拦截界面可以看到新的请求,跟刚刚首页登录的请求不一样,此处的请求类型是GET请求,并且请求内容没有user_token。
    【简单工具】BurpSuite密码爆破(暴力破解DVWA low级别下的用户名及密码)_第9张图片
  5. 在数据拦截历史界面,找到刚刚的请求,右键选择“Sent to Intruder”。【简单工具】BurpSuite密码爆破(暴力破解DVWA low级别下的用户名及密码)_第10张图片
  6. 发送后,打开Intruder模块,可以看到刚刚的数据包在下面这里。软件已自动将特殊字段采用标记处理好,一般我们不需要对那么多个字段进行爆破,比如本实验只要对用户名和密码进行爆破,仅保留该字段对应的标记即可。
    【简单工具】BurpSuite密码爆破(暴力破解DVWA low级别下的用户名及密码)_第11张图片
  7. 此实验我们要同时对user和password两个参数进行破解,攻击模式选用Cluster bomb。攻击模式应该如何选择将在实验后分析。
    【简单工具】BurpSuite密码爆破(暴力破解DVWA low级别下的用户名及密码)_第12张图片
  8. 切换到payload界面,依次选择设置的参数,设置Payload type并选择文件所在路径。不同类型的Payload应该如何选择将在实验后分析。
    【简单工具】BurpSuite密码爆破(暴力破解DVWA low级别下的用户名及密码)_第13张图片
  9. 参数设置好后点击右上角的开始攻击按钮,开始密码爆破。
  10. 爆破结果查看。点击Length,对结果进行排序,可以看到有一个是跟别人不一样的,这个就是正确的用户名与密码的组合。
    【简单工具】BurpSuite密码爆破(暴力破解DVWA low级别下的用户名及密码)_第14张图片

3 重要参数选择考虑因素

3.1 最好的教程

  • 当涉及到软件中各参数类型应该如何选择时,我们不妨查看一下软件自带的帮助文档,只有这个文档才是与我们软件版本最为契合的,当该文档中没有时我们再查看其他资料。
  • 这个文档可以在软件窗口最上一行→点击“Help”→点击“BurpSuite Documentation”打开。我们可以像浏览网页一样浏览该软件的功能介绍。
    【简单工具】BurpSuite密码爆破(暴力破解DVWA low级别下的用户名及密码)_第15张图片

3.2 攻击类型的选择

  • 软件共提供了四种攻击类型给用户自行选择,不同类型有不同的组合原理,适用于不同的爆破任务需求。
  • Sniper模式使用单一的Payload组。它会针对每个位置设置Payload 。这种攻击类型适用于对常见漏洞中的请求参数单独进行Fuzzing测试的情景。攻击中的请求总数应该是position数量和Payload数量的乘积。
  • Battering ram模式使用单一的Payload组。它会重复Payload并一次性把所有相同的Payload放入指定的位置中。这种攻击适用于需要在请求中把相同的输入放到多个位置的情景。请求的总数是Payload组中Pay load的总数。
  • Pitchfork模式使用多个Payload组。攻击会同步迭代所有的Payload组,把Payload放入每个定义的位置中。这种攻击类型非常适合在不同位置中需要插入不同但相似输入的情况。请求的数量应该是最小的Payload组中的Payload数量。
  • Cluster bomb 模式会使用多个Payload 组。每个定义的位置中有不同的Payload组。攻击会迭代每个Payload组,每种Payload组合都会被测试一遍。这种攻击适用于在位置中需要不同且不相关或者未知输入攻击的情景。攻击请求的总数是各Payload组中Payload数量的乘积。

3.3 Payload类型的选择

  • Simple list
    This is the simplest payload type, and lets you configure a simple list of strings that are used as payloads.
    You can manually add items to the list using the text box and the “Add” button, or you can paste a list from the clipboard, or load from file. The “Deduplicate” option will remove duplicate entries from your list. This increases the efficiency of your attacks by reducing the number of requests that will be sent.
  • Runtime file
    This payload type lets you configure a file from which to read payload strings at runtime. This is useful when a very large list of payloads is needed, to avoid holding the entire list in memory. One payload is read from each line of the file, hence payloads may not contain newline characters.
  • 帮助文件中对各类荷载类型的作用都有介绍,以后有机会再演练不同荷载类型作用的应用方法。

4 总结

  1. 了解DVWA靶场的安全级别设置;
  2. 掌握请求报文无需验证码的密码爆破;
  3. 下一节再补充请求中带有user_token的密码爆破。

你可能感兴趣的:(#,筑基06:WEB安全基础,web安全,BurpSuite,DVWA)