简介

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

DVWA共有十个模块,分别是:

1.Brute Force(暴力(破解))
2.Command Injection(命令行注入)
3.CSRF(跨站请求伪造)
4.File Inclusion(文件包含)
5.File Upload(文件上传)
6.Insecure CAPTCHA (不安全的验证码)
7.SQL Injection(SQL注入)
8.SQL Injection(Blind)(SQL盲注)
9.XSS(Reflected)(反射型跨站脚本)
10.XSS(Stored)(存储型跨站脚本)
11.CSP (内容安全策略)

kali下安装DVWA

步骤:
  1. 首先去github上下载DVWA的安装包,网址为:https://github.com/ethicalhack3r/DVWA

2. 将下载好的压缩包解压并改名为dvwa,然后将其复制到 /var/www/html  文件夹中

3. 打开终端,执行以下命令:
            将apache2停止:service apache2 stop
            给dvwa文件夹相应的权限:chmod -R 755 /var/www/html/dvwa
            启动mysql服务: service mysql start
            打开mysql: mysql -u root -p
            创建数据库:create database dvwa;
            退出mysql:exit
            启动apache2服务:service apache2 start

打开浏览器,在地址栏中输入 http://127.0.0.1/dvwa/setup.php,如果报错可能是配置文件要复制一份把.dist去掉即可

点击下方的Create/Reset Database创建(恢复)数据库

提示不能连接Mysql,因为你的数据库用的是root用户,如果你用的是MariaDB那么就不起作用,解决方案是用其他用户登录。

新建数据库用户

create user 'dvwa'@'localhost' IDENTIFIED BY '';   #创建用户dvwa,密码为空
GRANT ALL PRIVILEGES ON *.* to 'dvwa'@'localhost'; #赋权
flush privileges;
quit

这里给dvwa赋权后每台电脑都可访问,但是还要开放3306端口、并在/etc/mysql/mariadb.conf.d/50-server.cnf注释掉bind-address

新建了用户,DVWA当然也要修改登录的用户名及配置,修改/var/www/html/dvwa/config/config.inc.php

把root改为dvwa,把p@ssw0rd改为空

重启apache2:   service apache2 restart

这次再点击Create/Reset Database时创建完成后到http://127.0.0.1/dvwa/login.php界面

接下来就可以使用   用户名: admin     密码: password   登录进行测试了!

下面就可以用这个web项目进行扫描和攻击测试啦~

配置更改

PHP function allow_url_include: Disabled

解决方案

在php.ini配置文件中改为On

vi /etc/php/7.2/apache2/php.ini

重启服务即可

service apache2 restart

如果还是不行继续修改

vi /var/www/html/dvwa/php.ini

PHP module gd: Missing - Only an issue if you want to play with captchas

解决方案

安装php-gd模块

apt-get install -y php-gd

安装后还是Missing,不过不影响后面应用的正常使用

reCAPTCHA key: Missing

解决方案

vi /var/www/html/dvwa/config/config.inc.php

进入https://www.google.com/recaptcha/admin生成公钥和私钥

配置$_DVWA[ 'recaptcha_public_key' ]  = '';

配置$_DVWA[ 'recaptcha_private_key' ] = '';

没有写权限

chmod 777 ./文件(文件夹)

改其他配置文件

解决方案

find / -name php.ini   #找出所有配置文件
vi #更改所有php.ini中的allow_url_fopen和allow_url_include

