2026 年 10 月 19 日、Google は認証局(eMudhra)の侵害を認識しました。このセキュリティ問題に対処するため、Google は直ちにエコシステムの複数の領域にセキュリティ パッチを適用しました。
このページでは、この eMudhra 証明書の侵害を修正するために、影響を受けるアプリの種類と必要な対応について説明します。また、セキュリティ問題に関する詳細情報も提供します。
影響を受けるアプリの種類と必要な対応
このセキュリティ問題の性質上、さまざまな種類のアプリが影響を受けました。アプリの種類がここに記載されている場合は、影響を受けている可能性があります。該当するセクションを参照して、必要な対応をご確認ください。
- Flutter アプリ(対象のプラットフォームやプロダクトを問わない)
- Cloud Firestore を使用する Apple プラットフォーム アプリ(ネイティブ)
- Apple プラットフォームまたはデスクトップ プラットフォームをターゲットとし、Cloud Firestore を使用する Unity アプリ
- Apple プラットフォームまたはデスクトップ プラットフォームをターゲットとし、Cloud Firestore を使用する C++ アプリ
- Firebase App Distribution Gradle プラグインを使用する Android アプリ(ネイティブ)
コミュニティがサポートする他のプラットフォームも影響を受けます(Apple プラットフォームをターゲットとし、Firestore を使用する React Native アプリなど)。
Flutter アプリ
Flutter アプリはさまざまな影響を受けました。該当するセクションを確認して、必要な対応を把握してください。
Android、Windows、Linux を対象とする Flutter アプリ
ブラウザとオペレーティング システムは緊急の中間証明書ブロックリストをプッシュしましたが、Android、Windows、Linux の dart:io は、独自のコンパイル済み BoringSSL エンジンを使用して TLS 証明書チェーンを検証し、OS の中間証明書ブロックリストを読み取りません。このセキュリティ アドバイザリの詳細を確認する。
Android、Windows、Linux をターゲットとする Flutter アプリまたは Dart アプリがある場合は、次の操作を行います。
次の Dart と Flutter のバージョンにアップグレードします。
- Dart 3.13.7 以降
- Flutter 3.47.8 以降(Dart 3.13.7 以降)
アプリを再ビルドします。
アプリまたはバイナリを再デプロイします。Android、Window、Linux のアプリまたはバイナリを再デプロイして、セキュリティ修正を含むアップデートを組み込みます。
Apple または Windows プラットフォームを対象とし、Cloud Firestore を使用する Flutter アプリ
Apple プラットフォーム(iOS など)をターゲットとする Flutter アプリがあり、かつアプリで Cloud Firestore を使用している場合は、次の操作を行います。
アプリに適したプラグイン バージョンを決定する。 現在のプラグイン バージョンに応じて、アプリに適したプラグイン バージョンを選択します。
FlutterFire プラグイン(
flutterfire)- iOS、macOS、Windows影響を受けるプラグインのバージョン セキュリティ修正を含むプラグインのバージョン cloud_firestore7.0.0以前
(6.10.1と6.10.2を除く)-
オプション 1:
cloud_firestore7.1.0(FlutterFire BoM5.1.0以降) -
オプション 2:
-
iOS と macOS:
cloud_firestore6.10.1(FlutterFire BoM4.20.1) -
Windows:
cloud_firestore6.10.2(FlutterFire BoM4.20.2)
-
iOS と macOS:
-
オプション 1:
アプリを更新します。
flutter pub upgradeを実行して、cloud_firestoreプラグインを目的のバージョンに更新します。アプリを再ビルドします。
アプリを再公開する。SDK バージョンを更新したアプリを再公開します(Apple アプリストアやデスクトップ配信チャネルなど)。
アプリを再公開したら、エンドユーザーにアプリの最新バージョンに更新するよう促す必要があります。TLS ルート証明書バンドルはアプリケーション バイナリにコンパイルされるため、オペレーティング システムのシステム アップデートやサーバーサイドの変更だけでは、以前にインストールされたアプリケーション ビルドは修正されません。
Cloud Firestore を使用する Apple プラットフォーム アプリ(ネイティブ)
ネイティブの Apple プラットフォーム アプリ(iOS など)があり、かつアプリで Cloud Firestore を使用している場合は、次の操作を行います。
アプリに適した SDK バージョンを決定する。現在の SDK バージョンに応じて、アプリに適した SDK バージョンを選択します。
Firebase SDK for Apple プラットフォーム(具体的には
FirebaseFirestore)影響を受ける SDK バージョン セキュリティ修正が適用された SDK バージョン 13.1.0以前
(12.19.3を除く)-
オプション 1:
13.1.1以降 -
オプション 2:
12.19.3
-
オプション 1:
アプリを更新します。 配信チャネルの手順に沿って操作します。
SPM: Xcode または
Package.swiftでfirebase-ios-sdkパッケージの依存関係バージョンを更新します。Zip ディストリビューション: GitHub リリースから、目的のバージョンの
Firebase.zipをダウンロードし、プロジェクト内の既存の.xcframeworkバンドルを置き換えます。Carthage: 目的のバージョンをターゲットとするように Cartfile を更新し、Carthage を介して依存関係を更新します。
アプリを再公開する。 SDK バージョンを更新したアプリを再公開します(Apple アプリストアやデスクトップ配信チャネルなど)。
アプリを再公開したら、エンドユーザーにアプリの最新バージョンに更新するよう促す必要があります。TLS ルート証明書バンドルはアプリケーション バイナリにコンパイルされるため、オペレーティング システムの更新やサーバー側の変更だけでは、以前にインストールされたアプリケーション ビルドは修正されません。
Apple プラットフォームまたはデスクトップ プラットフォームをターゲットとし、Cloud Firestore を使用する Unity アプリ
Apple プラットフォーム(iOS など)をターゲットとする Unity アプリがあり、かつアプリで Cloud Firestore を使用している場合は、次の操作を行います。
アプリに適した新しい SDK バージョンを決定する。現在の SDK バージョンに応じて、アプリに適した SDK バージョンを選択します。
Firebase SDK for Unity(
firebase-unity-sdk)- iOS またはデスクトップ(Linux、macOS、Windows)影響を受ける SDK バージョン セキュリティ修正が適用された SDK バージョン 14.0.0以前
(13.17.1を除く)-
オプション 1:
14.1.0以降 -
オプション 2:
13.17.1
-
オプション 1:
アプリを更新します。 GitHub のリリース ページから、目的のバージョンの Firebase Unity SDK をダウンロードします。
アプリをリンクして再ビルドする。iOS アプリとデスクトップ アプリをリンクして再ビルドします。
アプリを再公開する。 SDK バージョンを更新したアプリを再公開します(Apple アプリストアやデスクトップ配信チャネルなど)。
アプリを再公開したら、エンドユーザーにアプリの最新バージョンに更新するよう促す必要があります。TLS ルート証明書バンドルはアプリケーション バイナリにコンパイルされるため、オペレーティング システムのシステム アップデートやサーバーサイドの変更だけでは、以前にインストールされたアプリケーション ビルドは修正されません。
Apple プラットフォームまたはデスクトップ プラットフォームをターゲットとし、Cloud Firestore を使用する C++ アプリ
Apple プラットフォーム(iOS など)をターゲットとする C++ アプリがあり、かつアプリで Cloud Firestore を使用している場合は、次の操作を行います。
アプリに適した新しい SDK バージョンを決定する。現在の SDK バージョンに応じて、アプリに適した SDK バージョンを選択します。
Firebase SDK for C++(
firebase_cpp_sdk)- iOS またはデスクトップ(Linux、macOS、Windows)影響を受ける SDK バージョン セキュリティ修正が適用された SDK バージョン 14.0.0以前
(13.13.1を除く)-
オプション 1:
14.1.0以降 -
オプション 2:
13.13.1
-
オプション 1:
アプリを更新します。 GitHub のリリースページから、目的のバージョンの Firebase C++ SDK をダウンロードします。
アプリをリンクして再ビルドする。iOS アプリとデスクトップ アプリをリンクして再ビルドします。
アプリを再公開する。 SDK バージョンを更新したアプリを再公開します(Apple アプリストアやデスクトップ配信チャネルなど)。
アプリを再公開したら、エンドユーザーにアプリの最新バージョンに更新するよう促す必要があります。TLS ルート証明書バンドルはアプリケーション バイナリにコンパイルされるため、オペレーティング システムのシステム アップデートやサーバーサイドの変更だけでは、以前にインストールされたアプリケーション ビルドは修正されません。
Firebase App Distribution Gradle プラグインを使用する Android アプリ(ネイティブ)
Firebase App Distribution Gradle プラグインを使用するネイティブ Android アプリがある場合は、次の操作を行います。
アプリに適した新しいプラグイン バージョンを決定します。 プラグイン バージョン 5.3.1 以降を使用できます。
Gradle ファイルを更新します。 ルートレベル(プロジェクト レベル)の Gradle ファイル(
<project>/build.gradle.ktsまたは<project>/build.gradle)で、App Distribution Gradle プラグインをバージョン 5.3.1 以降に更新します。Kotlin
plugins { // ... // Update the version in the dependency for the App Distribution Gradle plugin. // Make sure the version is 5.3.1 or higher. id("com.google.firebase.appdistribution") version "5.3.1" apply false }Groovy
plugins { // ... // Update the version in the dependency for the App Distribution Gradle plugin. // Make sure the version is 5.3.1 or higher. id 'com.google.firebase.appdistribution' version '5.3.1' apply false }buildscript(レガシー)
buildscript { dependencies { // ... // Update the version in the dependency for the App Distribution Gradle plugin. // Make sure the version is 5.3.1 or higher. classpath 'com.google.firebase:firebase-appdistribution-gradle:5.3.1' } }CI/CD ワークフローをクリーンアップして検証します。自動ビルドとデプロイ パイプライン(GitHub Actions、GitLab CI、Jenkins など)が、
./gradlew appDistributionUpload<Variant>などのタスクを実行するときに、更新されたプラグイン バージョンを pull することを確認します。
発生した事象に関する詳細情報
2026 年 10 月 19 日、Google は、サードパーティの認証局(eMudhra)が発行した複数の中間認証局(CA)証明書の秘密鍵が侵害され、その後取り消されたことを認識しました(詳細については、Google セキュリティ ブログの投稿をご覧ください)。
オペレーティング システムとウェブブラウザは、システム トラストストアでこれらの中間証明書を信頼しないように更新を配布していますが、影響を受けるプロダクトは、バイナリにコンパイルされた組み込みのルート証明書バンドルを使用して Transport Layer Security(TLS)接続を検証します。
攻撃者は、侵害された認証局の鍵を使用して、正規に見える HTTPS 証明書を偽造できるため、影響を受けるアプリは失効を検出できず、偽の認証情報を信頼し続けます。その結果、ネットワーク上の攻撃者は中間者攻撃を実行して、Firestore や、影響を受ける Flutter/Dart アプリまたは App Distribution Gradle プラグインが接続する HTTPS エンドポイントなどの実際のバックエンド サーバーになりすまし、ユーザーの機密データを密かに傍受、窃取、改ざんする可能性があります。
この侵害された認証局からクライアント接続を保護するため、Google は、侵害された eMudhra 中間証明書にチェーンするルート証明書を削除することで、この問題を軽減しました。
Apple、Flutter、Unity、C++ 用の Cloud Firestore SDK
Cloud Firestore バックエンドは影響を受けませんでした。Cloud Firestore プロダクトの他の部分も影響を受けませんでした。
Flutter SDK と Cloud Firestore 用の FlutterFire プラグイン
Firebase App Distribution Gradle プラグイン
App Distribution バックエンドは影響を受けませんでした。App Distribution プロダクトの他の部分も影響を受けませんでした。