Как установить dvwa на ubuntu

Обновлено: 02.07.2024

На какой либо внешний сервер DVWA ставить не рекомендуется, так как оно "чертовски уязвимо", и будет угрожать безопасности этого веб сервера. Разумнее устанавливать приложение для тестирования в гостевую систему к kali, а ещё лучше - в отдельную виртуальную машину. В последнем случае мы можем предоставить приложению любое требуемое ему окружения и безболезненно делать downgrade любых пакетов без ущерба для других компонентов. К примеру, если вы занимаетесь тестированием веб приложений, то вполне вероятно, что вам потребуется с десяток виртуальных машин с веб серверами на разных платформах и разными версиями пакетов (например, разнообразные комбинации Windows, Linux, Apache, Nginx, PHP, MySQL).

Для начала переместимся в директорию для сайтов:

Далее скачаем последнюю версию из репозитория

Можно склонировать репозиторий при помощи git, но нам на самом интересует только последняя версия приложения, так что это необязательно.

Далее нужно разархивировать скачанный файл:

Теперь переименуем папку, чтобы было удобнее использовать её путь:

Далее нужно, чтобы Apache узнал о том, что у нас есть такой веб сайт. Сделаем его сайтом по умолчанию, который слушает 127.0.0.1. Открываем настройку сайта по умолчанию и меняем DocumentRoot с /var/www/html на /var/www/dvwa. Можно для этого использовать mcedit (утилита для редактирования файлов, включённая в состав Midnight Commander), или любой другой текстовый редактор, в том числе с графической оболочкой - например, LeafPad, включенный в Kali Linux.

Отлично! Осталось запустить Apache с применёнными изменениями:

Так же нужно запустить MySQL, который по умолчанию выключен:

Отлично! Теперь, открыв встроенный в Kali браузер (Firefox), вы можете ввести адрес 127.0.0.1 и увидеть следующую страницу:


Неплохо, однако так у нас ничего работать не будет. Пойдём по проблемам сверху вниз:

"PHP function allow_url_include: Disabled" - идём в файл настроек PHP

И включаем там флаг allow_url_include, делая наше приложение более уязвимым.

Далее нужно поставить модуль php gd. Для этого сначала мы обновим базу данных репозиториев, затем поставим этот пакет:

В процессе установки, скрипт установщик может вас спросить, не хотите ли вы обновить свой файл настроек PHP на стандартный. Нет, вы не хотите - нужно оставить локальную копию. После установки для применения изменений нужно перезапустить apache:

Далее мы видим, что приложение использует некий свой пароль для подключения из под пользователя root к базе MySQL. Подключаться из-под root это плохая практика - но на это у нас и "чертовски уязвимое приложение". Так что добавим дыр, убрав пароль для root пользователя MySQL в файле настроек приложения:

Наше приложение так же будет использовать сервис reCAPTCHA. Для этого ему понадобятся ключи для этого сервиса, которые можно получить по этому адресу и добавить в тот же файл настроек приложения, которые мы только что редактировали.

Ну и наконец нам нужно выдать права на запись файлов. Если бы мы настраивали нормальное приложение, то создали бы для него специального пользователя, дали бы права apache читать и писать файлы этой группы. Но так как мы говорим о чертовски уязвимом приложении, то логично будет сделать максимально неправильно:

И этим самам мы дали возможность кому угодно читать, писать и испольнять файлы приложения.

Так же вы можете заметить ошибку "PHP module mysql: Missing" - но это старое наследие и текущая версия приложения успешно работает без расширения mysql, которое запрещено в PHP в версии от 7. Если бы нам пришлось включать это расширение, то пришлось бы ставить PHP более старой версии примерно вот так, что не сложно, но нам не требуется в данном случае.

Если всё выполнено - нажимаем кнопку - "create/reset database", и попадаем в форму ввода пароля, где вводим admin/password и можем наконец приступить к тестированию.


Мануал

Не пропустите: настройте собственную среду тестирования проникновения (DVWA) на свой Kali Linux

ПРЕДУПРЕЖДЕНИЕ!

Damn Vulnerable Web Application чертовски уязвим!

Не загружайте его в общедоступную html-папку хостинг-провайдера или на любые серверы, обращенные к Интернету, поскольку они будут скомпрометированы.

Рекомендуется использовать виртуальную машину (например, VirtualBox или VMware), которая настроена на сетевой режим NAT.

В гостевой машине вы можете загрузить и установить XAMPP для веб-сервера и базы данных

Загрузите и установите в качестве контейнера Docker

Запустите информацию о докере, чтобы проверить драйвер хранилища.