kali之DVWA的更多相关文章

  1. Kali部署DVWA和OWASPBWA

    自己的备忘录,这里记录Kali部署DVWA和OWASPBWA,其中遇到的问题会在下一篇文章记录 DVWA(Damn Vulnerable Web App)是一个基于PHP/MySql搭建的Web应用程 ...

  2. Web安全学习笔记之Kali部署DVWA和OWASPBWA

    0x0 前言 kali安装完成,下面要进行实战操作了,喵~~(OWASPBWA请直接跳到第八部分) #既然你诚心诚意的问了,我们就大发慈悲的告诉你! #为了防止世界被破坏! #为了守护世界的和平! # ...

  3. kali linux DVWA config 问题解决方案

    1.下载DVWA之后解压到 var/www/html目录下 unzip DVWA-master.zip -d /usr/www/html 2.配置 打开终端,执行以下命令: 将apache2停止:se ...

  4. Web侦察工具HTTrack (爬取整站)

    Web侦察工具HTTrack (爬取整站) HTTrack介绍 爬取整站的网页,用于离线浏览,减少与目标系统交互,HTTrack是一个免费的(GPL,自由软件)和易于使用的离线浏览器工具.它允许您从I ...

  5. kali linux 2.0下搭建DVWA渗透测试演练平台

    DVWA (Dam Vulnerable Web Application)DVWA是用PHP+MySQL编写的一套用于常规WEB漏洞教学和检测的WEB脆弱性测试程序.包含了SQL注入.XSS.盲注等常 ...

  6. kali上部署dvwa漏洞测试平台

    kali上部署dvwa漏洞测试平台 一.获取dvwa安装包并解压 二.赋予dvwa文件夹相应权限 三.配置Mysql数据库 四.启动apache2和mysql服务 五.在网页配置dvwa 六.登陆到D ...

  7. kali 2.0下搭建DVWA环境

    DVWA (Dam Vulnerable Web Application)DVWA是用PHP+Mysql编写的一套用于常规WEB漏洞教学和检测的WEB脆弱性测试程序.包含了SQL注入.XSS.盲注等常 ...

  8. 小白日记48:kali渗透测试之Web渗透-XSS(二)-漏洞利用-键盘记录器,xsser

    XSS 原则上:只要XSS漏洞存在,可以编写任何功能的js脚本 [反射型漏洞利用] 键盘记录器:被记录下的数据会发送到攻击者指定的URL地址上 服务器:kali 客户端 启动apache2服务:ser ...

  9. 小白日记43:kali渗透测试之Web渗透-SqlMap自动注入(一)-sqlmap参数详解TARGET

    SqlMap自动注入(一) sqlmap是一款非常强大的开源sql自动化注入工具,可以用来检测和利用sql注入漏洞[动态页面中get/post参数.cookie.HTTP头].它由Python语言开发 ...

随机推荐

  1. 软件开发的podcast

    目录 中文 喜马拉雅 https://www.ximalaya.com/ SingularFM 8个开发者值得一听的英文 Podcast https://zhuanlan.zhihu.com/p/24 ...

  2. curl 参数配置详解

    第一类:对于下面的这些option的可选参数,value应该被设置一个bool类型的值: CURLOPT_AUTOREFERER当根据Location:重定向时,自动设置header中的Referer ...

  3. 爬虫中Selenium和PhantomJS

    Selenium Selenium是一个Web的自动化测试工具,最初是为网站自动化测试而开发的,类型像我们玩游戏用的按键精灵,可以按指定的命令自动操作,不同是Selenium 可以直接运行在浏览器上, ...

  4. Spring+SpringMVC+Spring Data JPA完美整合

    使用Maven实现SSS框架的整合. 方便记录,专门建了一个pom项目用来整合SSS框架所用的jar包 1.POM项目,作为父级项目,记录整个整合中的依赖jar包pom文件 <project x ...

  5. MySQL 5.7 虚拟列 (virtual columns)(转)

    原文地址:https://www.cnblogs.com/raichen/p/5227449.html 参考资料: Generated Columns in MySQL 5.7.5 MySQL 5.7 ...

  6. sqlserver2012 用户指定数据库访问权限

    这样 用户进入的时候 就只能访问指定数据库 点击其他 显示

  7. iOS开发 判定某个时间是否属于这个时间段

    - (BOOL)isBetweenDate { //设置的是中国时间 NSString *startTime=@"13:01"; NSString *expireTime=@&qu ...

  8. 大数据 -- Hadoop集群环境搭建

    首先我们来认识一下HDFS, HDFS(Hadoop Distributed File System )Hadoop分布式文件系统.它其实是将一个大文件分成若干块保存在不同服务器的多个节点中.通过联网 ...

  9. 【bat批处理】批量执行某个文件夹下的所有sql文件bat批处理

    遍历文件夹下所有的sql文件,然后命令行执行 for /r "D:\yonyou\UBFV60\U9.VOB.Product.Other" %%a in (*.sql) do ( ...

  10. VC++ 学习笔记(六):简单C++

    到现在,我觉得终于找到学习和使用C++的基本原则了——务必简单.将其看成一个带类的C,或者将其看做标准库下的C++. C++太复杂——其实这种复杂性,所有语言都有,只是多数语言都隐藏了这种复杂性,只有 ...