Подавляющее большинство проблем безопасности у сайтов на WordPress на самом деле легко контролировать. Ядро этой системы прошло долгий путь развития и является достаточно безопасным. Это может казаться неожиданным для многих, но разработчики серьёзно относятся к безопасности и очень быстро выпускают патчи. Одна из сильных сторон WordPress – это простота обновления и высокая скорость цикла разработки.

Немалая часть проблем обусловлена недальновидностью конечного пользователя, выбором тем и плагинов с небезопасным кодом, а также плохим качеством хостинга. Это руководство поможет обеспечить безопасность для сайтов на WordPress и устранить наиболее распространённые лазейки для взлома.

Держите ваш WordPress в актуальном состоянии


Разработчики не латают дыры в устаревших версиях. Поддержание CMS и плагинов в актуальном состоянии с новыми патчами имеет важное значение для защиты сайта. В большинстве случаев для этого достаточно просто нажать кнопку обновления.

Кроме того, нужно регулярно обновлять все установленные плагины и темы, чтобы избежать проблем с безопасностью. Оптимальный подход к этому вопросу следующий: выжидайте не более 2-3 дней с момента, когда обновления стали доступны. Проверьте форумы на наличие отчётов о проблемах, а если их нет, смело обновляйте сайт.

В маловероятном случае, если обновление что-то сломает, сделайте откат на предыдущую версию (через shell или SFTP-доступ), либо восстановите сайт из резервной копии.

Поддерживайте безопасность Интернет-соединения на вашем компьютере


Это кажется очевидным, но при наличии кейлоггеров и вредоносных программ на вашем домашнем компьютере или WiFi-роутере злоумышленникам не составит труда взломать ваш сайт.

Устанавливайте плагины и темы только из официального репозитория


Не секрет, что плагины и темы, загруженные из Google или любого случайного сайта, скорее всего будут заражены вредоносными программами. Недавнее исследование показало, что у 8 из 10 лучших результатов Google по запросу «Бесплатные темы WordPress» в коде встроено вредоносное программное обеспечение. Загружайте темы и плагины из официального репозитория и других авторитетных источников. Пользуясь чем-то, что получено на случайных интернет-сайтах, вы рискуете безопасностью собственного ресурса.

Выберите солидный хостинг


Хороший хостер не только проводит резервное копирование вашего сайта, но и предотвращает перекрёстное заражение ресурсов, расположенных на одном сервере. К сожалению, подобные явления достаточно распространены даже среди крупных хостеров, поэтому к вопросу выбора стоит подходить основательно.

Помимо грамотного администрирования серверов стоит обратить внимание также на компетентность службы поддержки – её сотрудники должны быть достаточно грамотными, чтобы быстро реагировать на вопросы безопасности и своевременно решать их.

Регулярно проводите проверку своего хостинг-провайдера, чтобы убедиться в том, что он использует актуальные версии операционной системы и серверного программного обеспечения.

Придумайте действительно хороший пароль


Многие имеют плохую привычку использовать лёгкие пароли. Однако, для действительно важных вещей стоит использовать длинные и сложные комбинации. Отличным решением будут пароли из:

1. Случайно сгенерированного набора цифр, букв и спецсимволов.
2. Фразы из несвязанных по смыслу слов (ПравильнаяЛошадинаяБатарея).
3. Первых букв каждого слова из памятного вам предложения с добавлением цифр и знаков пунктуации в некоторых местах.

Если у вас имеется проблема с запоминанием пароля или вы боитесь его потерять, существуют различные расширения браузера, а также приложения сторонних разработчиков, которые будут хранить их за вас.

Важно придумать для каждого сайта отдельный пароль, иначе злоумышленникам будет гораздо легче взломать ваши аккаунты.

Удалите стандартный логин Admin


Стандартный логин администратора по умолчанию и его привилегии – лёгкая мишень для любого эксплойта. Эту учётную запись пользователя стоит удалять сразу после установки WordPress на хостинг. Для этого нужно проделать следующие шаги:

1. Войти в базовый аккаунт Admin.
2. Создать нового пользователя с уникальным именем и дать ему права администратора (последнее очень важно).
3. Войти с данными нового пользователя и удалить аккаунт Admin.

Кроме того, во время новой установки можно изменить имя пользователя по умолчанию с Admin на другое.

Измените свой ник в WordPress


