问题几乎在标题中。如果我有一个应用并使用includeSubdomains
作为HSTS标头,但根本没有子域,这是好还是坏?
答案 0 :(得分:1)
很好。
我们假设你有https://example.com,而且你使用的都是http://www.example.com。 HSTS可确保您仅在此域上使用HTTPS。这可以防止降级攻击。
如果没有includeSubDomain,攻击者可以设置并使用假的子域名,例如http://secure.example.com或http://anyotherlegitimatssounsingsubdomain.example.com或https://example.com,并通过http转换它们,让人们以某种方式去那里而不是{{ 3}}。当然,这需要访问操纵受害者的DNS,但这可能通过某些技术。
由于它是您主域的子域,因此它看似合法(虽然没有https),也可能泄漏或覆盖主域的Cookie。
仅仅因为您没有使用子域名并不意味着您的用户知道这一点。
对于应用来说,这可能不太重要,因为在应用上设置了网址并且更难以更改,并且他们通常不会使用Cookie,但它仍然被认为是使用includeSubDomain的最佳做法