世界を動かす技術を、日本語で。

Googleが「Immich」サイトを危険と警告

概要

  • 2025年10月、 Immich関連サイト がGoogle Safe Browsingにより 危険サイト扱い
  • Google Safe Browsing は多くのブラウザに組み込まれ、警告が表示される仕組み
  • サブドメイン一つが フラグされると、全ドメインに影響
  • 問題解決には Google Search Console でのレビュー申請が必須
  • 今後の対策として プレビュー環境のドメイン分離 を検討

ImmichサイトがGoogleに危険とフラグされた経緯

  • 2025年10月、 immich.cloud 配下の全サイトが 危険サイト として警告表示
  • ブラウザで「赤い警告画面」が表示され、ほぼ全ユーザーがアクセス不可状態
  • Immichチーム内でも Safe Browsingの仕組み が不明で混乱
  • Google Safe Browsing はマルウェアやフィッシング等を検知する無料サービス
    • ChromeやFirefoxなど主要ブラウザに統合
    • フラグの基準や仕組みは公開されていない
  • 一度フラグされると、 「詳細」→「安全なサイトに進む」 を選ばない限り閲覧不可

フラグ発覚と影響範囲

  • ある日、 immich.cloud 配下の複数サイトが一斉に 危険判定
  • ユーザーからも 自分のImmich環境が警告表示 との報告
  • 社内のプレビュー環境や内部サービス (zitadel, outline, grafana, victoria metrics等)も全て影響
  • tiles.immich.cloud のようなプロダクション用タイルサーバーも影響を受けるが、JavaScript経由のため一部は正常動作

Google Search Consoleによる対応

  • 数日経っても警告が消えず、 Google Search Console が唯一の公式対応窓口と判明
  • サイト復旧には Googleアカウント作成→Search Console登録→レビュー申請 が必要
  • Search Consoleでは「 有害なコンテンツ検出」「 ユーザーを騙す行為」といった理由が表示
  • フラグされたURLは プレビュー環境 のものが中心
  • 一つのサブドメイン がフラグされると 全ドメインに波及 する仕様

問題解決の流れと再発

  • Search Consoleの「 レビュー申請」で以下の内容を説明
    • Immichは 自社運用の自社製品
    • フラグされたサイトは 自社のプレビュー環境 で、他社や他人のなりすましではない
  • 申請後、 1~2日で復旧。一旦「安全なサイト」に戻る
  • しかし、 新たなプレビュー環境を作成 すると、再び 危険サイト扱い
    • GitHub上のPRに新しいプレビューURLが投稿される
    • GoogleがGitHubをクロール→新URLを検出→再度フラグ

今後の対応策

  • プレビュー環境専用ドメイン(immich.build) への移行を検討
  • これにより、 本番ドメインへの波及防止 を目指す

Safe BrowsingとOSS・セルフホストの課題

  • Google Safe Browsing はOSSやセルフホスト型ソフトウェアの運用に配慮されていない設計
  • 他の人気プロジェクトでも 同様の問題 が発生
  • Googleは 任意のドメインを即座にフラグ可能 で、ユーザーアクセスがほぼ遮断される
  • 対応策は 都度Googleにレビュー申請 するしかない現状

まとめ

  • Google Safe Browsing によるフラグは ドメイン全体に多大な影響
  • OSS・セルフホスト運用者 にとっては 避けがたいリスク
  • 現時点では ドメイン分離や迅速なレビュー申請 が唯一の自衛策

Hackerたちの意見

これ、最近別のホスティングサイトが引っかかった件と関係あるっぽいね。 https://news.ycombinator.com/item?id=45538760

同じ独占の乱用って点では似てるけど、これは明確にファーストパーティのコンテンツを指してるから、ユーザーコンテンツとは違うよね。

これ、対策次第では大した問題じゃないかもしれないけど、誰でもImmichにPR(何でも含めて)を提出して、previewタグを付けたら、そのPRの内容がhttps://pr-.preview.internal.immich.cloudにホストされるってこと? それって、実質的に誰でもそこに何でもホストできるってことじゃない?

無料でフィッシングできる素晴らしいアイデアだね。

GitHubではコラボレーターだけがラベルを追加できるから、ちょっと違うかも。でも、確かに危険な感じはするね(正当なPRを提出してラベルをもらった後に、好きなことをコミットできちゃうってこと?)。

チームの「呪われた知識」のリストもぜひ見てみて。 https://immich.app/cursed-knowledge

Postgresのクエリパラメータの話、面白いね。65,000パラメータじゃ足りないの?!

robots.txtでその内部サブドメインを検索からブロックしたら、Googleはまだ文句言うの?

