如果您想尝试该死的易受攻击的 Web 应用程序,请按照本指南学习如何在 Rocky Linux 8 上安装和设置 DVWA 作为运行 Web 应用程序安全测试的合法环境。
在 Rocky Linux 8 上安装和设置 DVWA
在 Rocky Linux 8 上安装 LAMP 堆栈
设置 DVWA 实验室的主要要求之一是启动并运行 LAMP Stack。 按照以下指南了解如何在 Rocky Linux 8 上安装 LAMP 堆栈。
请注意,我们使用 PHP 7.4。
在 Rocky Linux 8 上安装带有 MariaDB 10 的 LAMP Stack
安装额外的 PHP 模块和其他包;
dnf install php-gd git vim
创建 DVWA 数据库和数据库用户
完成 LAMP 堆栈安装后,继续创建 MariaDB DVWA 数据库和数据库用户。
mysql -u root -p
创建 DVWA 数据库。 相应地替换数据库名称。
create database dvwa;
创建 DVWA 数据库用户并授予所有权限。 相应地替换数据库用户。
grant all on dvwa.* to dvwauser@localhost identified by '[email protected]';
重新加载权限表并退出数据库。
flush privileges;
quit
在 Rocky Linux 8 上安装 DVWA
将最新版本的 DVWA 克隆到 Apache 默认网络根目录, /var/www/html
.
git clone https://github.com/digininja/DVWA.git /var/www/html/
检查内容 /var/www/html/
.
ls -1 /var/www/html/
about.php CHANGELOG.md config COPYING.txt docs dvwa external favicon.ico hackable ids_log.php index.php instructions.php login.php logout.php phpinfo.php php.ini README.md README.zh.md robots.txt security.php setup.php tests vulnerabilities
在 Rocky Linux 8 上配置 DVWA
设置 DVWA 数据库连接
首先重命名示例配置文件 /var/www/html/config/config.inc.php.dist
到 /var/www/html/config/config.inc.php
cp /var/www/html/config/config.inc.php{.dist,}
接下来,编辑配置文件, /var/www/html/config/config.inc.php
并设置数据库连接详细信息。
vim /var/www/html/config/config.inc.php
相应地替换数据库和数据库用户以及密码。
…
# Database variables ... $_DVWA = array(); $_DVWA[ 'db_server' ] = '127.0.0.1'; $_DVWA[ 'db_database' ] = 'dvwa'; $_DVWA[ 'db_user' ] = 'dvwauser'; $_DVWA[ 'db_password' ] = '[email protected]';
…
安装 reCAPTCHA 密钥
从 Google 服务生成重新捕获值。
生成后,只需复制并粘贴 站点密钥 和 站点密钥 到 $_DVWA[ 'recaptcha_public_key' ]
和 $_DVWA[ 'recaptcha_private_key' ]
分别。
…
# ReCAPTCHA settings # Used for the 'Insecure CAPTCHA' module # You'll need to generate your own keys at: https://www.google.com/recaptcha/admin $_DVWA[ 'recaptcha_public_key' ] = '6Lc4BsMUAAAAAKs72dKl4ZTVsA8giXiN7yqQcoVz'; $_DVWA[ 'recaptcha_private_key' ] = '6Lc4BsMUAAAAAI9v0sd_xvlh_PMXTcgtqRYJ6VEd';
…
Save 并退出配置文件。
重启 MariaDB
systemctl restart mariadb
配置 PHP
我们这里安装的 PHP 版本是 7.4。
php -v
PHP 7.4.6 (cli) (built: May 12 2020 08:09:15) ( NTS ) Copyright (c) The PHP Group Zend Engine v3.4.0, Copyright (c) Zend Technologies with Zend OPcache v7.4.6, Copyright (c), by Zend Technologies
继续编辑 /etc/php.ini
并进行以下更改。
vim /etc/php.ini
allow_url_include = On
– 允许远程文件包含 (RFI)allow_url_fopen = On
– 允许远程文件包含 (RFI)display_errors = Off
–(可选)隐藏 PHP 警告消息以使其不那么冗长
Save 并退出 PHP 配置文件
将 DVWA Web 根目录的所有权设置为 Web 服务器用户。
chown -R apache: /var/www/html
重新开始 Apache 和 MariaDB
systemctl restart httpd mariadb
配置 SELinux
您可能会遇到不允许 apache Web 服务器用户写入的情况 /var/www/html/external/phpids/0.6/lib/IDS/tmp/phpids_log.txt
以及在目录上, /var/www/html/config
.
诸如此类的错误:
- [User: apache] 可写文件/var/www/html/external/phpids/0.6/lib/IDS/tmp/phpids_log.txt:否
- [User: apache] 可写文件夹 /var/www/html/config:否
为了解决这个问题,我们只需将 SELinux 设置为 permissive。
setenforce 0
sed -i ‘s/=enforcing/=permissive/’ /etc/selinux/config
从浏览器完成 DVWA 设置
导航到 Web 浏览器并使用地址访问您的 DVWA, https://server-IP
.
在状态检查页面上,确保修复任何状态为红色的检查。
接下来,点击 创建/重置数据库 在底部设置 DVWA 数据库。 如果数据库已经存在,它将被重置。
之后,您将进入登录屏幕。
使用默认凭据登录: admin:密码.
您现在应该登陆 DVWA 欢迎页面。
你去吧。 这就是如何在 Rocky Linux 8 上设置 DVWA。您现在可以根据需要运行 Web 应用程序安全测试。 享受。
使用 Wazuh 和 VirusTotal 检测恶意文件
在 Ubuntu 18.04 上安装和使用 Nikto Web Scanner
在 Ubuntu 20.04 上安装和设置 Nessus Scanner