Обсудить проект

Как защитить сайт от взлома: базовые меры для бизнеса

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

Обложка статьи «Как защитить сайт от взлома: базовые меры для бизнеса»
Содержание
  1. Как обычно взламывают сайты
  2. Базовые меры защиты
  3. Обновления
  4. Минимум сторонних компонентов
  5. Надёжные пароли и двухфакторная аутентификация
  6. Права доступа
  7. Защита админ-панели
  8. Безопасная обработка форм
  9. Безопасная загрузка файлов
  10. HTTPS
  11. Скрытие технической информации
  12. Резервные копии
  13. Мониторинг
  14. Что делать, если сайт взломали
  15. Безопасность при разработке
  16. Короткий чек-лист
  17. Итог

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

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

Как обычно взламывают сайты

  • устаревшие CMS, плагины и темы с известными уязвимостями — самая частая причина;
  • слабые или повторяющиеся пароли к админ-панели, хостингу, почте;
  • утечка доступов: пароли пересылались в мессенджере, остались у бывших сотрудников или подрядчиков;
  • небезопасная загрузка файлов: через форму загружают исполняемый скрипт;
  • ошибки в собственном коде: SQL-инъекции, межсайтовый скриптинг;
  • заражённый компьютер администратора, с которого крадут сохранённые пароли.

План статьи «Как защитить сайт от взлома: базовые меры для бизнеса»: Как обычно взламывают сайты; Базовые меры защиты; Что делать, если сайт взломали; Безопасность при разработке; Короткий чек-лист; Итог

Базовые меры защиты

Обновления

Регулярно обновляйте платформу, фреймворк, плагины и версию PHP. Обновления часто закрывают уязвимости, о которых уже знают злоумышленники. Перед обновлением делайте резервную копию и проверяйте изменения на тестовой копии.

Минимум сторонних компонентов

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

Надёжные пароли и двухфакторная аутентификация

  • длинные уникальные пароли для каждой системы — используйте менеджер паролей;
  • двухфакторная аутентификация везде, где возможно: хостинг, регистратор домена, почта, админ-панель;
  • никаких общих учётных записей «admin» на всех сотрудников.

Права доступа

  • у каждого сотрудника свой вход и только нужные права: редактор статей не должен иметь доступа к настройкам и заявкам;
  • при увольнении сотрудника или завершении работы с подрядчиком — сразу отзывайте доступы и меняйте пароли;
  • доступы к хостингу и домену — у владельца бизнеса.

Защита админ-панели

  • вход только по HTTPS;
  • ограничение числа попыток входа;
  • админ-панель не должна быть доступна без авторизации — запрет в robots.txt не защищает;
  • журнал действий: кто и что менял.

Безопасная обработка форм

  • проверка всех данных на сервере, а не только в браузере;
  • защита от подделки запросов там, где пользователь авторизован;
  • ограничение частоты отправки форм и скрытые ловушки для ботов;
  • текст из визуального редактора очищается от скриптов и опасных атрибутов перед сохранением — это защищает от внедрения вредоносного кода даже через админ-панель.

Безопасная загрузка файлов

  • разрешены только нужные форматы (например, PDF и DOCX для ТЗ, JPG, PNG и WebP для изображений);
  • проверяется реальный тип файла, а не только расширение;
  • ограничен размер;
  • в папках с загрузками запрещено выполнение скриптов;
  • изображения пересохраняются на сервере — это заодно удаляет из них посторонние данные.

HTTPS

Шифрование данных между браузером и сервером. Подробнее — в статье о HTTPS и SSL.

Скрытие технической информации

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

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

Даже при всех мерах защиты нужен план восстановления. Регулярные копии файлов и базы данных, хранящиеся отдельно от сервера, — гарантия, что сайт можно вернуть. Подробнее — в статье о резервном копировании.

Мониторинг

  • уведомления о недоступности сайта;
  • проверка на вредоносный код;
  • контроль изменений файлов;
  • отслеживание сообщений в Яндекс.Вебмастере и Search Console о проблемах безопасности.

Что делать, если сайт взломали

  1. Не паникуйте и не удаляйте всё подряд — можно уничтожить следы, которые помогут найти причину.
  2. Смените все пароли: хостинг, админ-панель, база данных, почта, FTP.
  3. Восстановите сайт из чистой резервной копии, сделанной до взлома.
  4. Найдите и закройте уязвимость — иначе взлом повторится. Обновите компоненты.
  5. Проверьте пользователей админ-панели и удалите незнакомые учётные записи.
  6. Проверьте сайт в панелях вебмастеров, исправьте проблемы и отправьте запрос на повторную проверку.
  7. Если могли утечь данные клиентов — оцените масштаб и действуйте в соответствии с требованиями закона.

Безопасность при разработке

Многие уязвимости закладываются ещё при создании сайта. Использование современного фреймворка с встроенной защитой от типовых атак, проверка прав доступа, очистка пользовательского ввода, безопасная работа с файлами — это то, что я закладываю в каждый проект. Подробнее о технологии — в статье почему Laravel.

Короткий чек-лист

  • Платформа и компоненты обновлены
  • Неиспользуемые плагины удалены
  • Уникальные пароли и двухфакторная аутентификация
  • У каждого сотрудника свой вход с нужными правами
  • Доступы бывших сотрудников и подрядчиков отозваны
  • HTTPS на всём сайте
  • Режим отладки выключен
  • Загрузка файлов ограничена и проверяется
  • Резервные копии делаются и проверяются
  • Настроен мониторинг

Итог

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