Как использовать WPScan для быстрого аудита безопасности WordPress

WPScan — это один из самых популярных инструментов для аудита безопасности сайтов на WordPress. Он позволяет быстро проверить сайт на наличие уязвимостей, слабых паролей, устаревших плагинов и тем. В этой статье мы подробно рассмотрим, как использовать WPScan эффективно, а также приведём примеры команд и способы интерпретации результатов.

Что такое WPScan и зачем он нужен

WPScan — это сканер уязвимостей, ориентированный исключительно на WordPress. Он поддерживает базу данных известных проблем с ядром, темами и плагинами WordPress, регулярно обновляемую сообществом. Использование WPScan помогает быстро выявить потенциальные точки входа для злоумышленников и своевременно принять меры по защите.

Главные задачи WPScan:

  • Поиск уязвимостей в ядре WordPress, темах и плагинах
  • Определение установленных плагинов и их версий
  • Проверка слабых паролей пользователей
  • Обнаружение скрытых страниц и точек входа

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

Установка WPScan на разные платформы

WPScan — это консольное приложение, написанное на Ruby. Для его работы необходим установленный Ruby и менеджер пакетов gem.

Установка на Ubuntu/Debian:

sudo apt update
sudo apt install ruby ruby-dev libcurl4-openssl-dev make gcc
sudo gem install wpscan

Установка на Windows: рекомендуется использовать Windows Subsystem for Linux (WSL) и установить через Linux-дистрибутив, либо использовать Docker-образ.

Установка через Docker:

docker pull wpscanteam/wpscan

Использование Docker удобно, если не хочется возиться с Ruby и зависимостями.

Базовые команды WPScan для аудита сайта

Для начала работы с WPScan необходимо знать базовые команды. Предположим, что у вас есть сайт example.com, который нужно проверить.

Простое сканирование сайта:

wpscan --url https://example.com

Эта команда просканирует сайт на наличие уязвимостей, определит темы и плагины.

Сканирование с информацией о пользователях:

wpscan --url https://example.com --enumerate u

Опция --enumerate u позволяет получить список пользователей WordPress, что может помочь проверить наличие слабых паролей.

Перечисление плагинов и их версий:

wpscan --url https://example.com --enumerate p

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

Пример комплексного сканирования

wpscan --url https://example.com --enumerate ap,u,t --api-token ваш_токен

Здесь ключ --enumerate ap,u,t означает проверку всех плагинов, пользователей и тем. Для работы с последней базой уязвимостей необходимо получить API-токен на официальном сайте WPScan.

Как анализировать результаты сканирования WPScan

После запуска сканирования WPScan выведет подробный отчёт, где будет указано:

  • Найденные плагины и темы с версиями
  • Обнаруженные уязвимости с описанием и ссылками на CVE
  • Информация о пользователях и потенциально слабых паролях

Важно внимательно изучить найденные уязвимости. Некоторые из них могут быть ложными срабатываниями, но большинство — реальная угроза. В отчёте обычно указывается уровень риска и рекомендации по обновлению или удалению уязвимых компонентов.

Пример вывода уязвимости

Title: Plugin xyz <= 1.2.3 - Authenticated Privilege Escalation
Fixed in: 1.2.4
References:
- https://wpscan.com/vulnerability/12345

В данном примере плагин xyz имеет уязвимость, исправленную в версии 1.2.4. Необходимо обновить плагин.

Автоматизация аудита безопасности с WPScan

Для регулярного мониторинга безопасности можно автоматизировать запуск WPScan с помощью cron или других планировщиков задач.

Пример скрипта wpscan-audit.sh для автоматического сканирования и отправки отчёта на почту:

#!/bin/bash

URL="https://example.com"
API_TOKEN="ваш_токен"
REPORT="wpscan_report_$(date +%F).txt"

wpscan --url $URL --enumerate ap,u,t --api-token $API_TOKEN > $REPORT

mail -s "WPScan Отчёт за $(date +%F)" youremail@example.com < $REPORT
<

Добавьте этот скрипт в cron для ежедневного или еженедельного запуска. Это поможет быстро реагировать на новые угрозы.

Дополнительные советы по безопасности WordPress с WPScan

WPScan — мощный инструмент, но его стоит использовать в комплексе с другими методами защиты:

  • Используйте плагины для ограничения количества попыток входа, например, Clearfy Pro, чтобы снизить риск brute force атак.
  • Настройте Web Application Firewall (WAF), например, WPCommunity предоставляет инструменты для интеграции с WAF.
  • Регулярно обновляйте ядро, темы и плагины, выявленные WPScan как уязвимые.
  • Используйте двухфакторную аутентификацию для пользователей с высокими правами.

Как расширить функциональность WPScan с помощью кода

WPScan можно интегрировать в собственные скрипты или инструменты безопасности. Например, можно написать PHP-функцию для запуска WPScan из кода и обработки результата.

function wpscan_ru_run_scan($url, $api_token) {
    $command = escapeshellcmd("wpscan --url $url --enumerate ap,u,t --api-token $api_token --format json");
    $output = shell_exec($command);
    if ($output) {
        $result = json_decode($output, true);
        return $result;
    }
    return false;
}

Эта функция запускает WPScan с параметрами, возвращая результат в формате массива для дальнейшего анализа или интеграции с панелью администратора.

Как автоматизировать удаление старых заказов в WooCommerce
18.03.2026
Как защитить WordPress от прохождения по слухам и сидтам: практические методы и кодовые решения
15.02.2026
Аудит и настройка прав доступа к файлам WordPress
15.04.2026
Как защитить WordPress от приватных регистраций: капча и плагины
18.02.2026
Как создать и настроить внешние API ключи в WordPress
10.12.2025