Защита CMS

Защита CMS Сайтостроение

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

Введение

Защита любого CMS или веб-приложения — комплекс мер, подразумевающих аудит всех компонентов и узлов сайта, включая сам сайт, его сервер и компонентов сервера. Если вы, не придаете особого значения безопасности, значит еще не сталкивались с этим, но это когда-нибудь произойдет (не важно что у вас мало посещаемости и так далее — труды жалко всегда, особенно если еще вложено кучу средств). Сам факт, что сайт 24 часа 7 дней в неделю доступен онлайн, он автоматом становится объектом для хакерских атак.
Защита — тема очень объёмная — я напишу только самые вероятные векторы атак на веб-сайт и как их перекрыть.

Защита сайтов — основы основ

Вопрос защиты сайта — это множество аспектов, и многие аспекты не имеют прямого отношения к самим CMS. Разберем их по пунктам:

ПК

Не используйте Windows версии ниже чем 7ка, так как поддержка старых версий прекращена, а закалка устаревшего виндовс требует много знаний и усилий, и все равно все дыры не закроете. Да и не пользуйтесь хакерскими версиями скаченными с торрентов или прочих сомнительных сайтов. Старайтесь использовать легальную винду — которая обновляется через центр обновлений. Скажу по секрету легальный ключ можно найти за 300 рублей на ebay.

Владельцам Mac и Linux тоже не нужно обольщаться — взломать можно ЛЮБУЮ операционную систему.

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

Пароли и логины

Устанавливайте длинные сложные пароли и раз в пол года меняйте их — тогда пароль не смогут подобрать.

Не храните логины и пароли от сайтов / сервисов в текстовых файлах, используйте для этого спец. программы, такие как KeePass, ну или можно просто записывать все в бумажный блокнот.
Старайтесь не использовать один пароль в разных сервисах, так как дешифровав пароль в каком нибудь из сервисов, пробуют использовать его везде. Многие сервисы позволяют делать 2‐х этапную авторизацию — используйте ее.

Соединение

По возможности администрируйте сайт по проводному соединению, а не Wi-fi (либо ставьте программы для защиты вай-фай соединения), не доверяйте открытым общественным точкам wi-fi, особенно без шифрования. Даже хакер новичок может с легкостью перехватить передающиеся через роутер пакеты и прочитать ваши логины и пароли.

Сервер

Самая важная составляющая — если сервер не достаточно защищен, то бессмысленно прокачивать все остальные пункты. Если злоумышленник взломает пароль от FTP, то он может все что угодно сделать с сайтом. По возможности отключите неиспользуемые сервисы. По возможности перейдите на SFTP (если его нет меняйте хостинг). Если вход в панель администрирования хостинга работает по http бегите с него. А вообще самый идеальный вариант аутентификация через SSH.

Удостоверьтесь, что сервер защищен от dos атак и на него установлен брандмауэр и что-нибудь для мониторинга в режиме реального времени для обнаружения попыток взлома. К примеру для apache есть модуль — ModSecurity — обнаруживает и сдерживает многие вредоносные атаки.

Если Вы владелец VPS тогда регулярно обновляйте сервер и его компоненты.

Чистота и порядок

Удаляйте с сайта всё неиспользуемое — неиспользуемые js-файлы, отключенные плагины, шаблоны, чаще всего находят дыры безопасности именно в них. Особенно опасны zip-архивы с бэкапом и отладочные php-скрипты забытые в корневой директории сайта.

Резервные копии

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

Соц. инженерия

Многие взломы основаны на хитростях — к примеру кидают в соц сети или по cms ссылку, вы переходите по ней и дарите свои пароли. Могут просто написать или позвонить под надуманными предлогами якобы заказчики (новые разработчики у заказчиков) и просить передать ему информацию. Будьте внимательны и убедитесь что это ТОЧНО ваш клиент, веди не исключено что кто-то влез в его социальную сеть или почту.

Страницы входа

У всех CMS свои стандартные пути входа в админку и если смогут понят на каком движке работает сайт (а сделать это обычно не сложно) то большая вероятность что смогут взломать админку, так по возможности измените адрес входа в админ панель, но не на wp-admin, manader, админ, administrator — придумайте что-то поинтереснее и по возможности смените внешний вид страницы входа.

Изменение префиксов таблиц БД

Не используйте стандартные префиксы которые предлагают по умолчанию CMS: wp_, modx_, os_ — это усложнит работу хакерам, и может уберечь от возможных SQL-инъекции БД.

Стандартные имена для входа в админку

Обычно для входа в админку все используют стандартные имена: manager, admin, часть своего или имени сайта — так делать не нужно. Используйте сложные имена (в идеале рандомный набор букв с цифрами) — это замедлит Brute force.

Ужесточи доступы

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

Настрой страницу 404

Настройте отдельную 404 страницы — которая отдает 404 ответ, в противном случае сканеры, которые ищут уязвимости, могу создать огромные нагрузки на сайт.

Установи SSL-сертификат

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

Пожалуй все самое основное написал. Есть дополнения — пишите их в комментариях.

Оценить статью
web-revenue.ru
Добавить комментарий