一步一步学习DVWA--蛮力破解(第一期)

小伙伴们,我们一起学习一下DVWA这个如何进行安全攻击吧。

学习下DVWADamn Vulnerable Web Application),那么这玩意是个啥呢?DVWA是一款渗透测试的练习系统,也就是我们的测试靶机,很适合入门,要为以后的挖洞致富之路打好基础

DVWA简介

DVWADamn Vulnerable Web Application)是一个用来进行安全脆弱性鉴定的PHP/MySQL Web应用,旨在为安全专业人员测试自己的专业技能和工具提供合法的环境,帮助web开发者更好的理解web应用安全防范的过程。

DVWA共有十个模块,分别是

Brute Force(暴力(破解))

Command Injection(命令行注入)

CSRF(跨站请求伪造)

File Inclusion(文件包含)

File Upload(文件上传)

Insecure CAPTCHA (不安全的验证码)

SQL InjectionSQL注入)

SQL InjectionBlind)(SQL盲注)XSSReflected)(反射型跨站脚本)

XSSStored)(存储型跨站脚本)

需要注意的是,DVWA 1.9的代码分为四种安全级别:LowMediumHighImpossible。初学者可以通过比较四种级别的代码,接触到一些PHP代码审计的内容。

环境搭建

安装phpstudy

官方网站https://www.xp.cn/,下载最新版本即可

安装过程也十分简单,直接下一步到底就好,随后会出现初始化提示,选择安装后如上图

执行COM目录下phpstudy_pro.exe 看到下面界面,启动相应的套件即可。

安装DVWA

DVWA 官网

http://www.dvwa.co.uk/

或者GitHub上下载源码

https://github.com/ethicalhack3r/DVWA

 

 

把下载好的DWVA的压缩包,解压在C:\phpStudy_pro\WWW中(因为我将phpStudy安装在C盘,所以是C:\phpStudy)接下来需要配置DVWA链接数据库,请打开config文件夹,打开config.inc.php

因为是本地渗透测试环境,本地直接访问就好了,浏览器访问 http://127.0.0.1/DVWA,单击最下面按钮,创建数据库即可。提示创建数据库的密码,提供不小于6位的密码即可。创建成功,直接跳转到登陆界面。账号 admin 密码 password

蛮力介绍

蛮力,即暴力(破解),是指黑客利用密码字典,使用穷举法猜解出用户密码,是现在最广泛使用的攻击手法之一。通俗地讲,就是尝试每一种答案的可能,如以前轰动国民的12306“撞库事件,实质上就是暴力破解攻击。

暴力破解模型(开箱子模型)

为(密码= 000;密码<= 999;密码=密码+1

{

输入密码;

按下开锁按钮;

如果箱子关闭;

破解失败;

继续;

if箱子打开;

破解成功;

打破;

}

上述代码通过一个循环,从000号密码开始尝试打开箱子,打开即停止,打不开便尝试下一个钥匙。就这样,我们尝试了每一种可能,总会有打开箱子的时候(当然只是时间问题)

这里选择low

1、Brute Force

Brute Force,即暴力(破解),是指黑客利用密码字典,使用穷举法猜解出用户口令,是现在最为广泛使用的攻击手法之一,如2014年轰动全国的12306“撞库事件,实质就是暴力破解攻击。

 

 

分析:

服务器只验证了参数登录是否已设置,没有任何的防爆机制,并且对参数用户名没有做任何过滤,而对密码做了MD5校验,杜绝了通过参数密码进行sql注入,因此利用的思路如下:

1,直接进行爆破

2,对没做过滤的用户名做sql注入

使用工具爆破

使用Bursuite进行爆破

设置抓取报文代理,这里设置与浏览器中的代理设置要一致。

在浏览器中访问网站,则会抓取到请求和返回报文。

在请求报文窗口,按ctrl+i,则把请求报文插入到Intruder。在Intruder中则会多处一个tab页面,里面的参数都已经被设置为变量。

破解时,把下面这个按钮设置为off状态。

使用右侧的按钮,把需要改变的字符串设置为变量。在这里把密码和token设置为变量。

密码使用下面方法参数化。

Pyload type选择Simple list,在Payload Options中添加字符串值。

经过调试,会发现请求报文中token的值是上次请求成功服务器返回的token。那么如何取上一次返回报文token呢?

 

Payloads页面设置,Payload set选择2Payload type选择Recurisive grep类型。

勾选  下面的复选框

单击【Add】按钮,在响应包的HTML内容里找到user_token,鼠标拖动选定user_token的值,并Ctrl+C复制其值,点击OK

回到Options窗口,可以看到:

 

 

进入payloads栏目,选择payload set2,在payload option下找到initial payload for first request,将上步复制的user_token的值粘贴到后方输入框内,为首次请求赋值初始数值:

 

点击右上角的start attack,结果如下

分析这两个不同于其它长度值的返回报文,看看那个成功了。这里就完成了暴力破解过程。

欢迎等待下一期XSS攻击。

关注安全,关注作者

(完)

 

 

发布了309 篇原创文章 · 获赞 31 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/manok/article/details/102846906