Google Firebase サービスのミスコンフィグによる機密データ漏洩:膨大なユーザー・データに影響

Multiple Apps on Google’s Firebase Platform Exposing Sensitive Data

2025/09/24 gbhackers — Firebase を利用するモバイル・アプリに広範な脆弱性が存在することが、ice0 の包括的なセキュリティ分析により明らかになった。Google Firebase サービスのミス・コンフィグにより、150 種類以上の人気アプリが、ユーザーの機密データを意図せず漏洩していた。このセキュリティ危機の規模は過去の事例を大きく上回り、世界中で大量にダウンロードされた、膨大な数のアプリに影響を及ぼす可能性がある。

約 1,200 のモバイル・アプリを 3つのカテゴリに分類/分析した結果、Firebase 実装に深刻なセキュリティ上の欠陥が存在することを、研究者たちは確認した。

モバイル・アプリ全体の約 80% を占める、Firebase サービスを利用するアプリのうちの 150 種類を超えるアプリが、Realtime Database/Storage Bucket/Firestore データベース/リモート・コンフィグ・シークレットなどの重要なデータ・ストアに対して、完全に認証されていないアクセスを許可していた。

このような情報漏洩の欠陥を持つアプリには、ダウンロード数 10 万~1億規模に達するものも数多く含まれる。この規模は、50 万ダウンロード以上に影響を与えた、Tea アプリのデータ侵害を大幅に上回るものだ。

以下の Google API を使用すれば、PROJECT_ID.appspot.com のストレージ・バケットにアクセスできる。

この影響をすべてのアプリ・カテゴリに当てはめると、さらに深刻になる。32~34 のカテゴリのうち、わずか3カテゴリを分析しただけで、約 4,800 の Firebase サービスが認証なしでアクセス可能であり、そこには膨大なユーザーの機密データが格納されていると推定される。

漏洩した機密情報の種類

研究者たちが確認した機密情報の漏洩は、支払い処理の詳細/包括的なユーザー個人情報/数百万件の固有識別子/プライベートメッセージ/暗号化された認証情報と平文パスワード/ユーザープロンプトやクエリ/高権限の GitHub および AWS トークンなどの多岐にわたる。Firebase Admin SDK のドキュメントによると、それらの情報は、2020年9月以前に作成された Realtime データベースの旧形式に保存されていたという。

この発見が示唆するのは、Firebase のミス・コンフィグにより、ユーザー・データだけではなく、組織全体のセキュリティに影響する重要なインフラ・アクセス認証情報も漏洩する可能性である。

脆弱性の原因

主な問題は、Firebase のテスト・モード設定に起因する。Firebase Storage/Realtime Database/Firestore サービスを初期化する際に、開発者が選択できるものには、デフォルトでデータを非公開にする本番モード、もしくは、迅速な開発を促進するために 30 日間だけデータを公開するテスト・モードがある。しかし、数多くの開発者が、テスト・モードを 30 日間以上にわたり使用し続けるところに問題がある。

特に懸念されるのは、AWS ルート・アカウント・アクセストークンや GitHub トークンにより、リポジトリの完全な制御が可能になるケースである。これらのキーは、ビルド時に google-services.json ファイルから自動生成される。

Firebase は、テスト・モードに関する警告として、「ストレージ・バケットへの参照を持つ全ユーザーは、今後の 30 日間において、ストレージ・バケット内の全データを表示/編集/削除できる」と明示している。

しかし、多くの開発者は、適切なセキュリティ・コンフィグを実装せず、許可ルールを延長するだけである。その他の要因として挙げられるのは、Firebase セキュリティ・ルールのベストプラクティスの理解不足や、テスト目的で過度に寛容なアクセス制御を示唆する、安全ではないコード・サンプルへの依存である。

研究者による対策ツールの開発

既存の Firebase セキュリティ・ツールの限界に対処するために、研究者たちは OpenFirebase を開発した。このツールは、モバイル・アプリ・パッケージ (APK) から Firebase コンフィグを抽出し、複数のサービスにわたる不正アクセスを同時にテストできる、自動セキュリティ・スキャナである。

既存のツールが、単一のサービスのみを限定的に検査するのに対し、OpenFirebase は Firebase Storage/Realtime Database/Remote Config/Firestore サービスを、さまざまな URL 形式と権限の組み合わせで包括的にスキャンできる。このツールは、個別アプリの解析に加え、数千のアプリをカバーする一括分析にも対応している。

サービス固有の脆弱性の発見
  • Firebase Storage:937 件のプロジェクトをスキャンした結果、44 件のストレージバケットが一般公開され、386 件は適切に保護され、507 件は見つからなかったというエラーを返した。特筆すべき事例として挙げられるのは、1億回以上ダウンロードされたアプリが、認証なしでアクセス可能なユーザー ID の写真を保存していたことだ。
  • Realtime Database:937 件のプロジェクト中、35 件のデータベースが一般公開され、277 件は適切に保護され、467 件は見つからず、158 件はロックまたは無効化されていた。公開されていたデータベースには、ユーザー認証情報/チャット内容/位置情報などの機密性の高い個人情報が含まれていた。
  • Remote Config:公開されたリモート・コンフィグは 383 件であり、適切に保護されていたのは 61 件のみであった。リモート・コンフィグの公開自体は、本質的な問題ではないが、約 30 件のインスタンスにはハードコードされたシークレット/API キー/認証トークンが含まれていた。
  • Firestore:929 プロジェクトをスキャンした結果、50 件のプロジェクトで公開アクセス可能な Firestore データベースを確認した。そのうちの 675 件は適切に保護され、122 件は Datastore モード、24 件のコレクションは公開アクセス可能であった。

Firebase のセキュリティ危機は、モバイル・アプリ・エコシステムの基盤に影響を及ぼす体系的な問題である。Firebase はモバイル・アプリの約 80% で利用されており、広範なミス・コンフィグは攻撃対象領域を拡大し、無数のユーザーの機密データを脅かす。Firebase を利用する組織は、直ちにセキュリティ・コンフィグを監査し、適切なアクセス制御を導入することで、不正なデータ漏洩を防ぐ必要がある。