如果我是一个邪恶的代理操作者,想要修改响应内容,但不关心受害者是否看到 http://?如果浏览器请求https://example.com,但 example.com从来没有有效的 SSL 证书会发生什么?浏览器会自动重定向到 http:// 版本吗?如果是这样,那么邪恶的代理操作员应该能够模拟该响应,对吗?
是否可以在现代浏览器中将 https 重定向到 http?
信息安全
tls
http
代理人
2021-09-09 21:01:25
1个回答
如果浏览器请求https://example.com,但 example.com 从来没有有效的 SSL 证书会发生什么?浏览器会自动重定向到 http:// 版本吗?
不,现代浏览器不会自动降级到纯 HTTP。如果证书无效,用户只会看到证书警告(最终会看到添加例外的选项)。
如果是这样,那么邪恶的代理操作员应该能够模拟该响应,对吗?
如果浏览器在看到无效证书时确实重定向到纯 HTTP,则 MITM 可以通过修改传输的证书详细信息来静默降级任何新的安全连接。那将是一个重大的安全问题。这就是为什么只要您从一开始就使用 HTTPS,MITM 就无法将您重定向到任何地方。
相反,攻击者可以做的是在连接升级到 HTTPS之前尝试拦截纯 HTTP 响应。例如,如果您输入mybank.com
,您的浏览器不知道该站点是否还提供 HTTPS 并http://mybank.com
首先尝试。即使此 HTTP 站点立即响应重定向到https://mybank.com
,MITM 也可能已经拦截响应并删除重定向以使您保持在纯 HTTP 上。(HTTP 严格传输安全 (HSTS)功能通过指示您的浏览器始终通过 HTTPS 访问该站点并拒绝所有使用纯 HTTP 的尝试来防止这种精确的攻击。)