文章目录

  • 1. 背景
  • 2. 准备工作
    • 2.1. 靶场环境
    • 2.2. 安装破解工具
  • 3. 破解过程
    • 3.1. 代理请求
    • 3.2. 拦截请求
    • 3.3. 填装弹药
    • 3.4. 设置岗哨
    • 3.5. 开始攻击
  • 4. 参考文献

1. 背景

最近参加了2020腾讯安全平台部极客技术挑战赛,获得了一次腾讯绿色通道面试的机会,因此我想要借此机会补充一下网络安全方面的知识,于是就从基础的靶场 DVWA (Damn Vulnerable Web Application) 开始刷起,这一篇是关于暴力破解安全等级为 Low 的账号密码的内容。

和我一样希望学习网络安全知识的同学,推荐学习《Web安全攻防实战》和《安全攻防技能30讲》。

2. 准备工作

2.1. 靶场环境

首先配置靶场环境,如果想要在本地配置靶场环境,可以参考github上的教程,这里推荐大家直接使用vulnspy提供的在线的靶场环境。

如图1所示,点击右上角的 Start To Hack 使用GitHub账号登陆,即可创建靶场环境。

Figure 1. 创建靶场环境\text{Figure 1. 创建靶场环境} Figure 1. 创建靶场环境

创建环境以后,在 LABS 标签下,点击 Target Address 下的链接即可进入环境,一次创建有效期为 2 个小时,结束后可以再次创建,最多能够同时创建5个实验环境。

Figure 2. 进入靶场环境\text{Figure 2. 进入靶场环境} Figure 2. 进入靶场环境

进入页面以后,账号密码都是默认的,点击登陆。

Figure 3. 登陆\text{Figure 3. 登陆} Figure 3. 登陆

拉到页面底部,点击创建数据库。

Figure 4. 创建数据库\text{Figure 4. 创建数据库} Figure 4. 创建数据库

创建完成后,会回到登陆页面要求重新登陆,再次登陆即可。

默认的难度是 impossible,基本没有安全漏洞,我们要点击左边的 DVWA Security 设置难度。

Figure 5. 进入设置难度页面\text{Figure 5. 进入设置难度页面} Figure 5. 进入设置难度页面

页面上也有相应的难度说明,我们先从 Low 的难度开始训练。

Figure 6. 设置难度为Low\text{Figure 6. 设置难度为Low} Figure 6. 设置难度为Low

点击左边的Brute Force标签,我们就进入到密码破解的训练页面了。

Figure 7. Brute Force\text{Figure 7. Brute Force} Figure 7. Brute Force

2.2. 安装破解工具

下载 Burp Suite Community 免费版本 ,图形界面安装。下载有点慢,Mac 系统的同学可以从百度网盘下载。

链接:https://pan.baidu.com/s/1fXM7uKv2lE5KoEDgCVnazQ 密码:x7sj

安装完成以后,就可以开始我们的破解了。

3. 破解过程

3.1. 代理请求

首先设置浏览器的代理,在Safari中操作路径为为偏好设置 - 高级 - 代理 - 更改设置,设置HTTP代理,将代理服务器地址设置为127.0.0.1:8000

Figure 8. 代理\text{Figure 8. 代理} Figure 8. 代理

Proxy - Option中的设置保持一致。

Figure 9. Proxy - Option\text{Figure 9. Proxy - Option} Figure 9. Proxy - Option

我们再对 Burp Proxy 进行一些了解。内容参考自《Web安全攻防:渗透测试实战指南》中对Burp Proxy的介绍。

Burp Proxy 是利用 Burp 开展测试流程的核心,通过代理模式,可以让我们拦截、查看、修改所有在客户端与服务端之间传输的数据。

Burp Proxy 的拦截功能主要由 Intercept 选项卡中的 Forward、Drop、Interception is on/off和Action 构成,它们的功能如下所示。

  • Forward 表示将拦截的数据包或修改后的数据包发送至服务器端。
  • Drop 表示丢弃当前拦截的数据包。
  • Interception is on 表示开启拦截功能,单击后变为Interception is off,表示关闭拦截功能。
  • 单击Action按钮,可以将数据包进一步发送到Spider、Scanner、Repeater、Intruder等功能组件做进一步的测试,同时也包含改变数据包请求方式及其body的编码等功能。

打开浏览器,输入需要访问的URL并按回车键,这时将看到数据流量经过Burp Proxy并暂停,直到单击 Forward 按钮,才会继续传输下去。如果单击了 Drop 按钮,这次通过的数据将丢失,不再继续处理。