Боты постоянно сканируют сайты, пытаясь обнаружить теги авторов сообщений, а затем используют найденные имена в качестве логинов. Это очень эффективный вектор атаки для взлома при помощи брутфорса. Чтобы устранить эту уязвимость, войдите в свой аккаунт и установите публичный псевдоним, отличный от вашего фактического логина.

Настройте регулярное резервное копирование


Эта процедура является обязательной для тех, кто заботится о безопасности своего сайта. Отличным решением будет настроить регулярное резервное копирование не только базы данных WordPress, но и содержимое диска сервера. Существует ряд плагинов и сервисов, которые позволяют сохранять резервные копии. Кроме того, стоит поинтересоваться у вашего хостера о том, осуществляется ли резервное копирование.

Сделанные резервные копии стоит проверять хотя бы раз в месяц, чтобы убедиться, что они создаются корректно, и вам не составит труда восстановить сайт в случае необходимости.

Получите ключи безопасности WordPress


В этой системе используются зашифрованные ключи безопасности для информации, которая сохраняется в куки. Эти ключи идут в ваш WP-config. Ключевой генератор случайных чисел можно найти на официальном сайте WordPress по ссылке. Перейдите по ней и обновите страницу в вашем браузере, чтобы получить новые ключи и скопировать их в ваш WP-config.

Измените префикс базы данных (только перед установкой!)


Этот пункт подходит только для создаваемых с нуля сайтов. При неправильном выполнении процедуры на рабочем ресурсе можно полностью убить его. Если вы начинаете новую установку, у вас есть возможность изменить префикс базы данных. По умолчанию WordPress устанавливает префикс «wp_», что делает работу любого взломщика гораздо более простой. Изменив его на что-то уникальное, вы устраните эту брешь в безопасности сайта.

Помимо этого, стоит удалить тестовую базу данных, пользователей анонимной базы данных. Убедитесь, что основная БД недоступна из интернета.

Ограничьте количество используемых плагинов и тем


Помимо того, что многие темы и плагины небезопасны, их большое количество серьёзно замедляет работу сайта. Уменьшите количество используемых плагинов и тем, и удалите те из них, которые вы прекратили использовать. Поддержание вашей системы в чистоте не только снижает шансы на эксплуатацию уязвимостей со стороны злоумышленников, но и позволяет легче устранить проблемы, если заражение вредоносным кодом всё-таки произошло.

Переместите файл WP-config на один каталог вверх и заблокируйте его


Файл WP-config содержит все ваши учётные данные для доступа к базе данных сайта. Вы можете переместить его выше, разместив вне директории root, доступной из Интернета. Это поможет защитить файл конфигурации от любых атак на основе браузера. Кроме того, хорошей идеей будет изменить права доступа на него, установив значение 600.

Ограничьте число попыток входа в систему


Использование плагинов для безопасности может быть запоздалым решением. К тому же, опираться в защите на то, что уже небезопасно – это плохая идея. С другой стороны, плагин Limit Login Attempts – это очень полезный выбор, так как он предотвращает взлом при помощи брутфорса, ограничивая количество неудачных попыток входа на сайт. Он также может вести логи ip-адресов, с которых пытались войти.

Проверьте права доступа к файлам и каталогам


Права доступа на файлы и каталогы могут иметь довольно сложные зависимости от настроек хостинга. В большинстве случаев права на файлы должны быть установлены на значения 664 или 640, а для папок – 755 или 750. Никогда не стоит устанавливать значение 777, пока ваш хост не сконфигурирован. Золотое правило настройки прав доступа – устанавливайте как можно более низкие значения, при которых сайт сохраняет работоспособность. Последняя цифра разрешений всегда должна быть 0, 4 или 5, никогда 6 или 7.

Скройте информацию о версии


Скрытие информации об установленной версии WordPress представляет собой довольно простой шаг, который мешает ботам сканировать ваш сайт. В файле function.php вашей темы необходимо разместить следующее:

// remove version info from head and feeds
function complete_version_removal() {
return '';
}
add_filter('the_generator', 'complete_version_removal');

Включите SSL-авторизацию


Если ваш сайт имеет сертификат SSL, не забудьте включить авторизацию по этому протоколу. Вы можете установить её только для входа в систему или для всего администраторского раздела в вашем файле WP-config.php. SSL шифрует информацию, которую вы посылаете в WordPress и особенно хорошо защищает от атак типа «человек посередине».

