HSTS понимание

Я заинтересован в механизме HSTS и хочу уточнить следующий момент:

Например, есть сайт https://example.com/ существует. Я использую http://chrome//net-internals/, чтобы проверить, включен ли там HSTS. И это показывает следующую информацию:

static_sts_domain: 
static_upgrade_mode: UNKNOWN
static_sts_include_subdomains: 
static_sts_observed: 
static_pkp_domain: 
static_pkp_include_subdomains: 
static_pkp_observed: 
static_spki_hashes: 
dynamic_sts_domain: example.com
dynamic_upgrade_mode: FORCE_HTTPS
dynamic_sts_include_subdomains: true
dynamic_sts_observed: 1524145911.957196
dynamic_sts_expiry: 1555681911.957194
dynamic_pkp_domain: 
dynamic_pkp_include_subdomains: 
dynamic_pkp_observed: 
dynamic_pkp_expiry: 
dynamic_spki_hashes:

Так что я ожидаю и думаю, что там включен HSTS. Но в то же время нет Strict-Transport-Security заголовок в ответе. Почему chrome отображает такую ​​информацию и включен ли HSTS для этого сайта?

1 ответ

Решение

Но в то же время в ответе нет заголовка Strict-Transport-Security.

Должно быть, это было в какой-то момент, потому что динамическая запись была добавлена ​​в ваш экземпляр Chrome.

Также помните, что HSTS можно отправлять на любой ресурс, а не только на основной документ. Так что, если вы отправляете его на ресурс логотипа, то это установит его для всего домена.

Вы можете очистить его, используя тот же chrome://net-internals/#hsts страницу и посмотреть, вернется ли она после просмотра? Если так, то что-то все еще отправляет, если нет, то, возможно, сайт, используемый для рекламы HSTS, но больше не делает.

Он был активен в течение одного года:

(1555681911.957194 - 1524145911.957196) / 365 / 24 / 60 = 1 year

И из моих грубых расчетов, пытающихся конвертировать эти метки даты, похоже, что последний раз это было установлено 20 апреля 2018 года.

Если сайт действительно прекратил использовать HSTS по какой-либо причине, может быть лучше вместо этого объявить заголовок 0, так что по крайней мере те посетители, которые посещают через HTTPS, теперь удалят политику:

Strict-Transport-Security: max-age=0; includeSubDomains

Любой, кто не посещает через HTTPS, не будет очищен, пока не истечет срок его действия.

HSTS представляет собой строгую транспортную безопасность HTTP. В тот момент, когда у вас есть поддержка HSTS, он не позволяет изначально размещать сайт в HTTP до использования перенаправления 301. Это означает, что у программистов нет времени проскользнуть и использовать его с HTTP и не дать сайту накапливать HTTPS. HSTS позволяет сайту складываться только по протоколу HTTPS, обеспечивая дополнительный уровень безопасности для вашего сайта. Этот уровень безопасности сообщает программе, что у сайта есть гарантия HTTPS и нет веских причин для попытки доступа к сайту по HTTP. Это закроет маленькое окно, которое программисты получили во время переадресации 301. См. Шаги ниже:

Чтобы получить подробное представление о протоколах гипертекста и поддержке HSTS, нажмите здесь.

Другие вопросы по тегам