Проверка HSTS
Проверьте, отправляет ли сайт заголовок HTTP Strict Transport Security, и изучите его значение.
Последние отправки
Что делает проверка HSTS
Инструмент запрашивает сайт и проверяет, включает ли ответ заголовок HTTP Strict Transport Security. Он показывает значение заголовка и указывает, присутствует ли заголовок и считается ли он валидным.
HSTS — это политика безопасности, передаваемая через заголовок ответа Strict-Transport-Security. Получив его по HTTPS, браузер запоминает, что к сайту следует обращаться только по HTTPS в течение указанного периода. Последующие запросы автоматически переводятся на HTTPS, даже если ссылка использует обычный HTTP.
Почему HSTS важен
Без HSTS пользователь, набирающий домен без схемы или переходящий по HTTP-ссылке, может отправить первый запрос по обычному HTTP, прежде чем его перенаправят на HTTPS. Этот первый запрос уязвим к перехвату, а сам редирект можно подменить. HSTS закрывает эту брешь, давая браузеру указание полностью пропускать HTTP в течение настроенного периода.
HSTS также защищает от некоторых атак с понижением версии протокола и сценариев перехвата cookie. Это относительно простой в развёртывании заголовок, который при этом существенно укрепляет транспортную безопасность для повторных посетителей.
Как читать заголовок
Основная директива — max-age, выраженная в секундах. Значение 31536000 соответствует одному году. Значение ноль отключает HSTS. Заголовок может также содержать includeSubDomains, что распространяет политику на все поддомены, и preload, что сигнализирует о праве на включение в списки предзагрузки браузеров.
Проверка помечает заголовок как валидный или невалидный. Валидность обычно зависит от наличия корректно сформированной директивы max-age. Полностью отсутствующий заголовок означает, что HSTS для этого ответа не включён.
Меры предосторожности при развёртывании
- Начинайте с короткого max-age. Длинный max-age трудно отменить, если поддомен не может обслуживаться по HTTPS.
- Проверьте поддомены перед includeSubDomains. Директива применяется к каждому поддомену, включая внутренние и legacy-поддомены.
- Preload — долгосрочное обязательство. Удаление из списков предзагрузки занимает время, поэтому включайте его только при полной уверенности.
- Отправляйте заголовок в HTTPS-ответах. Браузеры игнорируют HSTS-заголовки, переданные по обычному HTTP.
Практический сценарий
Подтвердите наличие заголовка на основном домене и на репрезентативных поддоменах. Убедитесь, что HTTPS надёжно работает везде, прежде чем увеличивать max-age. После изменений проверьте заголовок снова и рассмотрите использование инструментов разработчика браузера, чтобы убедиться, что политика сохранена. Для сайтов, планирующих preload, внимательно изучите требования перед подачей заявки.
Ограничения
Проверка сообщает о заголовке в полученном ответе. Она не тестирует поведение браузера, не проверяет статус в списке предзагрузки и не может подтвердить, что каждый поддомен поддерживает HTTPS.
Похожие инструменты
Проверьте SSL/TLS-сертификат: издателя, сроки действия и параметры подписи.
Просмотрите HTTP-заголовки ответа для URL.
Проверьте, поддерживает ли веб-сайт протокол HTTP/2.
Проверьте, отдаёт ли веб-сайт контент, сжатый алгоритмом Brotli.
Популярные инструменты
Проверьте, есть ли у изображений на веб-странице атрибуты alt для доступности и SEO изображений.
Измерьте общий размер веб-страницы, включая все загружаемые ресурсы.
Проверьте, установлена ли для страницы директива noindex через метатеги, HTTP-заголовки или robots.txt.
Сравните объём видимого текста с HTML-кодом на веб-странице.