STEP1:从github下载dvwa
git clone https://github.com/ethicalhack3r/DVWA
Q:我要自己安装git吗?
A:kali不用啦,一般都自带有,但是普通的ubuntu和debian上是没有的哦。
Q:可以换个github网址吗?
A:ok!给你一个备选的!https://github.com/digininja/DVWA
STEP2:移动DVWA文件到/var/www/html/目录
cp -r DVWA/ /var/www/html/
Q:为啥要放在这个位置呢?
A:现在要在本机搭建一个apache+php+mysql的服务器, linux中apache服务器的网站站点存放在/var/www/html/,所以要把DVWA这个网站程序放在里边,这样就加入到了apache的服务器站点列表啦。
Q:为啥一定要cp复制,mv剪切可以吗?
A:我没有试哦,但是官方说最好不要,因为会造成程序文件权限不正确
STEP3: 进入到/var/www/html/目录,给DVWA权限
cd /var/www/html/
chmod 777 -R DVWA/
Q: chmod, 777, -R啥意思?
A:把DVWA下边所有目录和文件赋权‘读r4+写w2+执行x1=7’,给拥有者,用户组和其他用户3类人
Q: 怎么检查是否chmod成功?
A: 目录下ls -l命令查看权限 下边都是rwxrwxrwx或者drwxrwxrwx就ok啦(d是文件夹意思)
STEP4: 输入命令启动MySQL和apache
service apache2 start
service mysql start
STEP5: 输入命令查看端口有没别的程序被占用
netstat -anpt | grep 80
netstat -anpt | grep 3306
Q:anpt分别是显示什么?
A: a-all:列出 所有连接,监听和socket
n-port number:列出端口号
p-program:列出进程pid
t-tcp:列出tcp协议的服务
linux:
1-1023是程序保留端口
1024-4999:客户端程序分配的端口
5000-65535:服务器端程序分配的端口
Q: 如果apache的http80端口或者mysql的3306被别的程序占用了咋办?
A: 改呗~
Apache2的端口设置位置:vim /etc/apache2/ports.conf
apache1的位置:vim /etc/httpd/conf/httpd.conf
mysql的位置:vim /etc/mysql/my.cnf 添加一行port=2333
设置完端口号重启apache或者mysql
还有DVWA/config/config.php.inc里边的端口号也要从3306改到2333哦附:查看全部端口文件:vim /etc/services
STEP6: 授权给dvwa用mysql
Q:要是不授权直接进入dvwa 点击create/reset database创建数据库呢?
A: 会报错could not connect to database service, Please check the config file. Database error #1698, Access denied for user ‘dvwa’@‘localhost’.也就是说mysql不dvwa用啦,没权限,所以要进入mysql授权,下面开始~
mysql -u root
Q:-u是username, 默认初始是root, 那-p password密码不用输入吗?
A:刚开始使用mysql密码是没有设定的,可以不输入,要想看密码config文件的话,在/var/log/mysqld.log里边
grant all privileges on *.* to dvwa@localhost identified by “123456”;
意思就是把mysql中任意库的任意表授权给了只可以从localhost登录的dvwa,连接密码是123456
然后crtl+c退出mysql
STEP7: 改dvwa的config.inc.php文件
sudo vim /var/config/config.inc.php.dist
改‘db_password’=‘123456’
确认
‘db_user’=‘dvwa’
‘db_port’=‘3306’
再把config.inc.php.dist文件名改成config.inc.php
STEP8: 创建库,登录dvwa
打开浏览器,输入localhost/DVWA或者localhost/DVWA
进入setup.php页面,点击最下方的create/reset database创建名为dvwa的数据库,返回setup successful就说明dvwa和mysql搞在一起啦~
弹出dvwa登陆页面,用户名admin 密码password,进入!
Q: 你咋知道dvwa库的用户名密码是admin和password啊?
A:嘿嘿,mysql -u root进入mysql
use dvwa;
show tables;
select * from users;
可以看到好几个用户名和密码,选一个用户名,密码是md5加密的,放在md5解密网站上一解,就是password啦!
STEP9:
没9啦! 开始享受dvwa闯关之旅吧!!!😉
原文图片过程,请看这里https://blog.csdn.net/sr31275720281/article/details/105646959 谢谢作者 😉