Взлом интернет-магазина на WordPress через уязвимость в плагине
Клиент: Интернет-магазин детских товаров на WooCommerce.
Проблема: Утром клиент обнаружил, что сайт не открывается, а вместо главной страницы — чёрный экран с надписью «Hacked by ...». Паника, звонки от клиентов, репутация под угрозой. Хостинг уже приостановил аккаунт.
Что сделано:- Диагностика и анализ инцидента: Первым делом запросил у хостинга доступ к логам ошибок и дампу базы данных. В логах обнаружил множественные запросы к уязвимому скрипту в плагине для галерей, который не обновлялся 2 года. Злоумышленники использовали известную уязвимость для загрузки бэкдора (веб-шелла).
- Очистка и восстановление: Через FTP нашёл и удалил все подозрительные файлы (несколько скриптов в папке wp-content/uploads и в корне). Они и выполняли роль бэкдора и выводили страницу взлома. Восстановил все файлы ядра WordPress и плагинов из официальных источников, заменив ими подозрительные. Проверил базу данных — в ней были добавлены вредоносные JavaScript-вставки в описание товаров (которые перенаправляли на фишинг). Очистил их прямыми SQL-запросами. Удалил всех подозрительных пользователей с правами администратора.
- Закрытие уязвимостей и усиление защиты: Удалил тот самый уязвимый плагин, так как обновлений для него уже не было, и заменил его на современный аналог. Обновил ядро WordPress и все остальные плагины до актуальных версий. Сменил все пароли (к хостингу, FTP, админке, базе данных) на сложные. Настроил права доступа к файлам (644) и папкам (755).
- Работа с поисковыми системами: Сайт уже был помечен в Google Safe Browsing как опасный. Подал заявку на пересмотр через Google Search Console, приложив отчёт о проделанной работе. В Яндекс.Вебмастере проверил статус, подал заявку на снятие санкций.
- Профилактика: Настроил ежедневное резервное копирование на внешний диск и подключил плагин безопасности с файрволом и мониторингом целостности файлов.
- Результат: Сайт восстановлен и работает через 6 часов. Через 3 дня санкции с поисковиков сняты, трафик вернулся. Клиент получил полностью защищённый сайт и детальный план действий на будущее.