Если это не aufs, пожалуйста, измените его как таковой.

Для каждой операционной системы есть инструкции, как это сделать, но они совершенно разные, поэтому мы не будем здесь описывать.

DVWA доступен либо как пакет, который будет запускаться на вашем собственном веб-сервере, либо как Live CD:

Убедитесь, что файл config/config.inc.php существует.

Только с config.inc.php.dist настроек будет недостаточно, и вам придется отредактировать его в соответствии с вашей средой и переименовать его в config.inc.php.

Windows может скрывать конечное расширение.

Windows + XAMPP

XAMPP является очень простой в установке Apache Distribution для Linux, Solaris, Windows и Mac OS X.

В пакет входят веб-сервер Apache, MySQL, PHP, Perl, FTP-сервер и phpMyAdmin.

Пакеты Linux

Если вы используете дистрибутив Linux на базе Debian, вам нужно будет установить следующие пакеты (или их эквивалент):

Настройка базы данных

Чтобы настроить базу данных, просто нажмите кнопку «DVWA Settings» в главном меню, затем нажмите кнопку «СCreate / Reset Database ».

Это создаст / сбросит базу данных .

Этот конфиг отличается от config.inc.php.dist, который является примером файла.

По умолчанию для переменных задано следующее:

Обратите внимание, что если вы используете MariaDB, а не MySQL (MariaDB по умолчанию используется в Kali), то вы не можете использовать пользователя root для базы данных, вы должны создать нового пользователя базы данных.

Чтобы сделать это, подключитесь к базе данных как пользователь root, затем используйте следующие команды:

Другая конфигурация

В зависимости от вашей операционной системы, а также от версии PHP вы можете изменить конфигурацию по умолчанию.

Расположение файлов будет различным для каждой машины.

Разрешения для каталогов

Конфигурация PHP:

Файл: config/config.inc.php:

Исправление ошибок

+ Q. Command Injection не работает.
-А. Apache может не иметь достаточно высоких привилегий для запуска команд на веб-сервере. Если вы используете DVWA под Linux, убедитесь, что вы вошли в систему под учетной записью root. В Windows войдите как Администратор.


Мануал

GVM ранее назывался OpenVAS.

Greenbone Vulnerability Manager и OpenVAS широко используются по всему миру, включая экспертов по безопасности и обычных пользователей.

В этой статье мы покажем, как установить и настроить GVM в Ubuntu 20.04, чтобы убедиться, что ваши серверы защищены от атак.

Базовая система

Мы настроим Greenbone Vulnerability Manager 20.08 с базовой установкой системных пакетов на Ubuntu 20.04.

Установим необходимые компоненты

Сначала установите следующие пакеты зависимостей.

Создадим пользователя GVM

Вставьте следующие команды в терминал, чтобы создать пользователя gvm, который будет использоваться в процессе установки и компиляции:

Теперь войдите от пользователя gvm.

Скачаем и установим программное обеспечение (GVM)

Установим gvm-libs (GVM)

На этом шаге мы скомпилируем gvm-lib из github:

Установим openvas-smb (GVM)

Теперь войдите в каталог openvas-smb и скомпилируйте исходный код:

Установим сканер (GVM)

Как и в предыдущих шагах, мы создадим и установим сканер openvas:

Настроим redis для установки OpenVAS (root)

Теперь мы должны выйти из текущего сеанса, чтобы вернуться к привилегированному пользователю, набрав «exit» в терминале.

Теперь вставьте в терминал следующий код:

Обновим NVT (GVM)

Теперь мы запустим greenbone-nvt-sync, чтобы обновить базу уязвимостей.

Сначала вернитесь к сеансу пользователя GVM:

Если вы получаете ошибки тайм-аута, скорее всего, на пути есть брандмауэр.

Обязательно откройте TCP-порт 873.

Это занимает очень много времени, поэтому вам придется набраться терпения.

Загрузим плагины в Redis с OpenVAS (GVM)

Это может занять некоторое время в зависимости от вашего оборудования и не дает обратной связи при запуске команды.

Менеджер установки (GVM)

Теперь войдите в каталог gvmd, чтобы собрать и установить Greenbone Manager:

Настроим PostgreSQL (пользователь Sudoers)

Переключитесь на пользователя в sudoers (не используйте для этого root или gvm).

Выполняйте по одной строке за раз.

Настроим сертификаты (GVM)

Введите по одной строке за раз:

Создадим пользователя-администратора (GVM)

Не забудьте сменить пароль:

Настройка и обновление фидов (GVM)