Не позволяйте поисковым роботам просматривать каталоги


Поиск Google может сканировать ненужные адреса и открывать их наличие для хакеров. Будет лучше, если вы запретите боту Google и любым другим ботам, следующим инструкциям robots.txt (не все боты поддерживают их), индексировать что-либо, кроме вашего контента. Файл robots.txt расположен в корневой папке вашего сайта и это обычный текстовый файл.

Отключите регистрацию пользователей


Если вы ведёте личный блог или создаёте сайт, на котором не предполагается публикация материалов большим количеством пользователей, стоит отключить возможность регистрации аккаунтов в администраторском разделе. Для комментаторов используйте учётные записи социальных сетей.

Отключите пользователям возможность редактировать и обновлять темы и плагины


Необходимо убрать у пользователей права на редактирование и обновление важных файлов через администраторский интерфейс.

Установите правила .htaccess


Ниже указаны основные правила, которые можно добавить в файл .htaccess в корневом разделе, более продвинутые правила описаны в расширенном руководстве. Их отсутствие может привести к взлому вашего сайта.

//limit indexing of directories
Options All -Indexes

//protect the htaccess file,
//this is done by default with apache config file,
// but you never know.

order allow,deny
deny from all

//disable the server signature
ServerSignature Off

//limit file uploads to 10mb
LimitRequestBody 10240000

// protect wpconfig.php.
//If you followed step 6 this is not necessary.

order allow,deny
deny from all

Удалите Readme и другие ненужные файлы


В корневой директории WordPress расположен файл readme.html, многие плагины и темы также имеют подобные файлы. Хорошим решением будет удалить их, так как они могут быть использованы для фингерпринтинга или снупинга, и часто содержат информацию о версии. Очистите папки вашего сайта от этих и любых других ненужных файлов.

Создайте отдельную версии сайта для разработки


Используйте копию сайта для тестирования обновлений и новых функций, прежде чем применять их на основном ресурсе. Это может быть даже локальная установка WordPress на вашем компьютере или ноутбуке, если вы не хотите платить за дополнительный хостинг.

Не обрабатывайте конфиденциальную информацию без необходимости


Данные кредитных карт, номера социального страхования, медицинская информация и другие конфиденциальные сведения не должны храниться на вашем сайте, если для этого нет весомой причины. Хакеры чаще всего выбирают для взлома те ресурсы, на которых есть возможность разжиться подобной информацией. Если у вас её нет, ваш сайт имеет меньше шансов стать мишенью для злоумышленников.

Что делать, если ваш сайт на WordPress был взломан?


Стоит всегда быть готовым к тому, что ресурс может быть взломан. Имея на руках чёткий план действий, можно быстро остановить злоумышленников и предотвратить негативные последствия.

1. Переведите сайт в автономный режим (режим обслуживания). Это лишит взломщика возможности увеличить ущерб сайту или помешать вашим попыткам восстановить контроль над веб-ресурсом.

2. Сообщите о взломе вашему хостинг-провайдеру, чтобы он мог помочь вам.

3. Сделайте резервную копию взломанного сайта, если вы хотите изучить его впоследствии.

4. Просмотрите серверные логи, чтобы определить, как злоумышленник смог взломать сайт. Это поможет вам узнать, как исправить эту проблему, а также понадобится для поиска того, что взломщик успел сделать.

5. Обновите всё, что можно обновить.

6. Удалите все файлы, страницы, сообщения, Комментарии или процесс, добавленные злоумышленником. Если вы сомневаетесь в том, всё ли вы нашли, создайте новый сайт WordPress с нуля, а затем восстановите на нём последнюю резервную копию, сделанную до взлома.
Поделиться с друзьями
-->

