При запуске нового сайта мы часто с головой погружаемся в создание идеального дизайна и написание информативного контента. Для многих пользователей, в том числе и для меня, безопасность – это запоздалая мысль.
Однако каждый год число атак на веб-сайты WordPress только растет. 70% веб-сайтов на WordPress имеют уязвимости, которые могут использовать в своих интересах хакеры. Если ваш сайт обладает минимальной защитой, то это означает, что он может стать следующей целью злоумышленников.
Сегодня я постараюсь помочь вам с улучшением защиты вашего сайта, предложив 11 простых подсказок, к которым вы можете тут же прибегнуть. Если вы хотите создать успешный сайт, вам обязательно нужно выстроить непробиваемую защиту.
Поэтому давайте сразу же перейдем к советам и постараемся защититься от злоумышленников.
- Делайте бэкапы своего WordPress сайта
- Всегда обновляйте все компоненты своего сайта
- Скрывайте версию WordPress
- Выбирайте защищенные пароли
- Используйте защищенное имя пользователя
- Перенесите страницу входа
- Скрывайте ваше имя пользователя
- Ограничивайте число попыток входа
- Используйте защищенный хостинг
- Отключите редактор плагинов и тем
- Добавьте плагин безопасности
Делайте бэкапы своего WordPress сайта
Все рекомендации, которые приведены в сегодняшней статье, позволят вам воспрепятствовать взлому вашего сайта.
Однако никакой веб-сайт не может быть защищен на 100%, и вы всегда должны быть готовы к худшему. Именно по этой причине важно регулярно делать бэкапы своего сайта – не самая приятная вещь в мире, но зато она отлично помогает сэкономить время, если что-то пойдет не так.
Если не делать бэкап своего сайта, весь ваш контент может быть потерян в результате хакерских атак – т.е. месяцы кропотливой работы будут пущены коту под хвост.
Если же вы задали для сайта регулярное резервное копирование, то в таком случае ваши усилия могут быть спасены, поскольку ваш сайт можно будет полностью восстановить всего за пару минут.
Большинство хостингов предлагают ежедневный бэкап, однако я рекомендую все же подстраховаться. Лично я имею про запас внешний бэкап, который создается при помощи плагина BackupBuddy.
Плагин позволяет вам определить, как часто вы хотите бэкапить ваш сайт, какие варианты бэкапа вас устроят и т.д. Плагин также позволяет просканировать ваш сайт на предмет наличия вредоносного кода.
Всегда обновляйте все компоненты своего сайта
Обновления WordPress, помимо того, что они добавляют новые возможности, несут в себе патчи для угроз безопасности.
Очень важно всегда поддерживать WordPress в актуальном виде. Если вы не будете этого делать, слабые места безопасности могут быть эксплуатированы злоумышленниками.
Возможно, вы думаете, что обновляться надо только тогда, когда выходит главное обновление – к примеру, когда WordPress 4.0 обновляется до 4.1. На самом деле, обновляться следует всегда, поскольку минорные обновления (от 4.1.0 к 4.1.1, к примеру) несут в себе исправления для разных ошибок, которые могут отразиться на безопасности.
Если вы хотите поднять безопасность своего сайта, вы должны убедиться в том, что ваш веб-сайт работает с последней версией WordPress, даже если последнее обновление было минорным.
Начиная с WordPress 3.7, все обновления безопасности и технические версии устанавливаются автоматически.
Однако обновлять надо не только ядро WordPress. Вы должны также обновлять тему и плагины.
Незначительные пробелы в безопасности могут присутствовать в плагинах и темах, поэтому всегда старайтесь проверить, что ваш сайт WordPress является актуальным, чтобы минимизировать уязвимости.
Скрывайте версию WordPress
Хакеры знают, что старые версии наиболее уязвимы, и зачастую проблемы, существующие в старых версиях, прекрасно задокументированы, что делает их главными целями для атак.
Чтобы узнать, какую версию WordPress использует сайт, достаточно заглянуть в код сайта.
К примеру:
<meta name=”generator” content=”WordPress 4.0.1″ />
Ясно, что эта версия является устаревшей. Т.е. имеются некоторые уязвимости в безопасности, которые могут быть эксплуатированы.
Если вы не можете поддерживать свой сайт в актуальном виде, то хотя бы скрывайте его версию. Это отведет лишнее внимание хакеров.
Все, что нужно сделать – это добавить следующий код в файл functions.php. С его помощью вы удалите вывод версии на своем сайте.
function remove_version() { return ''; } add_filter('the_generator', 'remove_version');
Выбирайте защищенные пароли
Если вы выбираете простые пароли, вы ставите свой сайт под серьезный риск – хакеры могут с помощью перебора определить нужную комбинацию.
Угадать пароль «12345» можно будет с помощью нескольких попыток.
Ваш пароль должен включать в себя комбинацию из символов в нижнем регистре, в верхнем регистре, цифр и знаков; если вы хотите сделать что-то действительно защищенное, используйте генератор паролей.
WordPress имеет свой собственный индикатор сложности паролей. Он поможет вам выбрать безопасный пароль. По крайней мере, ваш пароль должен быть помечен как Strong.
Я знаю, о чем вы подумали: как запомнить все эти сложные пароли? Это – определенная проблема, и именно поэтому, скорее всего, люди и выбирают простые пароли. Если вам нужна помощь с запоминанием паролей, вы можете воспользоваться специальным сервисом, таким как, к примеру, LastPass – просто убедитесь в том, что ваш пароль является безопасным.
Для дополнительной безопасности вы можете также регулярно менять свой пароль.
Используйте защищенное имя пользователя
В процессе установки WordPress вас попросят ввести имя пользователя, который будет администратором. Многие просто выбирают первую попавшуюся вещь – к примеру, admin.
Несомненно, такое имя пользователя проще всего запомнить, однако оно является самым небезопасным. Ведь именно с него обычно начинают свои атаки разные боты – им остается лишь подобрать пароль.
Если вы используете случайную комбинацию букв, – или хотя бы что-то отличающееся от admin – то в таком случае вы усложните жизнь злоумышленникам: им надо будет угадать имя пользователя и пароль.
Естественно, решение этой проблемы является очень простым – при установке WordPress выберите для себя безопасное имя пользователя.
К сожалению, если вы уже выбрали имя пользователя admin, вы не сможете его поменять в консоли WordPress. Самый простой выход из этой ситуации – создать нового пользователя с администраторскими полномочиями, войти в этот новый аккаунт и удалить старый аккаунт admin. Если вы уже публиковали записи под старым аккаунтом admin, ничего страшного – все ваши записи могут быть присвоены новому пользователю.
Перенесите страницу входа
Есть и другая цель, которая обычно подвергается атакам злоумышленников – это ваша страница входа.
В процессе установки WordPress использует адреса wp-admin и wp-login для страницы входа – к примеру, www.example.com/wp-admin.
Т.е. я могу получить доступ к этим страницам, если на сайте стоит WordPress. Правда, мне еще понадобится как-то подобрать логин и пароль, но факт остается фактом – доступ имеется.
Хорошие новости: вы можете легко изменить URL-адрес wp-admin, усложнив обнаружение страницы входа.
Просто установите плагин HC Custom WP-Admin URL, и вы сможете ввести любой адрес для страницы входа. К примеру, www.example.com/randomletters.
Скрывайте ваше имя пользователя
Если вы следовали предыдущим советам, то в таком случае у вас уже будет иметься безопасное имя пользователя – отличающееся от admin.
Однако боты могут получить ваше имя пользователя и другими путями, не такими очевидными. Они могут использовать URL авторских архивов – обычно к нему можно получить доступ, щелкнув по имени автора после статьи.
URL архивов автора по умолчанию будет иметь следующий вид: www.example.com/author/johnsmith.
Какое имя пользователя у автора этой статьи? Правильно, johnsmith, и простой щелчок мышью может показать это.
Если роботы имеют доступ к имени пользователя, то они могут впоследствии взломать данную учетную запись; им нужно будет только подобрать пароль.
Однако данный URL можно изменить; все сводится к тому, как WordPress использует поле автора. WordPress использует поле, которое называется user_nicename; оно автоматически заполняется именем автора – именно по этой причине архивы по автору выводят имя пользователя.
Если запись user_nicename в базе данных будет изменена, то в таком случае изменится и URL архива автора – он больше не будет содержать имя пользователя; однако сделать это из консоли WordPress не представляется возможным. Нам нужен будет доступ к базе данных WordPress через phpMyAdmin.
Разговор о базе данных может привести некоторых людей в настоящую панику, поэтому мы постараемся все сохранить максимально простым.
После доступа к базе данных через phpMyAdmin вам нужно будет найти таблицу под названием wp_users. Вы увидите список пользователей, и где-то в таблице также будет столбец user_nicename. Щелкните по user_nicename и отредактируйте его любым образом: не используйте пробелы в данном поле, поскольку это приведет к ошибке 404.
Ограничивайте число попыток входа
Поскольку в последнее время участились случаи брутфорс-атак, вам, возможно, понадобится ограничить число неудачных попыток входа в консоль с одного и того же IP-диапазона.
Защищая ваши учетные данные, вы усложняете работу ботам и злоумышленникам; однако со временем они все же способны будут подобрать нужную комбинацию.
Если вы ограничите количество неправильных попыток входа с отдельного IP-адреса – или диапазона IP-адресов – то в таком случае вы значительно снизите эффективность брутфорс-атак. Это решение не совершенно, поскольку хакеры могут использовать разные IP-адреса, однако это определенно положительный шаг, который позволит вам повысить безопасность своего сайта.
Для ограничения попыток входа в консоль я рекомендую использовать плагин Login Lockdown, который блокирует IP-адреса, с которых производились многочисленные неудачные попытки входа в систему за короткий период времени. Вы можете задать число неудачных попыток, период времени, а также период блокировки.
Используйте защищенный хостинг
До сих пор мы рассматривали вещи, которые зависели от вас.
Однако свыше 41% всех сайтов были взломаны из-за уязвимости на стороне хостинга.
Это правда: ваш хостинг может являться самым уязвимым местом для хакерских атак. И, кроме выбора подходящего хостинга, вы с этим ничего поделать не можете.
Я советую вам удостовериться в том, что вы используете проверенный хостинг, который отличается многочисленными положительными отзывами – не ориентируйтесь на цену.
Стоит поговорить с разными провайдерами, чтобы убедиться в том, что их сотрудники прекрасно осведомлены о проблемах безопасности – особенно о проблемах с WordPress – и что они имеют подходящие инструменты защиты.
Отключите редактор плагинов и тем
Если брутфорс-атака будет проведена успешно, и хакер сможет получить доступ к вашему сайту, какой ущерб он способен причинить? Потенциально – самый разный.
Хакер может добавить вредоносный код к сайту, приводящий к многочисленным проблемам. Это очень просто сделать: хакеру достаточно перейти в раздел консоли Внешний вид – Редактор. Обладая доступом к этой области, любой человек со злыми мотивами легко может сломать вашу тему и весь ваш сайт.
Есть простое решение: отключите редактор плагинов и тем.
Это легко сделать: вы можете просто добавить следующий код в wp-config.php:
define( ‘DISALLOW_FILE_EDIT’, true );
Как только вы сделаете это, даже администратор не сможет отредактировать вашу тему или плагины напрямую через консоль WordPress. Если хакер и сможет получить доступ к сайту, он не причинит серьезного ущерба.
Добавьте плагин безопасности
Если вы хотите сделать заключительный шаг по защите вашего сайта, обязательно установите плагин безопасности.
Такие решения помогают защитить ваш сайт разными способами, и именно они составляют самый последний уровень защиты вашего сайта.
Безопасность WordPress – важная вещь сегодня, потому рынок наполнен как платными, так и бесплатными решениями.
Я лично выбрал для себя плагин от iThemes — он идет в лайт-версии и в про-версии.
Про-версия плагина регулярно сканирует и защищает ваш сайт от вирусов, предлагая огромный список разных вариантов защиты. Вы можете даже добавить двухфакторную аутентификацию к странице входа – пользователям надо будет не только ввести пароль, но и запросить код, отправленный на их мобильный телефон.
Это прекрасный плагин, который позволит вам улучшить вашу защиту WordPress.
Источник: torquemag.io
Про iThemes слышал, надо будет потестить. А подскажите, пожалуйста, если адресам записей приписать расширение, например, html, то это больше обезопасит от того, что если кто-то вдруг наплодит где-то дубли адресов? Или canonical вполне от таких выпадов защищает?
Канонические URL отлично спасают от любых дублей, поскольку указывают поисковикам на исходный материал. Про них, кстати, не так давно была статья в блоге.
Многие советы использовал и раньше, сейчас добавил себе запрет редактирования (хотя, он у меня и так стоит через пермиссии на хостинге), на админке стоит редирект, но, вот думаю, для пущей уверенности еще сменить имя пользователя и переназначить ему привилегии. Это чтоб уж наверняка)
1-й пользователь роли администратор, в имени пользователя что-то оригинальное, а не admin по умолчанию и от лица этого пользователя не создаются ни записи, ни страницы. 2-й пользователь роли редактор, или автор, от его лица создается содержимое и ответы на комменты. Думаю, это оптимальный вариант.
Да, самый оптимальный вариант. Именно так и советуют делать.
А как защититься так, чтобы не один сервис типо xtoolza, 2ip, itrack не мог определить CMS?
»
Всегда обновляйте все компоненты своего сайта
…
Незначительные пробелы в безопасности могут присутствовать в плагинах и темах, поэтому всегда старайтесь проверить, что ваш сайт WordPress является актуальным, чтобы минимизировать уязвимости.»
Вот, рекомендую на эту тему один из способов это проверить: https://wpsec.ru/
Можно быстро глянуть, какие плагины и/или темы «дыроваты» :).
Спасибо!
Дмитрий, приветствую.
Есть у меня сайтец с иван-чаем, там стоит дырявый но очень важный плагин для темы Easy Digital Downloads (он полностью доступен из под редактора в админке).
Вот прочел тут про выключение редактора в wp-config:
define( ‘DISALLOW_FILE_EDIT’, true );
Прописал, а редактор всё равно доступен. Может чего поменялось уже?
Константа рабочая. Не понял только, почему плагин Easy Digital Downloads дырявый. Он же вроде активно обновляется.
а, всё, нашел чекбокс по блокироке редактора в iThemes Security
Он для предыдущей версии WP был уязвим, сейчас пофиксили. У меня такое шоу из-за него было, все плагины самоудалялись без возможности повторной установки, даже из бэкапа не смог чистой версии найти. Всю его структуру PHP можно править прямо из редактора — это располагает к его использованию при хаке))).
Понятно, ну хорошо, что нашли опцию)
Уговорил! Ставлю iThemes. Давно мысль сидела. Ваша статья сработала толчком к действию.