Burp Suite 拦截的客户端和服务器交互之后,我们可以在Burp Suite的消息分析选项中查看这次请求的实体内容、消息头、请求参数等信息。Burp有四种消息类型显示数据包:Raw、Params、HeadersHex

  • Raw 主要显示Web请求的raw格式,以纯文本的形式显示数据包,包含请求地址、HTTP协议版本、主机头、浏览器信息、Accept可接受的内容类型、字符集、编码方式、cookie等,可以通过手动修改这些信息,对服务器端进行渗透测试。
  • Params 主要显示客户端请求的参数信息,包括GET或者POST请求的参数、cookie参数。可以通过修改这些请求参数完成对服务器端的渗透测试。
  • Headers 中显示的是数据包中的头信息,以名称、值的形式显示数据包。
  • Hex 对应的是Raw中信息的二进制内容,可以通过Hex编辑器对请求的内容进行修改,在进行00截断时非常好用。1

3.2. 拦截请求

接下来我们要开始拦截请求,在 Burp Suite 点击Intercept is off 中打开请求拦截。

Figure 10. 请求拦截\text{Figure 10. 请求拦截} Figure 10. 请求拦截

在靶场的Brute Force页面中输入任意的账号密码,点击登陆。在 Burp SuiteProxy - Intecept 界面中显示拦截成功,点击 Intercept is on 关闭拦截。

Figure 11. 拦截成功\text{Figure 11. 拦截成功} Figure 11. 拦截成功

在Http History中找到带账号密码的请求。

Figure 12. Http History\text{Figure 12. Http History} Figure 12. Http History

全选后,右键选择 Send To Intruder

Figure 13. Send To Intruder\text{Figure 13. Send To Intruder} Figure 13. Send To Intruder

Intruder - 2 - Position 界面中,将用户名和密码以外的变量去除,选择 Attack typePitchfork

Figure 14. Intruder\text{Figure 14. Intruder} Figure 14. Intruder

各种模式的区别可以参考《Web安全攻防:渗透测试实战指南》中的内容,具体如下。

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

3.3. 填装弹药

要通过暴力来破解DVWA Brute Force Low,遍历所有符号的排列组合是比较低效的,因为每种情况并非等可能地出现,人们为了要记忆自己的密码,一般都会遵循某些规律,比如在密码中包含姓名、生日等等字段。所以我们就需要一份包含高频用户名和密码的词典作为弹药,从而对系统进行轰炸。

我选择的是Github上的SecLists项目,上面有许多用户名和密码,有些按照频率进行了排序,更加方便我们使用。

我也选了一些放在了百度网盘上。

链接:https://pan.baidu.com/s/1NbOkmIbhBXOvejwSyoCF2A 密码:74gz

在这里我使用的是 xato-net-10-million-passwords-dup.txtxato-net-10-million-usernames-dup.txt 两份基于频率排序的词典。

Payload 界面通过Load按钮将词典引入,Payload set 为 1 时引入的是账号Payload set 为 2 时引入的是密码

Figure 15. Payload\text{Figure 15. Payload} Figure 15. Payload

3.4. 设置岗哨

填装好弹药以后,我们还需要知道在什么情况下破解算成功了。我们先随意填写一次账号密码,发现当用户名或密码错误时,页面会显示Username and/or password incorrect. 那么当页面没有显示这条信息时,说明我们破解成功了。

Figure 16. Incorrect Page\text{Figure 16. Incorrect Page} Figure 16. Incorrect Page

所以我们要在Intruder - 2 - Option - Grep Match 中添加 incorrect 关键词,并且勾选Flag

Figure 17. Grep Match\text{Figure 17. Grep Match} Figure 17. Grep Match

3.5. 开始攻击

接下来,在 Payload 界面点击 Start Attack 开始攻击。点击后会有一个提示说免费版的攻击时长受限,点 OK 即可。

Figure 18. Attack\text{Figure 18. Attack} Figure 18. Attack

很快,我们就发现了有一条攻击请求的 Response 中没有incorrect 关键词。

Figure 19. Sign\text{Figure 19. Sign} Figure 19. Sign

查看该次攻击的账号密码,发现其账号为 admin,密码为password。到此,我们就成功地通过暴力方式破解了DVWA Brute Force 安全等级为 Low 的密码。

Figure 20. Password\text{Figure 20. Password} Figure 20. Password

4. 参考文献

[1] 徐焱, 李文轩, 王东亚. Web 安全攻防:渗透测试实战指南 [M]. 北京: 电子工业出版社, 2018.


联系邮箱:curren_wong@163.com

CSDN:https://me.csdn.net/qq_41729780

知乎:https://zhuanlan.zhihu.com/c_1225417532351741952

公众号复杂网络与机器学习

欢迎关注/转载,有问题欢迎通过邮箱交流。

