Как проверить список веб-сайтов против заголовков HSTS - PullRequest
0 голосов
/ 09 июля 2019

Мне нужно изучить список сайтов, чтобы проверить, поддерживают ли они политику HSTS или нет.

Я схватил их заголовки ответа.Однако сейчас я в замешательстве, потому что кажется, что подписка на политику HSTS может осуществляться через предварительно загруженные списки, а не только заголовки (я могу ошибаться, но я не понимаю этого).

Проверяет ли заголовки ответов веб-сайтов (т.е. ищет заголовок Strict-Transport-Security) правильный ответ на вопросы: поддерживает ли веб-сайт политику HSTS?

Потому что есть предварительно загруженный список.Я не уверен: может ли веб-сайт подписаться на список без отправки заголовка HSTS?т.е. может ли веб-сайт поддерживать политику HSTS без отправки заголовка Strict-Transport-Security?

Я проверил страницу Chrome для подписки на предварительно загруженный список HSTS здесь .В нем говорится:

Если ваш сайт поддерживает HTTPS и вы хотите предварительно загрузить HSTS, мы предлагаем следующие шаги: [...] Добавьте заголовок Strict-Transport-Security ко всем ответам HTTPS иувеличить максимальный возраст поэтапно, используя следующие значения заголовка: [...]

Может кто-нибудь уточнить мне.Во-первых, слово suggest на странице Chrome не совсем понятно.Это обязательно?или необязательно?Во-вторых, если это необходимо, то, если веб-сайт, который хочет подписаться на список, должен в любом случае отправлять заголовок HSTS, почему он подписывается на список?Является ли этот список просто средством защиты первого соединения (которое не может быть защищено методом заголовка HSTS)?или это средство двойной проверки или что-то в этом роде?Пожалуйста, уточните мне.

Суть вопроса: достаточно ли мне проверить заголовки, чтобы сказать, поддерживает ли данный веб-сайт политику HSTS или нет, не сверяя веб-сайт с предварительно загруженным списком Chrome?

Еслитребуется проверка веб-сайта на соответствие предварительно загруженному списку HSTS в Chrome. Не могли бы вы указать мне, как автоматизировать это (я не могу выполнить это вручную, поскольку у меня есть список веб-сайтов, не один или два).Кроме того, как проверить сайт по списку конкретной даты в прошлом (несколько месяцев назад).

1 Ответ

0 голосов
/ 09 июля 2019

Проверяет ли заголовки ответа веб-сайтов (т.е. ищет заголовок Strict-Transport-Security) правильный ответ на вопросы: поддерживает ли веб-сайт политику HSTS?

Да.

Потому что есть предварительно загруженный список.Я не уверен: может ли веб-сайт подписаться на список без отправки заголовка HSTS?т.е. может ли веб-сайт поддерживать политику HSTS без отправки заголовка Strict-Transport-Security?

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

Может кто-нибудь уточнить мне.Во-первых, слово «предложить» на странице Chrome не совсем понятно.Это обязательно?или необязательно?

Как правило, правила ОБЯЗАНЫ, и они не будут автоматически приняты в список, если правила не будут соблюдены, и они могут быть удалены из списка предварительной загрузки.Однако правила созданы для того, чтобы их нарушать, и вы можете запросить добавление вручную, если хотите.Например, https://gov.uk (правительство Великобритании) находится в списке предварительной загрузки, но без атрибута includeSubDomain в заголовке HSTS.Вероятно, это связано с тем, что они еще не преобразовали все свои субдомены в HTTPS, но все же хотят защитить предварительную загрузку для этого важного сайта верхнего уровня.Не все из нас имеют влияние на правительство Великобритании, поэтому для остальных лучше следовать всем правилам и автоматически отправлять.

Во-вторых, если это необходимо, то, если веб-сайтесли вы хотите подписаться на список, ему все равно нужно отправить заголовок HSTS, почему он подписывается на список?Является ли этот список просто средством защиты первого соединения (которое не может быть защищено методом заголовка HSTS)?или это средство двойной проверки или что-то в этом роде?Пожалуйста, уточните мне.

Верно.Предварительная нагрузка предназначена для защиты первой нагрузки.Без этого браузер не видел заголовок HSTS и поэтому не знает, что сайт поддерживает HSTS.

Если честно, я думаю, что предварительная загрузка для большинства сайтов излишня, и мне очень не нравится концепция жесткого кодирования ввывести его из-под контроля, и это может быть ножом, как я обсуждаю в этом блоге .В целом (но не всегда!) Первый запрос является относительно безопасным (поскольку у вас нет файлов cookie), и если вы используете методы безопасного веб-сайта (Secure, HTTPOnly cookie, HSTS и перенаправление на HTTPS), риски относительно низкие.Однако, если вы являетесь всемирно известным сайтом (например, правительством Великобритании), тогда предварительная загрузка обеспечивает наилучшую защиту.

Суть вопроса: достаточно ли мне проверить заголовки, чтобы сказать,данный веб-сайт поддерживает политику HSTS или нет, не проверяя веб-сайт по предварительно загруженному списку Chrome?

В значительной степени, как обсуждалось выше.Хотя у вас могут быть некоторые крайние случаи, когда он был (есть?) Все еще предварительно загружен, но прекратил публикацию заголовка.Это зависит от того, почему именно вам НУЖНО знать, используется ли HSTS или нет.

Если требуется проверка веб-сайта по предварительно загруженному списку HSTS в Chrome, не могли бы вы указать мне, как автоматизировать это (яне могу выполнить это вручную, так как у меня есть список сайтов, а не один или два).Кроме того, как проверить веб-сайт по списку определенной даты в прошлом (несколько месяцев назад).

Вам нужно будет проверить это по исходному коду HSTS ,и посмотрите на исторические версии этого списка.Не то чтобы другие браузеры не могли использовать этот же список .Для проверки текущего состояния одного или двух сайтов вручную такие инструменты, как SSLLabs или Hardenize , обычно анализируют этот список для вас.

...