100%-й защиты от взлома не существует, но есть меры, которые повышают безопасность сайта.
Чтобы выстроить защиту, нужно разобраться, с какими угрозами мы имеем дело.
Как может «заразиться» ваш сайт
Распространенные способы получения вредоносного кода и взлома:
- установка нелицензированного ПО;
- перехват, вычисление логина и пароля администратора аккаунта хостинга или CMS;
- использование уязвимых шаблонов, плагинов;
- использование зараженных FTP-клиентов для загрузки файлов на сайт;
- загрузка зараженных файлов с компьютера пользователя/администратора/контент-менеджера на сайт;
- открытый доступ к инструментам управления;
- ссылки на вредоносный контент со страниц, редактируемых пользователями;
- посещение зараженных вирусами ресурсов;
- размещение непроверенных рекламных модулей;
- халатность разработчика или контент-менеджера;
- передача доступов.
Часто используемые виды взломов и атак
Что нужно сделать для защиты сайта
Безопасность выстраивается по трем направлениям:
- Сервер (меняем пароли, проверяем входящие данные, делаем бэкапы, настраиваем ограничения, настраиваем блокировку нелегитимных запросов с IP-адресов).
- CMS (используем надежные скрипты и плагины, SSL-сертификат, проводим обновления).
- Компьютер администратора (настраиваем антивирусную защиту).
Шаг 1: Защищаем сервер
1. Выбирайте безопасный хостинг.
Заранее позаботьтесь, чтобы ваш сайт располагался на защищенном сервере. Ваши «соседи» — одна из уязвимостей, поэтому важно выбрать надежного лицензированного хостера, не размещающего сомнительный контент. Также можно воспользоваться услугой выделенного сервера.
2. Регулярно меняйте пароль администратора.
Критерии надежного пароля:
- длина не менее 30 символов;
- сложный цифробуквенный набор;
- ранее не использовался;
- не содержит личной информации.
Помните, что пароли нельзя передавать через почтовые клиенты или чаты мессенджеров. Для безопасного хранения на компьютере лучше пользоваться специальными программами, например, KeePass Password Safe.
Чтобы создать безопасный пароль используйте генераторы. Например, этот или этот:
3. Отслеживайте входящие данные.
Для обеспечения безопасности нужно проверять всю поступающую информацию. С этим справится файрвол (WAF — web application firewall), который работает как фильтр между сайтом и входящим трафиком. Он сканирует данные, блокирует вредоносный код, оставляя только безопасные запросы.
Файрволы могут работать на уровне DNS (трафик проходит через прокси-сервер), сервера клиента или плагина CMS. Первый тип считается наиболее безопасным.
Для сайтов на WordPress, которые чаще других подвергаются атакам через формы ввода данных, используют Wordfence Security, Sucuri Security или iThemes Security.
4. Ограничьте права пользователей.
Права нужно установить сразу после размещения сайта на хостинге.
Стандартные условные обозначения:
r — чтение данных,
w — изменение содержимого,
x — исполнение файла/вход в папку.
При доступе через FTP-клиент:
4 — чтение,
2 — запись,
1 — исполнение.
Права формируются путем сложения: 4+2= 6 (чтение и запись), 4 (только чтение), 4+2+1=7 (полный доступ) и т.д.
Пользователи делят на три группы:
u — администратор,
g — административная группа,
o — остальные.
Таким образом, получаются числовые или буквенные комбинации, обозначающие формы доступа. Например, 754 можно записать как rwx-rx-r. Код означает полные права для администратора, чтение и исполнение файла (вход в папку) для административной группы, только чтение для остальных.
Рекомендуется установить 755 для папок и 644 для файлов.
Поменять доступы можно с помощью бесплатного FTP клиента FileZilla. Качаем программу, кликаем по файлу правой кнопкой мыши, выбираем пункт «права доступа к файлу».
Используйте уникальные имена для папок и файлов вместо стандартных. Это усложнит злоумышленникам задачу.
5. Закройте доступ к хостингу сторонним IP
Только для тех, кто использует статический IP-адрес! Через панель управления пропишите нужный код в файле .htaccess:
Инструкция по управлению доступом к файлам через .htaccess.
Шаг 2: Защищаем CMS
1. Установите SSL-сертификат
Secure Sockets Layer (SSL) — протокол, который создает зашифрованный канал связи. Для его использования нужно получить SSL-сертификат через хостера, регистратора или центр сертификации. В RU-CENTER можно выбрать подходящий вариант:
В адреса защищенных сайтов добавляется литера "s"(secure) — https://www.nic.ru/. В адресной строке появляется замочек, при нажатии на который можно посмотреть подробности:
2. Устанавливайте только проверенные плагины
Ненадежные скрипты вносят опасные уязвимости в защиту CMS. Через них хакеры могут получить полный доступ к движку. Скачивайте или покупайте программы у официальных разработчиков, не забывайте читать отзывы пользователей. Лучше потратить деньги на лицензию, чем подарить сайт мошенникам.
На WordPress есть удобный каталог, в котором собраны надежные плагины:
3. Не пропускайте обновления
CMS нужно обновлять при выходе каждой новой версии, так как разработчики находят «слабые» места и устраняют их. Используя старые версии движка, вы подвергаете свой сайт риску. Многие системы управления позволяют автоматически загружать обновления, рассылают на почту уведомления о результатах.
Совет: перед обновлением всегда делайте полный бэкап.
В WordPress проще всего автообновление запустить через консоль администратора.
4. Используйте защитные плагины.
Плагины повышают безопасность комплексно или защищают отдельные компоненты системы управления. Можно использовать несколько модулей для решения разных задач. 5 популярных плагинов для WordPress на 2020 год:
BulletProof Security защищает базу данных, брандмауэр, страницу ввода логина/пароля, блокирует просмотр кода, сканирование файлов.
Sucuri выполняет полный аудит, выявляет и устраняет вредоносное ПО, обновляет пароли, отражает Ddos-, XSS-атаки.
iThemes Security отслеживает слабые пароли, уязвимые плагины, создает резервные копии.
All in One WP Security защищает учетные записи, предотвращает атаки на страницы входа и базы данных. Распространяется бесплатно, имеет простой, наглядный интерфейс.
Wordfence распознает опасный трафик, в автоматическом режиме отслеживает попытки взлома и заражения, восстанавливает поврежденные файлы, добавляет двухфакторную аутентификацию.
Панель статистики и управления плагина Wordfence.
Шаг 3: Защищаем персональный компьютер
1. Используйте антивирусы.
Первая и лучшая защита для компьютера, через который вы выходите на сервер, — антивирус.
По последнему из опубликованных рейтингов Роскачества, были выбраны лучшие для Windows: Bitdefender Internet Security и ESET Internet Security, для mac OS: ESET Cyber Security Pro и Kaspersky Internet Security.
В RU-CENTER вы можете подключить услугу «Антивирус для сайта» и защитить свой сайт.
2. Отключите опцию автоматического подключения к сетям.
Не редко мошенники создают фейковые Wi-Fi сети, похожие на популярные доступные сети. Конечно, если вы внимательны, то из списка доступных сетей выберете правильную. Но если у вас активирована опция автоматического подключения, то вы можете не заметить, как ваше устройство подключится к вай-фаю мошенников. Отключите эту настройку.
И лучше не заходите в аккаунты из публичных вай-фай сетей (в аэропорту, кафе и т. п.). В некоторых сетях трафик передается по незащищенным протоколам http. Ваши данные могут перехватить злоумышленники. Причем это касается не только логинов и паролей от почт и личного кабинета сайта, но и доступов к вашим банковским картам.
3. Будьте осторожны с переходами по ссылкам.
Если вам пришло письмо на почту о необходимости сменить пароль вашего аккаунта, перейдя по ссылке, не переходите по ссылке. Сначала внимательно изучите адрес отправителя. Вы можете увидеть, например: Google <noreply.ssuport@gmail.com>. Сложно заметить ошибку в адресе и не попасться на крючок, правда? Такой способ мошенничества называется «фишинг». Если пройдете по ссылке, то мошенники предложат вам поменять пароль. Так вы можете лишиться аккаунта и сайта, если на эту почту зарегистрированы доступы к нему.
Читайте на Дзене нашу статью, как защититься от фишинга.