
В данной статье мы рассмотрим процесс создания собственной пентест-лаборатории для WordPress на:
- Ubuntu 20.04
- Docker
- Windows с использованием XAMPP
Непосредственно тесты на проникновения можно делать с помощью WPScan, о котором мы уже писали.
WordPress в Ubuntu 20.04
Для работы WordPress необходимы:
- Apache
- База данных (MySQL / Mariadb)
- PHP
Apache
Запустим службу HTTP с помощью Apache, используя учетную запись с root-правами. Для этого выполним следующую команду в терминале:
apt install apache2

Установка MySQL
Для работы WordPress понадобиться сервер базы данных, в качестве которого мы собираемся выбрать MariaDB.
apt install mariadb-server mariadb-client

Следующая команда защитит базу данных от удаленного доступа с root-правами.
mysql_secure_installation
После чего нужно ответить на ряд вопросов:
- Введите текущий пароль для root (введите, если нет): нажимаем Enter
- Установить пароль root? [Y/n]: Y
- Новый пароль: вводим пароль
- Повторно введите новый пароль: повторяем пароль
- Удалить анонимных пользователей? [Y/n]: Y
- Запретить удаленный вход с root правами? [Y/n]: Y
- Удалить тестовую базу данных и получить к ней доступ? [Y/n]: Y
- Перезагрузить таблицы привилегий сейчас? [Y/n]: Y

Установить php
Завершаем этап подготовки установки php php-MySQL, для чего нужно выполнить следующую команду.
apt install php php-mysql

Создать базу данных для WordPress
Вводим команду для создания базы данных для WP:
mysql -u root -p CREATE DATABASE wordpress; CREATE USER 'wp_user'@'localhost' IDENTIFIED BY 'password'; GRANT ALL ON wordpress.* TO 'wp_user'@'localhost' IDENTIFIED BY 'password'; FLUSH PRIVILEGES; exit

Установка и настройка WordPress
Теперь пришло время загрузить и установить WordPress на нашем локальном хосте. С помощью команды wget мы получаем архив с установщиком wordpress и извлекаем его в каталог /var/www/html.
cd /var/www/html wget http://www.wordpress.org/latest.tar.gz tar –xvf latest.tar.gz

Данная команда изменит владельца каталога «wordpress» и даст разрешение на загрузку файлов.
chown -R www-data:www-data wordpress/ chmod -R 755 wordpress/ mkdir wordpress/wp-content/uploads chown -R www-data:www-data wordpress/wp-content/uploads

Теперь чтобы начать процесс установки необходимо ввести в браузере адрес сайта, который в нашем случае расположен на локальном хосте.
http://localhost/wordpress/
Первым этапом в процессе установки WordPress будет выбор языка.

Далее мы увидим окно с необходимыми для работы WP требованиями, но мы все уже подготовили заранее.

Чтобы WordPress правильно установился и работал необходимо ввести данные для подключения к созданной ранее базе данных.

Далее необходимо ввести данные нашего веб-сайта.

Стоит отметить, что запрашиваемые данные логина и пароля:
- Перед установкой WP – относятся к информации о базе данных.
- После установки WP – относятся к админке WordPress.
После этого откроется страница входа в админку WordPress.

Откройте файл wp-config.php в каталоге wordpress и вставьте в него следующие строки, чтобы получить доступ к странице веб-сайта.
define( 'WP_SITEURL', 'http://' .$_SERVER['HTTP_HOST'].'/wordpress'); define( 'WP_HOME', 'http://' .$_SERVER['HTTP_HOST'].'/wordpress');

Вот и все готово и наш WordPress для пентеста готов к работе.

Установка WordPress на Docker
Установка WordPress на Docker намного проще в плане предподготовки. Это очень простой и быстрый метод настройки WordPress. Необходимо обладать лишь базовыми знаниями о docker и его функциях.
Первым делом обновим репозиторий Ubuntu и установим последнюю версию docker.io с помощью команды apt:
apt install docker.io

Docker Compose используется для запуска нескольких контейнеров как одной службы. Давайте начнем установку docker-compose с помощью apt:
apt install docker-compose

Теперь мы должны создать каталог с именем "WordPress", а также файл .yml, который будет содержать необходимую для установки информацию.
mkdir wordpress cd wordpress/ nano docker-compose.yml

Теперь вставьте следующий текст в .yml и сохраните конфигурацию. Исходный код взят отсюда.
version: '3.3' services: db: image: mysql:5.7 volumes: - db_data:/var/lib/mysql restart: always environment: MYSQL_ROOT_PASSWORD: somewordpress MYSQL_DATABASE: wordpress MYSQL_USER: wordpress MYSQL_PASSWORD: wordpress wordpress: depends_on: - db image: wordpress:latest ports: - "8000:80" restart: always environment: WORDPRESS_DB_HOST: db:3306 WORDPRESS_DB_USER: wordpress WORDPRESS_DB_PASSWORD: wordpress WORDPRESS_DB_NAME: wordpress volumes: db_data: {}

Теперь запустим докер в режиме отсоединения с помощью команды:
docker–compose up -d

После выполнения всех пошаговых настроек переходим к локальному хосту через порт 8000. Теперь остается лишь установить WP, что мы уже проделывали ранее.

После завершения установки необходимо в админке WP ввести адрес своего локального хоста с номером порта, на котором работает ваш докер.

Вот и все. Теперь WordPress готов для пентестов.

WordPress на Windows
На Windows установить WordPress опять проще, чем на Ubuntu, ведь с помощью XAMPP мы можем сэкономить время на установке:
- Apache
- MySQL

Распакуем zip-архив WordPress в папку htdocs в папке xampp на диске C.

Теперь откроем PHPMYADMIN в браузере. Для этого зайдём в /localhost/phpMyAdmin, где создадим базу данных для WordPress.

Вводим данные доступа к базе данных.

Как и в предыдущих случаях устанавливаем WordPress.

Чтобы сделать движок более уязвимым для пентеста можно установить подобные плагины.

Также WordPress для пентеста всегда можно разместить на серверах AlexHost.
ссылка на оригинал статьи https://habr.com/ru/company/alexhost/blog/527968/

Добавить комментарий