漏洞演示系统DVWA(Damn Vulnerable Web Application) V1.8渗透测试攻略

漏洞演示系统DVWA(Damn Vulnerable Web Application) V1.8攻略

测试环境:

操作系统:Windows 8.1 、Windows 7

运行时:.Net Framework 3.5

PHP+MySQL集成测试环境:XAMPP V3.2.1

首先,从http://www.dvwa.co.uk/ 下载DVWA,并将文件释放到c:xampphtdocsDVWA

修改配置文件configconfig.inc.php ,设置数据库连接账号及默认的安全级别:

$_DVWA[ 'db_server' ] = 'localhost';

$_DVWA[ 'db_database' ] = 'dvwa';

$_DVWA[ 'db_user' ] = 'root';

$_DVWA[ 'db_password' ] = '123456';

$_DVWA['default_security_level'] = "low";

然后,访问http://127.0.0.1/DVWA/login.php

第一关,就是考虑如何登录进去。

这里,我们计划采取挂字典进行暴力登录尝试,这类工具称之为Bruter,下面以WebCruiser Web Vulnerability Scanner V2.8.0 (http://sec4app.com )为例。

首先,随便输入一个错误的用户名和密码,这里输入123和456:

 

提交后,切换到Resend(重放)界面:

 

最新的请求在最上面,点击它,可以在右边看到详细信息。点击“Bruter”按钮:

 

软件自动切换到Bruter界面,并且自动发现username和password字段(如果使用了特殊的参数名,则手工从下拉列表中选中它)。Bruter提供了两种字典方式,一种是用户名和密码使用不同的字典,另一种是使用网络已泄漏的(用户名:密码)组合。点击”Go”按钮,启动猜解:

 

可以看到,可以登录的用户名和密码为 admin/password 。

切换到WebBrowser界面,输入猜解出来的用户名和密码,即可登录成功。

 登录之后,切换到DVWA Security设置页,检查一下安全级别是否为低(low),如果不是,修改为low,这样DVWA系统就是含有漏洞的版本了。

开始DVWA登录后的测试工作了:

 

登录之后,里面还有一个Brute Force的测试项,继续采用刚才的方式,随便输入用户名和密码提交,并在Resend界面找到该请求:

 

继续点击“Bruter”按钮:

 

这是一个GET方式请求的暴力猜解,同样,点击“Go”发起猜解尝试:

 

原来,这个测试项也使用了admin/password这组账号。

接下来,是命令注入测试:

 由于是在Windows平台下搭建的环境,所以串联一个Windows命令dir试试:

 

结果:

CSRF测试,不用使用工具,直接在不输入原口令的情况下修改口令:

  

接下来,重点关注一下SQL注入和跨站攻击脚本:

 切换到SQL Injection,然后点击WebCruiser的右上角“Scan URL”,结果:

 

发现一个SQL注入漏洞。在漏洞项上面单击右键,选择“SQL INJECTION POC”即可发起SQL注入利用工具:

 

这里,拿到了root用户在数据库中存储的口令密文。

继续SQL Injection Blind测试,切换到Web Browser,点开SQL Injection (Blind),“Scan URL”:

 

继续XSS Reflected,”Scan URL”:

 

发现一个跨站漏洞:

 

继续存储型跨站测试,“Scan URL”:

 

至此,DVWA中可以使用工具进行自动化测试的条目测试完毕,其它测试条目手工测试即可。

原文地址:https://www.cnblogs.com/-U2-/p/3846438.html