从零开始搭建CS架构测试靶机DVTA,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

由于工作需要,客户测试需求不再仅限于网页端B/S架构系统测试,于是开始学习如何测试C/S系统,也就是安装在本地的客户端。同DVWA一样,C/S架构也有一个测试环境,即DVTA。奇怪的是,DVTA的关注者远不如DVWA关注者数量那么多,搜DVWA,从各个难度的教程到代码审计,各个论坛都有不少人发表了自己的见解,然而在网上搜索DVTA该关键字,相关结果中文信息竟然连一页都不到。好在还是有网上大佬写了相关的教程,从搭建靶机,到如何测试,再到工具使用。这篇文章,并非从大佬直接照搬过来,除教程以外,还记录下我在搭建DVTA(包括数据库)时踩过的坑,用来给后人提供解决问题的思路及方法。废话不多说,马上开始。

      首先你需要准备的是:一个虚拟机用来安装数据库(主机也可,虚拟机最优),DVTA放在本机进行测试(其实真实测试时最好的情况是两个虚拟机,一个搭建数据库一个用来测试系统,这样的好处是提高测试结果的准确性,)。数据库必须为SQL SERVER,版本最好为SQL SERVER 2008 EXPRESS。我下载的是SQL SERVER 2008 developer,因为我发现其余版本在安装时都与教程不符,所以在和懂数据库的研发同事讨论后,索性下载了较完整的developer版。下载完成,进行安装。

从零开始搭建CS架构测试靶机DVTA-风君雪科技博客      

后面会进行自检安装环境,此处可能会出现失败或警告,若出现并无法进行下一步时,请自行百度查找解决办法,一般来说这些问题都很好解决。完成后确定。

从零开始搭建CS架构测试靶机DVTA-风君雪科技博客点击安装后,程序提示正在安装支持文件。

从零开始搭建CS架构测试靶机DVTA-风君雪科技博客     

接下来可能会有一个防火墙警告,实测不管他不影响使用,若自己修改过防火墙策略的可能此处不会有此提示,继续下一步。

从零开始搭建CS架构测试靶机DVTA-风君雪科技博客       

 此处根据需要自行选择,若首次安装的话直接进行下一步即可。后面会接着几个窗口,如填写序列号等,都和普通程序安装一样,直接进行下一步即可(序列号请自行寻找渠道获取)。

从零开始搭建CS架构测试靶机DVTA-风君雪科技博客

直到此窗口,程序提示安装功能选择时,为了保证尽可能的不出错,应全选,继续下一步。

从零开始搭建CS架构测试靶机DVTA-风君雪科技博客     

下一步会选择新建一个实例。若你正在使用一个数据库的话,那么就选择新建一个。不过这篇教程是针对新手的,多数都直接选择默认实例安装即可。

从零开始搭建CS架构测试靶机DVTA-风君雪科技博客

从零开始搭建CS架构测试靶机DVTA-风君雪科技博客

此处按照图中设置即可。

      下一步比较重要,设置数据库的账户密码。按照靶机需要,将管理员账户(账户名为sa)密码设置为p@ssw0rd。然后点击添加当前用户,将你当前windows的账户信息添加进去,进行下一步。

从零开始搭建CS架构测试靶机DVTA-风君雪科技博客    

接下来连点两三个下一步(都是无关痛痒的设置),直到最后一步,无需再进行其他设置,直接点安装即可。

从零开始搭建CS架构测试靶机DVTA-风君雪科技博客

安装完成,点击关闭即可。

从零开始搭建CS架构测试靶机DVTA-风君雪科技博客    

接下来需要往数据库中添加测试账户信息。点击开始菜单,找到图中的数据库管理端。

从零开始搭建CS架构测试靶机DVTA-风君雪科技博客输入密码p@ssw0rd登录数据库。

从零开始搭建CS架构测试靶机DVTA-风君雪科技博客       

右键左侧“数据库”,选择新建数据库,弹出新建数据库窗口,填写数据库名称为DVTA(之前我已经建立了一个数据库,此处为了不混淆我命名为DVTA2),点击确定。

从零开始搭建CS架构测试靶机DVTA-风君雪科技博客      

接下来要新建两个表来添加数据。左上角点击新建查询,并确保弹出的窗口上标签页为你新建的数据库名称(DVTA)。

从零开始搭建CS架构测试靶机DVTA-风君雪科技博客

然后在弹出的窗口分别输入如下指令:

CREATE TABLE "users" (

"id" INT NOT NULL,

"username" VARCHAR(100) NOT NULL,

"password" VARCHAR(100) NOT NULL,

"email" VARCHAR(100) NULL DEFAULT NULL,

"isadmin" INT NULL DEFAULT '0',

PRIMARY KEY("id")

)

CREATE TABLE "expenses" (

"id" INT NOT NULL,

"email" VARCHAR(100) NOT NULL,

"item" VARCHAR(100) NOT NULL,

"price" VARCHAR(100) NOT NULL,

"date" VARCHAR(100) NOT NULL,

"time" VARCHAR(100) NULL DEFAULT NULL,

PRIMARY KEY("id")

)

输入完成后,点击上方执行。提示命令已成功完成

从零开始搭建CS架构测试靶机DVTA-风君雪科技博客

右键左边列表,点击刷新,发现表已成功添加。

从零开始搭建CS架构测试靶机DVTA-风君雪科技博客 

接下来需要添加数据。继续新建查询,输入以下语句并点击执行:

INSERT INTO users values('0','admin','admin123','admin@damnvulnerablethickclientapp.com',1)

INSERT INTO users values('1','rebecca','rebecca','rebecca@test.com',0)

INSERT INTO usersvalues('2','raymond','raymond','raymond@test.com',0)

从零开始搭建CS架构测试靶机DVTA-风君雪科技博客       

接下来我们查看一下表格数据是否已经添加完成。右键users表,点击“选择前1000行”,发现数据已经添加成功。到此数据库的建立已经完成。

从零开始搭建CS架构测试靶机DVTA-风君雪科技博客      

接下来进入DVTA文件夹,打开config文件,路径为dvta-master\dvta-master\DVTA\DVTA\bin\Release\DVTA.exe.config,若没有安装阅读器,右键打开方式,选择记事本打开也可。将其中的数据库地址修改为你搭建靶机的地址(若未在虚拟机上搭建数据库,那么此处填写本机ip即可)。

从零开始搭建CS架构测试靶机DVTA-风君雪科技博客     

自此,所有搭建步骤结束,接下来测试是否搭建成功。打开Release文件夹下的DVTA.exe,并填写数据库中存在的账户信息,如admin/admin123。

从零开始搭建CS架构测试靶机DVTA-风君雪科技博客 

登录成功,见到如下窗口并没有其他报错的话,即靶机搭建成功。

从零开始搭建CS架构测试靶机DVTA-风君雪科技博客