网络安全入门之 Burp Suite 暴力破解 DVWA Brute Force Low相关推荐

  1. burp suite暴力破解

    burp suite暴力破解 预备知识 Burp的工作模式 暴力破解 实验环境 实验步骤 实验目标 步骤 实际演练 预备知识 Burp的工作模式 在没有burp之前,客户端使用浏览器直接与服务器进行通 ...

  2. Burp suite 暴力破解shell密码详细教程

    http://www.yunsec.net/a/security/web/jbst/2012/0908/11390.html Burp suite是由portswigger开 发的一套用于Web渗透测 ...

  3. DVWA暴力破解(Brute Force)——全等级(Low,Medium,High,lmpossible)精讲

    使用phpstudy搭建渗透测试靶场环境 目录 1.Low级别 2.mediun级别 3.high级别 4.impossible级别 1.Low级别 文件源代码: <?phpif( isset( ...

  4. DVWA Brute Force(low)

    0x00 设置安全水平 小白刚接触DVWA,先从简单的开始 00x1 Brute Force(蛮力:爆破) 0x02 开启firefox代理 首选项 0x03 使用brupsuite爆破 输入: ad ...

  5. 渗透测试实验_使用BurpSuite暴力破解DVWA密码 BurpSuite四种暴力破解类型 安全等级Low Medium High

    文章目录 暴力破解 1. Brute Force(暴力破解) 原理 2. BurpSuite 四种暴力破解类型 3. Low等级 Sniper(狙击手)类型 Battering ram(撞击物)类型 ...

  6. 使用burp进行暴力破解 ——合天网安实验室学习笔记

    实验链接 通过该实验掌握burp的配置方法和相关模块的使用方法,对一个虚拟网站使用burp进行暴力破解来使网站建设者从攻击者的角度去分析和避免问题,以此加强网站安全. 链接:http://www.he ...

  7. 【白帽子学习笔记11】DVWA Brute Force【暴力破解】

    [白帽子学习笔记11]DVWA Brute Force Brute Force 就是暴力破解的意思,尝试常用的用户名和必然然后使用工具一个一个的去尝试 LOW级别 通过解析源码我们可以发现代码没有任何 ...

  8. 网络安全:通过445端口暴力破解植入木马。

    网络安全:通过445端口暴力破解植入木马. 木马制作工具,如:灰鸽子等等 445端口是文件共享端口.可以进入对方文件硬盘进行植入木马: 使用文件共享进入对方磁盘: 在cmd输入net use \\x. ...

  9. 使用burp进行暴力破解

    1.在没有burp之前,客户端使用浏览器直接与服务器进行通信.有了burp之后,burp在客户端与服务器之间充当代理.这样,浏览器发送给服务器的请求就会被burp进行捕获,而burp和wireshar ...

最新文章

  1. OpenCV+python:读取图片
  2. 图像处理怎么学matlab,Matlab数字图像处理学习(1)-亮度变换
  3. html创建等边三角形,CSS3 等边三角形组成星形图案
  4. 从零开始,教你征战Kaggle竞赛
  5. 产业|世界十大工业自动化公司,你知道几家?
  6. 【PAT乙级】1003 我要通过! (20 分)详解
  7. python求圆柱体的体积_漫谈超球体的体积公式
  8. Bloom是REST API缓存中间件,充当负载平衡器Nginx和REST API服务之间的反向代理
  9. win7 oracle数据库删除用户名,图文帮你win7系统删除Oracle数据库中的用户的具体方法...
  10. 常用服务的默认端口号总结
  11. 答简书安卓公测群里朋友的提问
  12. 计算机网络谢希仁课后答案第七版答案完整版
  13. inspinia中文管理后台_JAVA项目实战开发电商项目案例(六与七)商品分类与商品模块管理开发
  14. java使用imagej_【原创】imagej使用达人指南,分享给大家!
  15. Abbirb120型工业机器人_ABB机器人IRB120资料的详细介绍
  16. python中自然数怎么表示_Python Numpy 自然数填充数组的实现
  17. ASP.NET建筑工程管理系统
  18. 十进制转为二十六进制
  19. 使用NoteExpress做文献管理
  20. linux rm -rf删除文件,Linux rm命令

热门文章

  1. 【云服务架构】大健康之医疗智能硬件解决方案
  2. Java模拟实现扑克牌打牌
  3. 城市:天际线(Cities: Skylines)Mac版
  4. 航空摄影测量的理论基础(坐标系篇)
  5. 达内java学习day4
  6. python手机壁纸超清_python下载高清壁纸
  7. 备份电脑不求人,时间机器轻松备份你的Mac
  8. 照片去隐私,说说你的建议!这一招既能保护隐私又能保证清晰
  9. 世炬网络受邀参加2022高通创投CEO峰会
  10. 迅雷用“久”了,启动缓慢的解决办法