HTTP-заголовки безопасности и оценка
Заголовки ответа, которые говорят браузеру, что разрешено. Вместе они определяют, что реально сможет сделать внедрённый скрипт или попытка встроить сайт в чужой фрейм.
Заголовки безопасности — это указания, которые сервер отправляет вместе с каждой страницей. Ошибок в коде они не исправляют, но ограничивают, чем эти ошибки можно воспользоваться. Если злоумышленнику удастся внедрить скрипт, строгая политика не даст ему подгрузить код со стороны; если кто-то встроит сайт во фрейм ради подставных кликов, браузер откажется его отрисовать.
Как считается оценка
SiteScan читает заголовки главной страницы и оценивает шесть из них: Strict-Transport-Security, Content-Security-Policy, X-Content-Type-Options, X-Frame-Options, Referrer-Policy и Permissions-Policy. Правильно настроенный заголовок даёт 2 балла и помечается «Сильный», слишком мягкий — 1 балл и «Слабый», отсутствующий — 0. Из 12 баллов 11 и больше дают оценку A, 9 — B, 7 — C, 5 — D, 3 — E, меньше — F.
В группе есть ещё три строки, которые на оценку не влияют: HSTS preload, чтение с других origin (CORS) и метод TRACE.
Где их задавать
Заголовки добавляют в веб-сервере (add_header в nginx, Header always set в Apache), в правилах CDN или в middleware фреймворка. Задайте их один раз для всех ответов, а не постранично. Готовый набор — в статье о заголовках безопасности.
Проверьте этот пункт на своём сайте
Запустите бесплатное сканирование: в отчёте будет эта строка для вашего домена вместе с остальными проверками аудита.
Ещё в разделе «Заголовки безопасности»
- Заголовок Strict-Transport-Security (HSTS)
- Заголовок Content-Security-Policy (CSP)
- X-Content-Type-Options: nosniff
- X-Frame-Options и защита от кликджекинга
- Заголовок Referrer-Policy
- Заголовок Permissions-Policy
- Список HSTS preload
- CORS и чтение с других origin
- HTTP-метод TRACE
- Обработка ошибки 404 и мягкий 404
Что проверяет SiteScan
TLS-сертификат
- Срок действия SSL/TLS-сертификата
- Устаревшие версии TLS (1.0 и 1.1)
- Цепочка сертификатов TLS
- Издатель TLS-сертификата
- Алгоритм подписи сертификата
Регистрация домена
- Срок регистрации домена
- Зарегистрированное доменное имя
- Регистратор домена
- Дата регистрации домена
- Дата последнего изменения домена
- Статусы домена в реестре (EPP)
- Запрет на перенос домена
- Abuse-контакт регистратора
- Источник данных RDAP и WHOIS
Индексация
- Файл robots.txt
- CSS и JS, закрытые в robots.txt
- XML-карта сайта (sitemap.xml)
- Индекс карт сайта
- Чужие URL в карте сайта
- Даты lastmod в карте сайта
- Битые URL в карте сайта
- RSS- и Atom-лента
Адреса и редиректы
- Редирект с HTTP на HTTPS
- Редирект с www и без www
- Длина цепочки редиректов
- Обработка ошибки 404 и мягкий 404
Заголовки безопасности
- HTTP-заголовки безопасности и оценка
- Заголовок Strict-Transport-Security (HSTS)
- Заголовок Content-Security-Policy (CSP)
- X-Content-Type-Options: nosniff
- X-Frame-Options и защита от кликджекинга
- Заголовок Referrer-Policy
- Заголовок Permissions-Policy
- Список HSTS preload
- CORS и чтение с других origin
- HTTP-метод TRACE
Отдача и репутация
- Заголовок Cache-Control для HTML
- Ревалидация через ETag и Last-Modified
- Поддержка HTTP/3 и QUIC
- Версии ПО в заголовках сервера
- Проверка по DNS-блоклистам (DNSBL)
Внутренние ссылки
Открытые файлы
- Открытые файлы .env, .git и бэкапы
- Листинг директорий на сервере
- Публичные source maps JavaScript
- Открытые точки входа WordPress
Служебные файлы
- Файл security.txt
- Файл llms.txt для ИИ-ассистентов
- Файл llms-full.txt
- Файл ads.txt для рекламы
- Файл humans.txt
- Адрес /.well-known/change-password
DNS и почта
- MX-записи (почтовые серверы)
- Запись SPF
- Запись и политика DMARC
- Подпись зоны DNSSEC
- Запись CAA
- Резервирование DNS-серверов
- Поддержка IPv6 (AAAA-запись)
- Политика MTA-STS
- Запись TLS-RPT для отчётов
- Запись BIMI (логотип в почте)
- Wildcard-запись в DNS
- Висячий CNAME и захват поддомена
Приватность и согласие
- Счётчики аналитики и трекеры
- Баннер согласия на cookie
- Политика конфиденциальности
- Пользовательское соглашение
- Выходные данные (Impressum)
- Заявление о доступности
Core Web Vitals
- Оценка производительности Lighthouse
- Largest Contentful Paint (LCP)
- Cumulative Layout Shift (CLS)
- Interaction to Next Paint (INP)
- Полевые данные CrUX и лабораторные замеры