Чтобы фиды обновлялись полностью, нам нужно установить «Feed Import Owner» на UUID администратора.

Сначала найдите UUID нового пользователя-администратора

Следующие три команды выполняйте по очереди.

. Эти команды также займут некоторое время.

Установим gsa (GVM)

Как и в предыдущих шагах, войдите в папку gsa и скомпилируйте исходный код gsa:

Hello there, today we are going to learn how to install and configure DVWA lab on Ubuntu 18.04 server.

DVWA has been defined as a damn vulnerable PHP/MySQL based web application whose main goals are to aid security professionals to test their skills and tools in a legal environment, help web developers better understand the processes of securing web applications and aid teachers or students to teach or learn web application security respectively in a class room environment.

Install and Configure DVWA Lab on Ubuntu 18.04

Installing DVWA on Ubuntu 18.04

To setup DVWA on Ubuntu 18.04 server, step through the following procedure.

Update and upgrade all packages on your server.

One the upgrade is done, we are going to install the basic components of LAMP stack i.e Apache, MySQL, and PHP. Therefore you can check our previous article on how to install LAMP Stack on Ubuntu 18.04.

Once you have had LAMP Stack, proceed as follows.

Download DVWA

DVWA is available either as a package that will run on your own web server or as a Live CD. In this guide, we are going to use DVWA package.

We are going to install DVWA on the Apache web root directory, /var/www/html . Therefore you have to remove the default index.html file.

Once that is done, clone the latest version of the DVWA to some directory, say /tmp by running the command below;

The required DVWA source code files are now available under /tmp/DVWA. You need to move or copy these files to Apache default web root directory as shown below.

You can now verify that all the DVWA source code files are under the Apache Web root directory.

Configure DVWA on Ubuntu 18.04

Set Database connection details

Next, we are going to configure DVWA database connection details. You will notice that the DVWA configuration file named /var/www/html/config/config.inc.php.dist . Therefore, rename this configuration file to /var/www/html/config/config.inc.php

Note, if you are using MariaDB rather than MySQL, you can’t use the database root user and therefore you must create a new database and the database user using the commands below;

Once you are done creating dvwa database user, edit the DVWA configuration and adjust the database configuration settings such that your configuration looks like;

Save the configuration file and restart MySQL.

Configure PHP

The version PHP installed in our case here is 7.2.

  • allow_url_include = on – Allows for Remote File Inclusions (RFI)
  • allow_url_fopen = on – Allows for Remote File Inclusions (RFI)
  • safe_mode = off – (If PHP <= v5.4) Allows for SQL Injection (SQLi)
  • magic_quotes_gpc = off – (If PHP <= v5.4) Allows for SQL Injection (SQLi)
  • display_errors = off – (Optional) Hides PHP warning messages to make it less verbose

File Permissions

Make the following folder and file writeable by the web service for File Uploads and PHPIDS respectively.

In short, you can change the ownership of the Apache web root directory as shown below;

Now locate the IP address of your server and navigate to the web browser and type the IP address of your web server on the address bar to access your DVWA. See the screenshot below.

Install and Configure DVWA Lab on Ubuntu 18.04

If your are using MariaDB, then you will get the login page directly.

It means you are missing the PHP mysqli package. Install the package as shown below and restart Apache;

    PHP module gd: Missing

Once you are done with configurations, restart both Apache and MySQL

Go back to your web browser and reload the page and everything should be fine now.

Install and Configure DVWA Lab on Ubuntu 18.04 server

Create Database for DVWA

Now, you have to create the DVWA database to ensure the success of your exercise. Click the button Create/Reset Database at the bottom of your web page. You may encounter the following error;

Install and Configure DVWA Lab on Ubuntu 18.04 server

The error above is due to wrong database connection details. You can verify the same as shown below;

Therefore, login to your mysql reconfigure it as follows;

Drop the root user;

Recreate root user;

Run the command below to reload the database grant tables and quit DB connection.

Restart MySQL service

Before you can navigate back to the web UI, verify that you can now connect to the DVWA DB with the set login credentials;

If all is well, then it should be able to see that the database has been created on the Web UI.

Install and Configure DVWA Lab on Ubuntu 18.04 server

If all is well, you will be redirected to the login page.

Install and Configure DVWA Lab on Ubuntu 18.04 server

You can now login to your DVWA server using the credentials; user admin passord: password .

Install and Configure DVWA Lab on Ubuntu 18.04

To wrap, we have successfully learnt Install and Configure DVWA Lab on Ubuntu 18.04 server. You can now hunt for the vulnerabilities. We hope this article helped. Happy vulnerability hunting!

Читайте также: