Понимание того, с чего начать восстановление WordPress, может быть достаточно сложной задачей. Ниже описана общая схема, которая поможет решить большинство проблем, хотя некоторые пункты могут изменяться, в зависимости от характера взлома/атаки.
- Сделайте резервную копию — даже если ваш сайт уже заражен, сделайте резервную копию – если ваша ситуация станет еще хуже, то можно вернуться к предыдущему состоянию. Сделайте полный backup. Сделать это можно двумя способами — сделать это в ручную (скачайте все файлы и сделайте экспорт SQL-баз через PhpMyAdmin) или с помощью плагинов —советую плагин BackWPup.
- Измените ключи и пароли доступа — прежде, чем начать очистку сбросьте секретные ключи WordPress api.wordpress.org/secret-key/1.1/salt в wp-config.php, поменяйте пароль администратора WordPress и пароль к базе данных.
- Запустите сканеры — по интересуйтесь какие есть плагины WordPress выполняющие функцию сканеров, я на в скидку могу посоветовать Theme Authenticity Checker (TAC). Сканеры сэкономят вам время и помогут найти какие-либо уязвимости или вредоносные коды. Но не стоит на них полностью полагаться.
- Переустановка WordPress — удалите все файлы в папке WordPress кроме файла wp-config.php и папки wp-content. Затем загрузите свежую версию WordPress. Отредактируйте wp-config-sample.php, изменяя шаблонные значения на актуальные значения ваших баз данных из вашего старого файла wp-config.php. Удалите старый файл wp-config.php замените его отредактированным wp-config-sample.php.
- Проверка папки контента —проверьте если что-то подозрительное в папке wp-content. Подпапка cache может быть главной подозреваемой. Поищите в папке контент, которого там не должно быть. Если не уверены в необходимости файлов — смело удаляйте. Их всегда можно восстановить из резервной копии.
- Проверка и переустановка плагинов — удалите не используемые плагины. Затем по порядку дезактивируйте, удалите, установите и активируйте все активные, на данный момент, и нужные плагины.
- Проверка шаблонов (тем) — удалите все шаблоны, которые не используються, включая стандартные. Затем внимательно изучите файлы ваших тем, обращайте внимание на подозрительные PHP-строки или ссылки на php\javascript файлы. Как правило они содержаться в файлах header.php, footer.php, functions.php, comments.php.
- Проверка Google’s Webmaster Tools — Google проверяет и фильтрует сайты, безопасность которых нарушена. Зайдите в Webmaster Tools google.com/webmasters и убедитесь что там нет предупреждений для ваших сайтов. Если же все таки есть, то удалите предупреждение и пошлите запрос на перепроверку.
Так же полезную информацию можно прочесть на WordPress Codex в записи “FAQ My site was hacked”: codex.wordpress.org/FAQ_My_site_was_hacked
Предотвращение
Гораздо проще предотвратить взлом, чем потом убирать его последствия. Вот некоторые шаги, которые можно совершить:
- Постоянно делайте бэкапы — озаботьтесь регулярным резервным копированием файлов WordPress и баз данных. Рекомендуется раз в неделю делать резервное копирование файлов, и раз в день базы данных. Плагин BackWPup вам в этом поможет.
- Мониторинг изменений файлов — установите плагин для наблюдения изменений файлов. На достаточно активном сайте это может быть не простой задачей. Но для сайтов с маленькой активностью это хороший инструмент. Обратите внимание на плагин WordPress File Monitor.
- Защита локальных машин — очень важно чтоб локальные машины были не заражены, используйте антивирусы и устанавливайте свежие обновления ОС и программ! Следите за новостями о уязвимостях. Ведь именно в зараженных компьютерах в большинство случаев крадутся пароли к FTP и консоли WordPress.
- Перенос сайта на специальный хостинг для WordPress — есть такие проекты как WPEngine.com и Zippykid.com. Они делают автоматическое ежедневное резервное копирование (и восстановление по надобности) и специализируются на информационной безопасности.