Комментарии (20)


  1. Evgeny42
    16.03.2017 18:32
    +1

    И после того как вы проделали все эти пункты — поздравляю! Ваш сайт на вордпрессе все так же уязвим как и прежде.


    1. seoanalyticspro
      16.03.2017 19:35
      -2

      К сожалению ВП одна из наиболее уязвимых платформ. Ну как известно — можно хакнуть что угодно)


  1. nikitasius
    16.03.2017 18:57

    Установите правила .htaccess


    Самое главное правило: откажитесь от Апача в пользу nginx + php-fpm.


    1. seoanalyticspro
      16.03.2017 19:36
      +1

      +1


  1. nikitasius
    16.03.2017 19:07

    1. Переведите сайт в автономный режим (режим обслуживания). Это лишит взломщика возможности увеличить ущерб сайту или помешать вашим попыткам восстановить контроль над веб-ресурсом.

    Нет, если залил (а они залили) левые php, только отключить и ручками. Взломанному WP нельзя исполняться!

    2. Сообщите о взломе вашему хостинг-провайдеру, чтобы он мог помочь вам.

    Это что-то новое для паблик хостинга (не частный).

    3. Сделайте резервную копию взломанного сайта, если вы хотите изучить его впоследствии.

    Это правильно.

    4. Просмотрите серверные логи, чтобы определить, как злоумышленник смог взломать сайт. Это поможет вам узнать, как исправить эту проблему, а также понадобится для поиска того, что взломщик успел сделать.

    В зависимости от того, что в эти логи писалось и каков уровень взлома. Он мог и ко всей системе доступ получить, если пхп или компоненты под рутом или система дырявая.

    5. Обновите всё, что можно обновить.

    НЕЛЬЗЯ давать взломанному ВП работать. И тем более обновлять, не устранив проблему.

    6. Удалите все файлы, страницы, сообщения, Комментарии или процесс, добавленные злоумышленником. Если вы сомневаетесь в том, всё ли вы нашли, создайте новый сайт WordPress с нуля, а затем восстановите на нём последнюю резервную копию, сделанную до взлома.

    Эк вы резко перемахнули через десяток шагов)
    На самом деле это (если бы не было предшествующих) надо поставить 1м пунктов: сделать бекап базы, следом скопировать аплоад, удалить оттуда все htaccess (мы же решили, что апач в топку) файлы и все php файлы. Следом распаковать из архива файлы той же версии ворпресса и по новой плагины, вручную. перенести настройки из старого ВП (перенос настроек != слепое копирование файла из взломанной системы). После этого ВП заведется.
    Далее так как доступ только у вас по айпи, то обновить все + смениле пароль админ учеток (если их несколько).


    1. seoanalyticspro
      16.03.2017 19:35

      Спасибо за ваши уточнения! Думаю они будут полезны для читателя данной статьи.


  1. parotikov
    17.03.2017 13:30

    У Вас в нескольких местах написано WP-config.info. Наверное, Вы имели ввиду wp-config.php?


    1. seoanalyticspro
      17.03.2017 13:30

      Спасибо!


  1. f9k56
    17.03.2017 15:01

    Первое правило: размещайте сайт на своём ВПС.


    1. seoanalyticspro
      17.03.2017 15:01

      Если есть такая возможность и опыт — почему бы и нет)


      1. f9k56
        17.03.2017 16:05

        Если нет опыта, всегда можно нанять специалиста по безопасности, а от дырявых соседских сайтов вас никто не спасет.


        1. seoanalyticspro
          17.03.2017 16:06

          Если есть хорошие специ по адекватным ценам — скиньте плс в личку контакты! Заранее спасибо!


  1. vovasik
    20.03.2017 12:30

    Измените префикс базы данных (только перед установкой!) можно и после установки сменить, есть даже легкие способы это сделать


    1. seoanalyticspro
      20.03.2017 12:30

      Спасибо!


  1. vipartem
    20.03.2017 14:33

    И стоит отметить XMLRPC атаки, они актуальны по сей день.


  1. seoanalyticspro
    20.03.2017 14:33

    Можете чуть более подобно описать, пожалуйста?


  1. vipartem
    20.03.2017 17:15

    Вот здесь есть пост об этом.


    1. seoanalyticspro
      20.03.2017 20:10

      Спасибо! Почитаю!


  1. LEXXiY
    24.03.2017 17:29

    Не позволяйте поисковым роботам просматривать каталоги

    В принципе да, но нет.
    Необходимо знать, что можно показывать, а что нет.

    Информация для владельцев WP вероятно базовая, но есть проблема в плагинах которые редко или уже не обновляются, но аналогов нет :(

    И обязательно стоит при разработке своей темы на основе готовой, делать дочернюю.
    Это позволит продолжать обновлять основную (залатывать дыры), но не убивать все проделанные ранее правки в теме (пришел к этому не сразу, сильно сожалею)


    1. seoanalyticspro
      24.03.2017 21:41

      Спасибо за дополнение!