一、搭建LAMP环境

首先搭建好LAMP环境,如没配好参见“Linux+Apache+MySQL+PHP配置教程

或者使用官方推荐的XAMPP:https://www.apachefriends.org/download.html

二、安装DVWA

2.1 下载dvwa

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

直接下载:https://codeload.github.com/ethicalhack3r/DVWA/zip/master

2.2 解压安装

将下载的应用解压到apache默认的主目录/var/www/html:

unzip DVWA-master.zip -d /usr/www/html

2.3 启用功能

dvwa上的漏洞,需要些刻意的配置才能被利用。访问:http://172.0.0.1/dvwa如下,红色表示不能正常使用:

问题:PHP function allow_url_include: Disabled

处理:编缉/etc/php.ini将allow_url_include值由Off改为On

问题:PHP module gd: Missing

处理:yum install -y php-gd

问题:reCAPTCHA key: Missing

处理:编缉dvwa/config/config.inc.php

配置$_DVWA[ 'recaptcha_public_key' ]  = '6LdK7xITAAzzAAJQTfL7fu6I-0aPl8KHHieAT_yJg';

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

问题:Unable to connect to the database

处理:编缉dvwa/config/config.inc.php,将$_DVWA[ 'db_password' ]的值改成自己设的数据库root账号的密码

重启httpd(service httpd restart)刷新页面如下图:

点击上图中的Create/Reset Database后会创建数据库,完后自动跳转登录页面。

三、使用dvwa

3.1 登录dvwa

dvwa登录页面(改成自己主机IP):http://192.168.220.128/dvwa/login.php

默认用户名密码是:admin/password

3.2 界面介绍

登录后页面如下图,左侧是漏洞菜单,选择相应漏洞即进入存在该漏洞的页面。

3.3 渗透学习(以SQL Injection为例)

进入“SQL Injection”页面,如下图所示

“User ID”那个框显然是注入的框了,但是我们就是小白,就不懂怎攻击,怎么办呢?

练习题不会写,那就直接看答案啊。点击页面右下角“View Help”就可以查看。(View Source是查看当前实现submit查找这个功能的php源代码)

在上图中点击“View Help”,就会打开如下界面。其中黑条处就是注入代码(鼠标选中就可以看到是什么内容了)。

所以dvwa自己都把答案准备好了,完全没必要百度这道题怎么写。

3.4 切换编码安全等级

dvwa编码有“Low/Medium/High/Impossible”四个等级;其中Impossible级表示不存在漏洞,无法攻击。

即比如如果dvwa配置为Impossible级,那么3.3中的注入页面是没法注入的;或者反过来,如果你用各种方法都没法攻击dvwa,那要看看是不是把dvwa配置为了Impossible。

我们可以在页面右下角的”Security Level“得知当前dvwa配置的安全等级,然后可以通过”DVWA Security“配置dvwa的安全等级。

参考:

http://stackoverflow.com/questions/34274492/dvwa-setup-php-function-allow-url-include-disabled/34540293

