Перейти к содержанию

кибербезопасность / чек-лист запуска

Чек-лист безопасности сайта и веб-приложения перед запуском

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

5 минут

Как пользоваться этим чек-листом

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

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

Доступы и авторизация

Проверьте каждую роль отдельно. Пользователь не должен получать чужой объект простым изменением идентификатора в URL или API. Административные функции защищают отдельными разрешениями, а не только скрытой кнопкой. Сессии завершаются после смены пароля и имеют разумный срок жизни.

  • Многофакторная аутентификация для администраторов и инфраструктуры.
  • Уникальные учётные записи без общих паролей команды.
  • Минимальные права для сервисов, базы данных и CI/CD.
  • Удаление доступов бывших сотрудников и подрядчиков.
  • Защита восстановления пароля и ограничение перебора.

Формы, API и работа с данными

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

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

Зависимости, секреты и поставка

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

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

Сервер, TLS и защитные заголовки

Оставьте открытыми только нужные порты, отключите парольный вход администратора, обновляйте ОС и веб-сервер из доверенных репозиториев. HTTPS должен работать на всех страницах, а HTTP - перенаправлять на канонический домен. HSTS, CSP, запрет встраивания и безопасная политика источника уменьшают поверхность атаки, но требуют проверки в реальном браузере.

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

Журналы, мониторинг и план реакции

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

До инцидента запишите, как изолировать систему, восстановить сервис, сохранить доказательства и уведомить заинтересованных лиц. Короткий проверенный план полезнее большого документа, который никто не открывал.

Когда нужен отдельный пентест

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

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

Источники и методики

Частые вопросы

Входит ли пентест в обычную разработку сайта?

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

Можно ли тестировать рабочий сайт?

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

Какие методики использовать?

Для веб-приложений используют OWASP WSTG и ASVS, для API - OWASP API Security Top 10. Конкретный набор проверок зависит от модели угроз и периметра.

Другие материалы базы знаний

Хотите применить это к своему проекту?

Покажите текущий сайт или опишите задачу. Скажем, какой шаг даст больше пользы сейчас и какой бюджет стоит закладывать.

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

новый проект

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

Выберите удобный способ. Отвечаем в течение рабочего дня.