「plex.example.com」みたいな完全に内部のドメインを使ってる人の話を聞いたことがあるけど、公開インターネットに出てないのに、Googleがそれをplexのなりすましと見なすこともあるみたい。Googleは、名前が他のサービスを偽ってると思ったら、名前だけでブロックすることもあるんだ。安全なブラウジングでサイトがブロックされる条件は正確にはわからないけど、私のnextcloud.something.tldのドメインは今まで一度もフラグが立ったことがない。でも、他の人が問題を抱えてるサポートスレッドを見たことがあって、ドメイン名が原因の可能性が高いと思う。

ユーザーコンテンツをサブドメインでホストするなら、Public Suffix Listにサイトを載せた方がいいよね。 https://publicsuffix.org/list/ それがいろんなサービスに反映されて、汚染されたサブドメインがサイト全体を汚染しないってことになるはず。

画像だけがユーザーコンテンツの場合、これって本当に関係あるのかな?普通、PSLはクッキーやユーザーが提供したフォームの文脈で見ることが多いけど。

あぁ、Jothan Frakesを見かけて、一瞬、好きなスターフリートのファーストオフィサーの俳優が後にソフトウェアを書くようになったのかと思ったよ。

Googleはこれを安全なブラウジングに使ってるのかな?

ユーザー生成コンテンツをホストするなら、PSLに載ってないと最終的にImmichみたいな状況になるっていうのは、ちょっとした部族的なウェブ開発の知識だと思う。でも、これに直面したことがない人が事前にどうやって知るのかは疑問だね。実際、そういうことって、ぶつかるまで気づかないものだから。

これは独立したエンティティをホストする場合にだけ当てはまると思う。自分自身について、権威の連鎖を示せる深い名前を作るだけなら、PSLは気にしないんじゃないかな。そうでなければ、階層はなくて、点は便利な文字列に過ぎないし、PSLの長さと同じくらいのフラットな名前空間になる。

この話は、悪意のあるPRがCIを騙してフィッシングやマルウェア、ポルノを含むページを作らせた話かと思ったけど、実際にはGoogleが正当な自己作成のプレビュー版をフィッシングとしてフラグ付けして、ドメイン全体を禁止してるみたい。immich.cloudをPSLに載せるのは、他の理由でも正しい選択かもしれないし、ここでの影響範囲を減らすかもしれないね。

根本的な原因はGoogleの悪行だよ。これは単なる回避策に過ぎない。

これはユーザーのコンテンツの話じゃなくて、彼ら自身のプレビュー環境のことなんだ!Googleは自分たちのプレビュー環境が何かを真似してると決めつけて、ドメイン全体をブロックすることにしたんだよ。

ユーザーのコンテンツをホスティングしてるわけじゃなくて、彼らのプルリクエストのプレビュードメインが引き金になってたんだ。これ、明らかにGoogleのコードが悪いだけだよね。

[遅延]

友達/クライアントが、シンプルなリダイレクト付きのWordPress系のホスティングサービスを使ってたんだけど、そのホストが悪いサイトリストに載っちゃったんだ。リダイレクトを外しても、自分のドメインも汚染されて、Googleからのメールも受け付けなくなった。レビューをリクエストして通ったけど、メールのブラックリストは永久的みたい。ドメインにスパム問題はないのは確認済み。新しいドメインを登録したよ。Googleの行動は、結局使い捨てドメインを大量登録することを促進してるだけで、何も良くならないよね。

わぁ、それは怖いな。今週、自分のドメインが(間違って)ブラックリストに載ったけど、25年間使ってきたから、メールに影響が出るなんて想像できないよ。

フラグ付けの問題とは少し関係ないけど、ImmichがPRサイト生成機能をどうやってやってるのか、ドキュメントはあるのかな?それ、すごく面白そうだし、もっと知りたいな。

オープンソースだから、自分で簡単に1分以内に見つけられるよ。 https://github.com/immich-app/devtools/tree/a9257b33b5fb2d30...

immichのWeb GUIがGoogleフォトに似てるっていうのは、何か関係あるのかな?それとも単なる偶然?

偶然じゃないよ、ImmichはGoogleフォトの個人的な代替品として始まったんだ。

1社がどのウェブサイトにアクセスできるかを決めるなんて、狂ってるよね。アプリを制限するだけじゃ足りなかったのか。

どうやってオタクたちを騙して、クズみたいな広告がクールだと思わせたのか全然わからないよ。考えてみれば、彼らが金を稼ぐためのものって、ユーザーは誰も広告なんか見たくないし、見せたくもないんだから。なんかGoogleにはオタクのカルトみたいなのがあって、そんな倫理的に問題のある会社に入るのがクールだと思ってる人がいるんだよね。

これらの警告について、どうして名誉毀損法に引っかからないのか、ずっと理解できなかった。直接「詐欺師」や「攻撃者」と呼んでるしね。Microsoftも同じで、未知の実行ファイルについて。以前は「安全かどうかわからない」ともっと一般的に言ってたけど、今は「あなたは確かに攻撃者です」とかなり断言してる。