gpt4 book ai didi

security - 什么时候应该启用 HSTS?

转载 作者:太空宇宙 更新时间:2023-11-03 12:44:12 25 4
gpt4 key购买 nike

如果我正在运行仅 HTTPS 服务,是否有任何理由不启用 HSTS?是否有在不永久启用 HSTS 的情况下测试 HSTS 的策略或“退出”HSTS 的方法?

最佳答案

我想在 Mike 的回答中添加警告,即您可能没有运行仅 HTTPS 服务。原因是当您的服务器不在端口 80 上监听时,如果您只输入域而不是协议(protocol)(stackoverflow.com 而不是 https://stackoverflow.com) 您的浏览器不会自动尝试连接端口 443 (https) 并显示连接错误。因此对于大多数站点来说,仅 HTTPS 服务是不可能的。

通过 301/303 转发将每个 http 页面转发到 https 页面来确保 https 连接的经典方法 is not a sufficient replacement for HSTS . 事实上,HSTS 正是为这种情况而构建的。原因是许多书签和链接仍将指向 http,每次用户输入 URL 而未指定协议(protocol)时(始终如此),浏览器将首先尝试 http 连接。主动攻击者可以劫持第一个连接,并且永远不会将用户转发到 https 站点。

为了让您对这种攻击有一个更生动的印象,想象一个国家欺骗每个 DNS 请求到 Twitter 并用它自己的 IP 回答。当它收到 https 请求时,它会将其转发到 Twitter,而不采取任何操作(并有可能被拦截)。但是当它收到一个 http 请求时,它会使用工具 ssl strip Mike 已经提到将连接内容透明地转发到 twitter 的 TLS 端口。用户和推特都没有注意到任何东西都关闭了(除了检查 TLS 加密的非常警觉的用户)但是国家可以访问每个登录密码。

HSTS 可以保护那些之前与服务器有合法 https 连接并且已经看到 HSTS header 的用户。 header 指示浏览器将域的每个 http url 与 https url 本身交换(在完全建立 http 连接之前)并拒绝与该域的任何未加密连接。因此,在上述情况下,几乎所有用户都不会以受损的 http 连接结束,并且可以安全地抵御全国范围的攻击。<​​/p>

关于security - 什么时候应该启用 HSTS?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23040408/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com