dvwa安装、配置、使用教程(Linux)的更多相关文章

  1. webpack安装配置使用教程详解

    webpack安装配置使用教程详解 www.111cn.net 更新:2015-09-01 编辑:swteen 来源:转载 本文章来为各位详细的介绍一下关于webpack安装配置使用教程吧,这篇文章对 ...

  2. 安装配置fastDFS文件服务器 - Linux

    一.配置linux环境 1.新建虚拟机 把上次安装的CentOS7的文件复制一份,并改名 打开VM>打开虚拟机,选择刚才复制好的虚拟机,并启动.这样做的目的主要是为了保留一份最基础的母本,为了将 ...

  3. Emacs 安装配置使用教程

    Emacs 安装配置使用教程 来源 https://www.jianshu.com/u/a27b97f900f7 序|Preface 先来一篇有趣的简介:Emacs和Vim:神的编辑器和编辑器之神 - ...

  4. CentOS 6.3安装配置LAMP服务器(Linux+Apache+MySQL+PHP5)

    服务器系统环境:CentOS 6.3 客户端系统环境:Windows 7 ultimate(x86)sp1 简体中文旗舰版 ※  本文档描述了如何在Linux服务器配置Apache.Mysql.PHP ...

  5. Linux安装配置samba教程(CentOS 6.5)

    一.服务端安装配置samba 1.1 服务端安装samba yum install -y samba 1.2 创建共享目录并写入配置文件 以/samba为共享目录为例,为了更直观地观测我们在该目录中创 ...

  6. 【转】Android Studio安装配置学习教程指南 下载和安装--不错

    背景 相信大家对Android Studio已经不陌生了,Android Studio是Google于2013 I/O大会针对Android开发推出的新的开发工具,目前很多开源项目都已经在采用,Goo ...

  7. Windows上安装配置SSH教程(1)——知识点汇总

    1.是什么SSH? 维基百科:https://zh.wikipedia.org/wiki/Secure_Shell 其他博客:http://www.ruanyifeng.com/blog/2011/1 ...

  8. Clion+Cmake+Qt5+Qwt+msys2+MinGW在Windows下的安装配置使用教程

    摘要: CLion, a cross-platform C/C++ IDE. 本文主要介绍基于Clion作为IDE, MinGW作为编译器,CMake作为项目构建工具,开发基于Qt5.qwt的C++图 ...

  9. Windows上安装配置SSH教程(1)

    作者:feipeng8848 出处:https://www.cnblogs.com/feipeng8848/p/8559803.html 本站使用「署名 4.0 国际」创作共享协议,转载请在文章明显位 ...

  10. Ubuntu16.04安装配置Caffe教程(GPU版)

    推荐博客:https://www.linuxidc.com/Linux/2017-11/148629.htmhttps://blog.csdn.net/yggaoeecs/article/detail ...

随机推荐

  1. JavaScript重点知识(一)

    一.总括 基础知识: 1.变量 2.原型和原型链 3.作用域和闭包 4.异步和单线程 JS的API: 1.BOM,DOM操作 2.事件绑定 3.Ajax 4.JSOP 5.存储 二.基础知识 2.1知 ...

  2. _event_stop

    EventId 事件ID TeamId 事件玩家分组,攻守(防守为1,进攻为2),自定义阵营(_faction表自定义阵营ID),公会(公会guid) StopType 结束事件需要满足的条件,枚举类 ...

  3. HashMap源码解读

    1.HashMap  1.6解读 a).put,get,遍历方式参看 http://www.cnblogs.com/skywang12345/p/3310835.html#a23 需要注意的是,1.7 ...

  4. npm和yarn的区别

    npm和yarn的区别,我们该如何选择? 周一入职,同事JJ让我熟悉一下基于React的新项目.按照以往,我的步骤都是: git clone xxx npm install npm run dev 这 ...

  5. 关于vue2.0获取后端数据

    一.通过vue-rource完成异步请求: 其用法跟ajax用法差不多,也就是改变了一些语法格式.从获取路径到值的获取都是一样的,但是有一点是不同的就是ajax获取到的数据会自动转成json格式,而v ...

  6. Mac Python PyQt5 环境搭建

    pip install pyqt5 测试开发环境 在Terminal里敲下以下代码,如果没有报错就说明安装成功了. python -c "import PyQt5" 或是如下图,导 ...

  7. Python全栈开发-Day2-Python基础2

    本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1. 列表.元组操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义列表 ...

  8. HeadFIrst Ruby 第七章总结 hashes

    前言 这一章节介绍了 Ruby 中 hash 这一数据类型的用法和特征. Hash 的定义 与 array 的对比 最大的不同: An array can only use integers as i ...

  9. 提取出一个组装基因组的gap(N)和重复序列区域,保存为bed格式

    参见: Question: How to extract allnon-seqencedpositions from a genome (Fasta file)? test.fa >chr1 N ...

  10. 混合线性模型(linear mixed models)

    一般线性模型.混合线性模型.广义线性模型 广义线性模型GLM很简单,举个例子,药物的疗效和服用药物的剂量有关.这个相关性可能是多种多样的,可能是简单线性关系(发烧时吃一片药退烧0.1度,两片药退烧0. ...