linux 搭建 dvwa 渗透测试环境
linux 安装 dvwa
1、分为4个部分,搭建dvwa渗透测试环境
本文基于centos 7.6 搭建 dvwa 渗透测试环境
- 安装一个linux系统
- 安装apache http server
- 安装mysql
- 安装php
- 最后安装并运行dvwa
2、安装centos 7.6
vmware安装redhat 7.6 操作系统
https://blog.csdn.net/OceanWaves1993/article/details/135418679?spm=1001.2014.3001.5502
3、安装apache http server (支持解析php网页文件)
3.1、安装apache http server
centos 7.6安装 Apache HTTP Server 2.4.58 https://blog.csdn.net/OceanWaves1993/article/details/136201456
3.2、配置apache http server 支持解析php网页文件
编辑httpd的配置文件
vi /usr/local/apache2/conf/httpd.conf
修改httpd.conf在文件中添加一行内容:AddType application/x-httpd-php .php
修改前

修改后

加上针对php的索引,如果没有该索引的支持,则无法解析用php编写的网页,在配置文件中添加对应索引
编辑httpd的配置文件
vi /usr/local/apache2/conf/httpd.conf
找到DirectoryIndex
修改前

修改后

修改完成httpd.conf后 重启httpd
/usr/local/apache2/bin/apachectl -k restart
测试验证 httpd 能否解析php网页文件
在httpd的web主目录下新建1个php文件 内容如下
cd /usr/local/apache2/htdocs
vi test.php
test.php内容如下
<?php
phpinfo();
?>

访问 http://httpd-server-ip:80/test.php
显示如下页面 就表示httpd 可以成功解析php网页文件

4、安装mysql
centos 7.6 安装mysql 按照这篇文章操作就行
银河麒麟v10 rpm安装包 安装mysql 8.35
5、安装php
5.1、依赖包安装
5.1.1、安装libpng
yum install libpng
yum install libpng-devel
此包作用是:支持php的 --enable-gd 特性,支持DVWA的图片相关测试。
5.1.2、安装python-devel python3-devel
libxml2 依赖python
yum install python-dev python3-dev
5.1.3、安装libxml2 2.9.4
php 8.3.19 依赖 libxml2 2.9.4
下载libxml2 2.9.4, https://download.gnome.org/sources/libxml2/2.9/
文件名:libxml2-2.9.4.tar.xz
sha256sum:21b2824f9ce56a72296f678103eed5a8446417c07e904e61748affa230ec9072
编译安装libxml2 2.9.4
cd /path/to/libxml2-2.9.4.tar.xz
tar -xJvf libxml2-2.9.4.tar.xz
cd libxml2-2.9.4
./configure --prefix=/usr/local/libxml2
make
make install
安装完成libxml2后,需要设置环境变量让系统能够找到新安装的 libxml2 库。
如何做呢?参考链接 https://stackoverflow.com/questions/57721752/how-do-i-upgrade-libxml2-to-version-2-9-9-in-centos-7
把原来的libxml库屏蔽掉
mv /usr/bin/xmllint /usr/bin/xmllint-2.9.1.bak
mv /usr/lib64/libxml2.so.2.9.1 /usr/lib64/libxml2.so.2.9.1.bak
在/etc/profile中添加自定义的LD_LIBRARY_PATH(指定手动安装的libxml2.9.4的库文件路径)
在/etc/profile中添加一行
export LD_LIBRARY_PATH=/usr/local/libxml2/lib
安装libxml2.9.4前


安装libxml2.9.4后

5.2、centos 7.6 安装 php 8.3.19 (含有mysql支持、含有apache http server支持)
下载链接: https://www.php.net/downloads.php
安装文档: https://www.php.net/manual/en/install.unix.apache2.php
解压压缩包
cd /path/to/php-8.3.19.tar.gz
tar -xzvf php-8.3.19.tar.gz
cd php-8.3.19/
./configure --prefix=/usr/local/php-8.3.19 --with-apxs2=/usr/local/apache2/bin/apxs --enable-gd --enable-mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql --with-mysql-sock=/var/lib/mysql/mysql.sock
–with-apxs2 作用是支持apache可以解析php网页

我们要知道–with-apxs2=/usr/local/apache2/bin/apxs 有什么影响,就是说我们要知道自己在做什么
这个选项会在apache的安装目录下生成libphp.so文件供apache调用,libphp.so提供给了apache解析php网页的能力。

那么apache是怎么调用libphp.so呢?
通过在apache的配置文件中配置要加载的模块 使得apache在启动时加载libphp.so。
查看apache配置文件httpd.conf
我们注意到在apache配置文件httpd.conf中 有两行关于加载libphp.so的配置
LoadModule php_module modules/libphp.so
#LoadModule php7_module modules/libphp7.so
libphp.so 指的是php 8.0版本的库文件
libphp7.so 指的是php 7.0版本的库文件
就是说通过安装不同版本的php 通过–with-apxs2=/usr/local/apache2/bin/apxs 选项可以为apache生成不同php版本的库文件 供apache启动时选择加载哪一种版本php库文件,很智能, apache不想加载的东西 在apache配置文件httpd.conf中注释掉即可 然后重启apache生效。

configure成功
然后顺序执行以下2条命令安装php
make
make install
make完成

make install 完成

查看php版本

把php加入到PATH环境变量中
编辑 /etc/profile 在最后面加入两行
PHP_HOME=/usr/local/php-8.3.19/
PATH=$PHP_HOME/bin:$PATH
vi /etc/profile

使得PHP环境变量生效
source /etc/profile
验证已经生效

5.3、配置php allow_url_include = on 、allow_url_fopen = on
cp /data/package/php-8.3.19/php.ini-development /usr/local/php-8.3.19/lib/php.ini
vi /usr/local/php-8.3.19/lib/php.ini
修改以下2个参数
allow_url_include = on
allow_url_fopen = on
6、安装并运行dvwa
下载dvwa 2,5 下载链接 : https://github.com/digininja/DVWA/tags

复制DVWA到apache httpd的web目录下
tar -xzvf DVWA-2.5.tar.gz
cp -r DVWA-2.5 /usr/local/apache2/htdocs/
cd /usr/local/apache2/htdocs/DVWA-2.5/
cp config/config.inc.php.dist config/config.inc.php
访问http://192.168.2.171/DVWA-2.5/setup.php

点击creat/reset database


访问http://192.168.2.171/DVWA-2.5/ 输入admin/password 登录

进入后将DVWA的安全等级修改为中或者低,只要不是高就行



至此完成DVWA安装,开始你的DVWA渗透测试之旅吧。
更多推荐
所有评论(0)