Как проверить и очистить WordPress от вредоносного кода (wp3.xyz)

Что произошло
Команда исследователей безопасности c/side обнаружила кампанию, направленную на WordPress‑сайты. По их отчёту, около 5 000 сайтов стали целями. Злоумышленники использовали домен WP3.XYZ, который применялся для сбора чувствительных данных — включая учётные данные администраторов — и для создания неавторизованных админ‑аккаунтов. После этого фейковые админы могли устанавливать опасные плагины на скомпрометированные сайты.

Важно: такие аккаунты и плагины часто заметны в коде или списках плагинов. Их можно найти и удалить, если знать, где искать.
Краткие определения
- MFA — многофакторная аутентификация: добавляет второй уровень проверки при входе.
- CSRF — межсайтовая подделка запроса: атака, при которой злоумышленник вынуждает браузер выполнить нежелательные действия.
Как быстро проверить, заражён ли ваш сайт
- Используйте публичные сканеры:
- PublicWWW.com — ищет фрагменты кода по всему сайту.
- URLScan.io — анализирует запросы и внешние обращения.
- Проверьте список пользователей WordPress (через админку или WP‑CLI):
wp user list --fields=ID,user_login,user_email,rolesИщите неизвестные админы (role = administrator).
- Просмотрите установленные и активные плагины:
wp plugin list --status=active- Поиск по коду темы и плагинов: ищите внешние вызовы к wp3[.]xyz или незнакомым доменам. Особое внимание — функциям, создающим пользователей, или тем файлам, которые изменялись недавно.
Немедленные меры защиты
- Заблокируйте домен на уровне сети и инструментов безопасности:
https://wp3[.]xyz- Включите или требуйте MFA для всех администраторов.
- Ограничьте создание новых пользователей только доверенным администраторам.
- Обновите ядро WordPress, темы и плагины до последних версий.
- Временно отключите неважные плагины до проверки.
Важно: блокировка домена — экстренная мера, она не заменяет полного расследования и очистки.
Пошаговый инцидентный план (Runbook)
- Сбор и сохранение данных (Containment):
- Сделайте полную резервную копию файлов и базы данных (снимок, только для анализа).
- Сохраните логи доступа и действий администратора.
- Локализация и устранение (Eradication):
- Удалите неизвестных админов через админку или WP‑CLI:
wp user delete --reassign= - Деактивируйте и удалите подозрительные плагины:
wp plugin deactivate bad-plugin
wp plugin delete bad-plugin- Проверьте и восстановите целостность файлов темы и ядра (замените изменённые файлы чистыми версиями).
- Восстановление сервиса (Recovery):
- Смените все пароли админов и ключи приложения (wp-config.php auth keys).
- Включите MFA и пересмотрите права доступа.
- Пост‑инцидентный анализ и отчёт (Lessons learned):
- Проанализируйте вектор компрометации: тема, плагин или сторонний скрипт.
- Зафиксируйте и обновите политики безопасности.
Критерии приёмки (как понять, что сайт чист)
- Нет незнакомых админов в списке пользователей.
- Нет подозрительных активных плагинов.
- В коде сайта отсутствуют вызовы к wp3[.]xyz и другим неизвестным доменам.
- Логи доступа не показывают повторных попыток создания пользователей.
- Проведённое сканирование внешними инструментами (PublicWWW/URLScan) не выявляет следов атаки.
Жёсткая защита и рекомендации по безопасности
- Включите Web Application Firewall (WAF) у хостера или в виде сервиса.
- Отключите редактирование файлов из админки (define(‘DISALLOW_FILE_EDIT’, true)).
- Настройте защиту от CSRF и проверяйте nonce в пользовательских формах.
- Используйте проверенные плагины из официального репозитория или коммерческих поставщиков с хорошей репутацией.
- Регулярно проводите аудит прав пользователей и удаляйте неиспользуемые учётные записи.
Роль‑ориентированные чеклисты
Для владельца сайта:
- Проверить списки пользователей и активные плагины.
- Заблокировать wp3[.]xyz в настройках хостинга/файрвола.
- Включить MFA для всех админов.
Для разработчика/администратора:
- Проанализировать и восстановить изменённые файлы ядра/тем.
- Проверить и удалить бэкдоры в темах и плагинах.
- Развернуть логи и выполнить поиск по внешним обращениям к wp3[.]xyz.
Для провайдера хостинга:
- Помогать в создании снимков и логов сервера.
- Ограничить создание новых системных пользователей до проверки.
- Применить серверный WAF и сетевые блокировки.
Что делать, если обычные меры не помогают
- Если вредоносный код повторно появляется — проверьте бэкапы и внешние сервисы, имеющие доступ (CI/CD, FTP, внешние централизованные плагины).
- Проверьте базу данных на скрытые опции и записи, создающие фоновые задачи или пользователей.
- Рассмотрите полную переустановку сайта с чистых исходников и ручное восстановление контента.
Мини‑методология расследования
- Сбор: снимок файлов, выгрузка базы данных, логи.
- Поиск признаков компрометации: неизвестные админы, внешние вызовы, изменённые файлы.
- Устранение: удалить доступы, удалить вредоносные файлы/плагины, заменить файлы ядра.
- Подтверждение: повторные сканирования, тесты доступа, проверка логов.
Быстрые сниппеты и команды
- Список пользователей:
wp user list --fields=ID,user_login,user_email,roles- Удаление пользователя и перенос контента:
wp user delete 123 --reassign=1- Список активных плагинов:
wp plugin list --status=active- Поиск по коду (на сервере):
grep -R "wp3[.]xyz" /var/www/htmlФакт‑бокс
- Цель кампании: примерно 5 000 целевых сайтов (по данным c/side).
- Быстрая защита: блокировка домена + MFA.
- Основные вектора: уязвимые плагины и темы третьих сторон.
Короткий глоссарий (1‑строчные определения)
- WAF — межсетевой экран приложений: фильтрует вредоносные веб‑запросы.
- WP‑CLI — интерфейс командной строки для управления WordPress.
- Бэкап — резервная копия файлов и базы данных для восстановления.
Заключение
Атаки на WordPress остаются частыми. Быстрое обнаружение (PublicWWW, URLScan), немедленная блокировка вредоносных доменов и тщательное расследование помогут минимизировать ущерб. После очистки укрепите сайт: MFA, WAF, обновления, ограничение доступа и регулярные аудиты.
Важно: если вы сомневаетесь в своих действиях, привлеките опытного специалиста по инцидентам или провайдера хостинга для помощи.
Похожие материалы
Типы баз данных Notion и как их использовать
Как скачать видео с Facebook — 7 способов
Отключить iCloud для Pages на iPhone, iPad и Mac
Максимум от Android TV: советы и трюки
Как найти все понравившиеся записи в Facebook