当我启动我的浏览器(例如 Chrome)并在地址栏中输入一些内容(不是 URL,例如一个单词)时,它会将我重定向到 Google 搜索这个单词。在这些情况下,通常的锁不会说连接是安全的,而是说连接不安全。如果我重新加载页面,锁就在那里,页面显示为安全。这并不总是在我启动浏览器时发生,但在大多数情况下。
这种行为的原因是什么?
我使用 Windows 10 版本 21H1 和 Google Chrome 浏览器。此外,每当系统要求我这样做时,我都会更新我的系统。
我刚刚安装了 Windows 10 Version 21H2 的更新,从那以后就没有出现该行为,但由于该行为并不总是发生,我不知道它是否与此更新有关。
出于某种原因,我无法在此处迁移问题后对其发表评论,因此我编辑了问题:@LPChip 感谢您的建议,虽然自 Windows 更新以来我无法重现该错误,但我检查了默认搜索引擎的 URL Chrome 浏览器,但是对于 Google 站点,没有正常的 URL,而是像 {Google:baseURL}search?q=... 和“google.com”作为缩写名称。我怎样才能知道这是指 http 还是 https?为什么默认是http?我没有更改此设置,我认为 Chrome 默认应该是 https?
更新:我可以再次重现该问题。该 URL 是一个 https 地址 ("https://www.google.com/search?q="...),所以这似乎不是问题。
更新2:感谢评论中的建议!我卸载了 Chrome,删除了 Appdata/Local/Google 目录中的 Chrome 目录,重新启动 PC 并再次安装了 Chrome。这并没有解决问题。接下来我将默认搜索 URL 设置为“https://www.google.com/search?q=%s”,这解决了问题。虽然该行为不再发生,但我想知道:我现在还好吗,或者这只是我的 PC 上存在恶意软件的症状,我必须小心处理?我的防病毒软件没有检测到任何可疑的东西。我还发现有趣的是:该行为取决于搜索词,例如,如果我搜索“yahoo”,则会发生该行为,但如果我搜索“test”,则不会发生。这是否支持它是混合内容警告的假设?
免责声明:由于我和 OP 现在无法再复制“不安全”警告,因此此答案提供了两种理论,而不是明确的答案。对于一般测试,清除
chrome://net-internals/#hsts
Google 域的浏览器数据(cookie、缓存和 HSTS 数据)很重要。理论1:HSTS
Chrome 中的默认搜索引擎是通过
{google:baseURL}
前缀定义的,它可能是http://google.com
或http://www.google.com
,因此是一个普通的 HTTP URL。在我的测试中,
http://google.com
重定向到http://www.google.com
first,它重定向到https://www.google.com
HTTPS 安全并设置HSTS 标头标头。然而,这可能取决于实际使用的 Google 服务器/数据中心,基于地理位置以及当前数据中心负载的时间。客户端也会影响这一点,例如使用curl
,http://www.google.com
既不会重定向到 HTTPS,也不会https://www.google.com
使用 HSTS 标头响应。在使用 Chrome 首次访问时,在重定向期间,因此会在中间访问纯 HTTP URL,这可能会导致警告,即使最终 URL 是 HTTPS。
在页面重新加载时,当至少没有清除 HSTS
chrome://net-internals/#hsts
数据http://www.google.com
(Status Code: 307 Internal Redirect; Non-Authoritative-Reason: HSTS
被绕过。理论2:混合内容
首次访问时,根据搜索词,可能会加载外部纯 HTTP 资源,当父网站通过 HTTPS 提供时称为混合内容。这预计会引发“不安全”警告。
在页面重新加载时,当未清除此外部资源的浏览器缓存时,相同的资源已存储在浏览器缓存中,因此不再从外部纯 HTTP URL 中提取,并且绕过了警告。
yahoo
但是,用作搜索词时的 Yahoo 徽标不是外部资源,而是直接从 Google 页面作为 base64 编码数据提供。前缀表示这data:image/png;base64,
一点,以下字符或 URL 包含编码图像本身。通过地址栏直接打开此类 URL 会显示“不安全”图标,因为它确实不是 HTTPS 授权来源,但当作为 HTTPS 网站的资源提供时,它不会显示警告。虽然我们不希望 Google 网站会出现这种情况,但根据搜索词的不同,可能会在未缓存的访问中提供混合内容。潜在的解决方案
在 Chrome 设置区域中定义一个明确的安全默认搜索引擎,然后将其设置为默认值。重新启动 Chrome,然后再试一次,看看它是否仍然出现。
卸载 Chrome,重新启动,然后重新安装 Chrome。Chrome
/appdata
目录中的某些内容可能已损坏,重新安装和重新启动可能会解决。如果您的计算机在本地或计算机加入的域中应用 Chrome 组策略,则强制执行的策略可能会导致此问题,因此请与您的 IT 管理员联系。
我可以通过搜索“雅虎”来重现该问题:注意地址栏左侧的小 (i) 徽章。
这里的一个问题可能是搜索通过信息框拉入的“雅虎”徽标被归类为“非安全”项目(尽管实际上它是内嵌图像)。如果我只加载图像,我会在地址栏的左侧看到一个“不安全”图标。
所以,是的,你得到的可能是混合内容警告。-但最后看我的编辑。
无论如何,这绝不是危险的。你的电脑没有问题。如果由于某种原因在 google 生成的信息框中存在通过非安全连接提供的图像,则根据您插入的搜索词,您可能会遇到相同的问题。
更多信息:
正如您在谷歌支持页面上看到的那样,根据连接,浏览器将根据内容切换:
只有底部的“不安全或危险”才能真正成为任何威胁,如下图所示:
编辑 - 可能的解释
我无法在第二次尝试时重现该问题。但是,我要注意的是:如果您在地址栏中键入任何搜索词,然后按Enter,您将看到该
info or not secure
图标。如果您输入之前未访问过的任何网站的 URL,您可以看到相同的行为,而无需明确指定https
协议:在页面加载期间,您将看到图标,然后在您被重定向后info or not secure
恢复为图标Secure
连接https
,并且浏览器已经能够检查所有内容的安全证书。这让我假设在以下情况下可能会发生这种行为:
info or not secure
图标上。重新加载页面后,将检查安全证书并获得
secure
图标。因此,无论如何,您的 PC 都没有问题。而且没有什么危险的事情发生。