-
下载并修改DVWA
在https://codeload.github.com/ethicalhack3r/DVWA/zip/master下载DVWA,下载下来以后将DVWA-masterconfigconfig.inc.php.dist去掉.dist后缀,文件名改成config.inc.php,以文本方式打开config.inc.php,配置$_DVWA[ 'recaptcha_public_key' ] = '6LdK7xITAAzzAAJQTfL7fu6I-0aPl8KHHieAT_yJg';配置$_DVWA[ 'recaptcha_private_key' ] = '6LdK7xITAzzAAL_uw9YXVUOPoIHPZLfw2K1n5NVQ';,这个公私钥对是我百度到的,也可以自己去https://www.google.com/recaptcha/admin生成,这个公私钥对具体作用我不清楚,但是不写会报错。 -
准备VMwave kali
-
将VMwave下选择kali虚拟机,选择"编辑虚拟机设置",选择"网络适配器","网络连接"改为桥接模式。
-
在VMwave工具栏选择编辑,选择"虚拟网络编辑器",选择"更改设置",选择桥接模式的VMnet(一般是"VMnet0"),在"VMnet信息"的"桥接模式"选项下的"已桥接至"更改成自己正在使用的网卡。
-
在物理机系统(windows)使用win徽标键+R键打开"运行",输入
services.msc
,在"服务"中找到VMwave Workstation Server并启动,为了方便我们之后在物理机虚拟机之间移动文件。如果已经启动了就不用管了,如果无法启动,将物理机C:ProgramDataVMwarehostddatastores.xml删除后启动服务。 -
开启VMwave kali虚拟机,打开terminal,输入
gedit /etc/network/interfaces
,确保文件中网卡配置正确。
-
打开文件系统,进入/var/www/html路径,将修改好的DVWA-master拖入(可能会报错,多拖入几次就好了),右键点击DVWA-master选择在此解压。
-
-
准备lamp环境
DVWA靶场需要lamp环境,虽然kali自带lamp环境,但是因为我们需要的php7.3-gd无法用apt安装了,安装到的都是新版php7.4-gd,所以我们可以选择无视gd支持问题或者彻底删除php7.3安装新版php7.4,这里我们先无视,彻底删除重装php7.4我之后再写-
在terminal中输入
service apache2 start
开启apache服务 -
在terminal中输入
service mysql start
开启mysql服务
-
-
创建mysql数据库和用户
-
在terminal中输入
mysql -u root -p
使用系统用户登入,之后输入系统用户密码即可进入mysql。 -
在mysql中输入
create database dvwa character set utf8;
创建数据库,使用utf8是为了防止乱码,数据库名dvwa是为了和config.inc.php一致。 -
在mysql中输入
grant all privileges on dvwa.* to 'dvwa'@'localhost' identified by 'p@ssw0rd';
创建用户并授予操作dvwa数据库的权限,用户名和密码是为了和config.inc.php保持一致。 -
养成好习惯,凡是牵扯到用户的指令,用完以后输入
flush privileges;
刷新一下 -
在mysql输入
q
退出mysql
-
-
在物理机打开虚拟机中的DVWA靶场
-
在terminal中输入
ifconfig
(注意不是ipconfig),看桥接模式的网卡(eth0)的inet,我的是192.168.100.5
-
在物理机访问虚拟机eth0的inet,可以看到apache的页面,但是这个时候去访问DVWA会报403权限不足,需要我们打开terminal,在里面输入
chmod 777 -R /var/www
(实际搭建网页时777权限极度危险),这样就可以正常打开DVWA了。 -
因为解压时DVWA叫DVWA-master,而虚拟机ip是192.168.100.5,所以我们使用物理机访问192.168.100.5/DVWA-master这时我们跳转到的是setup.php,说明我们的配置有问题,标红的部分都是需要修改的。
-
首先我们在虚拟机的terminal输入
gedit /etc/php/7.3/apache2/php.ini
(是7.4还是7.3还是别的什么取决于你的php版本,可以使用ls /ect/php查看,如果有多个,就看看正在使用哪个,使用php -v查看)将allow_url_fopen和allow_url_include改为On(allow_url_fopen默认就是On),再在terminal输入service apache2 restart
重启apache使改动生效,这样第一个问题就解决了。
-
这里我去卸载php7.3,重新安装成php7.4了所以问题解决了,如果不需要php-gd提供的服务可以无视这个问题。没有问题以后点create/reset database
-
跳转到登陆界面以后用默认用户名密码(admin password)登录,在DVWA Security选择难度,新手从Low开始,submit使选项生效。
-