Immich遭遇Google安全浏览误报危机

开源自托管照片管理工具Immich的域名被Google安全浏览服务误标记为危险网站,导致用户无法正常访问。文章详细记录了事件经过、影响范围、解决过程,并探讨了此类误报对开源项目的普遍影响。

Google将Immich网站标记为危险 | Immich博客

2025年10月20日 — Jason Rasmussen

本月初,我们所有的*.immich.cloud网站都被标记为危险,用户开始看到令人恐惧的"红色死亡屏幕"页面。团队中没有人真正了解这个浏览器功能的工作原理,但不幸的是,这现在已被添加到我们的"诅咒知识"列表中。

背景

Google提供一项名为"安全浏览"的服务,旨在确定网站是否运行恶意软件、不需要的软件或执行某种形式的社会工程学攻击。该服务是免费的,许多浏览器(包括Chrome和Firefox)都直接将该服务集成到他们的产品中,尽管目前仍不清楚它如何实际确定某些内容是"危险"的。

那么,如果你的网站被标记为危险会发生什么?由于大多数浏览器似乎都使用此服务,你的网站基本上对所有用户都变得不可用,除了少数可能意识到这是误报的用户,他们会点击"详细信息"按钮,然后看到并点击带下划线的微小"访问此安全网站"链接。所以基本上,你的所有受众都无法访问你的网站,而且几乎没有明显的补救措施。

被标记

在本月初的某个时间点,我们意识到immich.cloud域上的一批网站最近开始显示为"危险"。同时,一些用户开始抱怨他们自己的Immich部署被标记。我们还注意到我们所有内部网站都有相同的警告,包括我们的预览环境。每当我们想查看任何内容时,都必须经历繁琐的"查看此安全网站"操作,这很快就变得令人厌烦。

搜索控制台

几天后,我们意识到这个警告不会自行消失,而Google搜索控制台显然是管理这类问题的官方方式。唯一能让我们的网站再次可用的方法是创建一个Google帐户,并使用Google搜索控制台请求对受影响网站进行审核,这似乎有点疯狂。

该服务至少提供了关于具体哪些内容被标记的更多细节,尽管这让整个事情变得有点滑稽。根据该服务:

“Google在您网站的某些页面上检测到有害内容。我们建议您尽快将其删除。在此之前,当用户访问或从您的网站下载某些文件时,Google Chrome等浏览器将显示警告。”

“这些页面试图诱使用户执行危险操作,例如安装不需要的软件或泄露个人信息。”

这些警告下方是受影响URL的列表:

1
2
3
4
5
https://main.preview.internal.immich.cloud/
https://main.preview.internal.immich.cloud/auth/login
https://pr-22838.preview.internal.immich.cloud/
https://pr-22838.preview.internal.immich.cloud/auth/login
...

了解到受影响的URL是我们的预览环境很有用。也许他们认为这些Immich环境是在模仿我们的演示网站?最令人担忧的是意识到单个被标记的子域名显然会使整个域名失效。

影响

此问题影响我们所有的预览环境和其他内部服务,如zitadel、outline、grafana、victoria metrics等。这也影响我们的生产图块服务器,该服务器部署在tiles.immich.cloud。幸运的是,对图块服务器的请求是通过JavaScript进行的,由于这些不是面向用户的,它们似乎仍然按预期工作。

“修复"问题

Google搜索控制台有一个"请求审核"按钮,您可以在其中解释您如何解决了问题。它确实警告:

“请求审核未解决的问题将导致更长的审核周期”

由于实际上没有任何问题,我们决定回复如下:

“Immich是一个自托管应用程序,Immich团队(https://immich.app/)拥有并运营immich.cloud域和子域。被标记的站点是我们自己产品的部署,没有冒充任何其他事物或人。”

一两天后,解决方案被接受,域名再次干净了!🎉

我们认为我们已经自由了,但不幸的是,情况并非如此。

最小化问题

可以通过在GitHub上的拉取请求中添加预览标签来请求Immich预览环境。创建环境时,会在拉取请求上发布带有预览URL的评论,该URL遵循以下格式:

1
https://pr-<num>.preview.internal.immich.cloud/

只要我们创建新的预览环境,immich.cloud域就会再次被标记为危险网站。据我们了解,Google会爬取GitHub,看到新URL,爬取该网站,将其标记为欺骗性网站,然后整个过程重新开始。

我们目前的计划是通过将预览环境移动到它们自己专用的域名——immich.build来尝试最小化此问题的影响。

更广泛的问题

Google安全浏览似乎是在没有考虑开源或自托管软件的情况下构建的。许多流行项目都遇到了类似的问题,例如:

  • Jellyfin
  • YunoHost
  • n8n
  • NextCloud
  • 其他Immich部署
  • 等等

不幸的是,Google似乎有能力任意标记任何域,并立即让用户无法访问。当这种情况发生时,除了不断向全能的Google请求另一次审核外,我不确定能做什么(如果有的话)。

干杯, Immich团队

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计