Как может быть взломан сайт на WordPress.
Есть много причин, почему сегодня WordPress является одной из наиболее часто используемых систем управления контентом (CMS) . Он простой в установке и обслуживании,очень удобный для пользователя и содержит много бесплатных тем и плагинов, которые могут быть установлены с помощью нескольких нажатий кнопки мыши.Однако, он также склонен к взлому,если ваш сайт работает с устаревшей версией WordPress или плагинами.
Около года назад,уязвимость была найдена в популярных TimThumb PHP-скриптах,которые широко используется для автоматического изменения размеров изображений.Хакеры получили доступ ко многим веб-сайтам работающим на WordPress с TimThumb и заразили все файлы PHP eval (base64_decode — код для перенаправления посетителя, который приходит с поисковой системы на веб-сайт,по своему выбору.
Вы можете легко очистить вредоносный gzinflate/eval (base64_decode код во всех PHP файлах с помощью этого скрипта очистителя и получить обратно трафик из поисковой системы,но,к сожалению,использование скрипта самого по себе не достаточно.Вы можете заметить, что ваш сайт взламывают снова и снова,даже если вы обновитесь до последней версии TimThumb,потому что хакер уже посадил несколько лазеек к вам на сайт.Единственный путь к предотвращению постоянного взлома вашего сайта,заключается в поиске backdoor и его удаления с сервера.
Вам нужно принять к сведению,что в бесплатной версии Wordfence сканирует только файлы ядра WordPress.Если вы хотите сканировать тему и файлы плагинов,вам нужно будет подписаться,членство стоит $17.95 в год. Хотя членство даёт вам только 1 премия API ключ,вы фактически можете,использовать его для проверки нескольких веб-сайтов одновременно,после завершения сканирования,путем удаления премиум ключа и воссоздания нового из Управления плагина Wordfence API в области реестра,чтобы использовать его на другом сайте.
После удаления backdoor файлов,найденных плагином Wordfence,все сайты на WordPress на моём хостинге через несколько дней ещё раз заразились вредоносным кодом PHP.Я был очень расстроен и решил, вручную проверить доступ к журналу в cPanel хотя я был уверен,что я правильно ищу. Журнал содержит тысячи строк,проходящие через каждую линию на 6 сайтах.Итак, я сделал некоторую фильтрацию и log-файлов стало гораздо меньше.
Что для этого нужно сделать :
1.Отфильтровать GET-запросы.Основной GET запрос,оставить только на получение данных,так как они не могут причинить ему никакого вреда. Этот фильтр должен уменьшить ваши log файлы на 80%.
2.Фильтр из POST-запросов для wp-cron.php тоесть,предлагается что он есть на вашем сайте. Это выглядит примерно как в примере ниже:
111.222.333.444 — — [25 июл//2012:01:42:14 +0800] «POST /wp-cron.php?doing_wp_cron=1343151734.5347619056701660156250 HTTP/1.0″ 200 — » — » «WordPress/3.4.1; https://kompkimi.ru»
3.Продолжить фильтрацию безопасных POST-запросов для дальнейшего уменьшения размера файла журнала для облегчения анализа.
Анализируя лог файлы, я увидел подозрительные запросы,в которых Российские IP-адреса без реферера,и информация агента пользователя делала запрос POST каждые 10 секунд на 404.php файл 3 раза.
Я связался с Wordfence поддержкой и получил подтверждение от Марка Маундер,что этот кусок кода действительно вредоносный и они обновили свой плагин Wordfence,чтобы его обнаружить.После устранения backdoor, все 6 сайтов на WordPress под одной и той же учетной записью хостинга оставались чистыми в течение недели, без взлома. Как вы можете видеть,отсутствует только один backdoor,который может привести к взлому вашего сайта на WordPress под одной и той же учетной записи хостинга,и это очень важно,чтобы убедиться, что каждый backdoor удаляется.
Хотя Wordfence удалось полностью очистить от всех бэкдоров на веб-сайтах,размещенных под моей учетной записью на хостинге,я все-таки думаю,что это один из лучших плагинов безопасности для WordPress,потому что он гораздо больше,чем просто проверка целостности WordPress файлов.Плагин Wordfence обновляется очень часто, и они представляют очень большую поддержку.
Важное примечание: Убедитесь, что вы изменили ваш пароль, который включает в себя пользовательский аккаунт WordPress,FTP, cPanel и базы данных,после уборки бэкдора.Также помните, плагины, темы и WordPress версии нужно всегда обновлять до даты обновления.