Реестр проверок · Стандарт безопасности CPLY
Базовые security headers должны быть настроены
Внутренний стандарт CPLY, не закон: наше минимальное требование к сайту.
Что требуется
Заметно
заголовки безопасности снижают риск XSS, clickjacking, утечек referrer и небезопасного транспорта. Применимость: публичным сайтам с HTML-страницами, формами, личным кабинетом, оплатой или пользовательскими сессиями. Нарушение для CPLY фиксируется только по публичным признакам: отсутствуют ключевые заголовки безопасности или они настроены в небезопасном режиме.
Кому применимо
публичным сайтам с HTML-страницами, формами, личным кабинетом, оплатой или пользовательскими сессиями.
Когда мы это проверяем: сайт отдаёт HTML-страницы с формами, оплатой, сессиями или пользовательским вводом.
На чём основано
внутренний стандарт CPLY
внутренний стандарт CPLY требует базовые HTTP-заголовки безопасности для публичных HTML-страниц с формами, сессиями или оплатой.
Что считается нарушением
отсутствуют ключевые заголовки безопасности или они настроены в небезопасном режиме.
Не считается нарушением: статические файлы, для которых часть HTML-заголовков неприменима.
Примеры: личный кабинет не отдаёт защиту от встраивания во frame — нарушение.
Чем грозит
Несоответствие влияет на техническую безопасность, доверие браузера или защитные свойства страниц. Это внутренний baseline CPLY; прямые правовые последствия зависят от контекста обработки данных и инцидентов.
При FAIL карточка показывает конкретный публичный пробел: отсутствуют критичные заголовки для сайта с формами или сессиями. Риск подтверждается только при применимости требования и наличии доказательств crawler-а.
Как мы это проверяем
crawler запрашивает основные страницы и анализирует Content-Security-Policy, Strict-Transport-Security, X-Frame-Options или frame-ancestors, Referrer-Policy и X-Content-Type-Options.
Какие доказательства собираем: crawler запрашивает основные страницы и анализирует Content-Security-Policy, Strict-Transport-Security, X-Frame-Options или frame-ancestors, Referrer-Policy и X-Content-Type-Options. Минимальный набор фактов: http.headers.*, pages.http_status.*, security.headers.*. Карточка finding должна ссылаться на URL/скриншот/текстовый фрагмент, из которого сделан вывод.
Как исправить
Довести сайт до состояния PASS: базовые security headers присутствуют и не ослабляют защиту. Минимальные факты для повторной проверки: http.headers.*, pages.http_status.*, security.headers.*; finding-токены: cply.security.headers.missing, cply.security.headers.weak.
Конкретные шаги — На сайте не включены защитные настройки браузера
- Включите защитные настройки на веб-сервере nginx — Попросите специалиста, который обслуживает сайт, добавить строки из готового текста в конфигурацию сайта (блок server) и перезапустить nginx. После этого проверьте, что сайт открывается как обычно.
add_header Strict-Transport-Security "max-age=31536000" always; add_header X-Content-Type-Options "nosniff" always; add_header X-Frame-Options "SAMEORIGIN" always; add_header Referrer-Policy "strict-origin-when-cross-origin" always; add_header Content-Security-Policy "frame-ancestors 'self'" always;
- Включите защитные настройки на веб-сервере Apache — Если сайт работает на Apache, включите модуль headers (команда a2enmod headers), добавьте строку из готового текста в конфигурацию сайта и такие же строки Header always set для X-Content-Type-Options (nosniff), X-Frame-Options (SAMEORIGIN), Referrer-Policy (strict-origin-when-cross-origin) и Content-Security-Policy (frame-ancestors 'self'), затем перезапустите Apache.
Header always set Strict-Transport-Security "max-age=31536000"
Статусы проверки
Зелёная карточка
базовые security headers присутствуют и не ослабляют защиту.
Жёлтая карточка
часть заголовков отсутствует или требует уточнения.
Красная карточка
отсутствуют критичные заголовки для сайта с формами или сессиями.
Проверка неприменима
проверяемый ресурс не отдаёт HTML пользователям.
Какие проверки закрывают требование
Документ и редакция
Внутренний стандарт CPLY: базовая безопасность публичного сайта · редакция v1 от 2026-07-01