Android では、デバイスを保護するために必要なデータをデベロッパーや企業パートナーに提供できるよう、継続的に取り組んでいます。このたび、AndroidX Security State バージョン 1.1.0 と Security State Providerバージョン 1.0.0 ライブラリの安定版リリースを発表いたします。これらのライブラリは、Android エコシステム全体の包括的なセキュリティ ポスチャーと保留中のアップデートの透明性をさらに高めるために設計された、一元化されたメカニズムを提供します。
セキュリティが重要な消費者向けアプリ(銀行、フィンテック、医療など)を開発している場合でも、モバイル デバイス管理(MDM)ソリューションを開発している場合でも、これらのライブラリを使用すると、コンポーネントごとにデバイスのセキュリティ状態をプログラムで検証できます。大まかでモノリシックなセキュリティ パッチレベル(SPL)に依存するのではなく、androidx.security.state ライブラリを介して、コンポーネント レベルの真の保護と、修復がアクティブに保留されているかどうかを評価できます。OEM および無線(OTA)クライアント デベロッパーは、コンパニオン ライブラリ androidx.security.state.provider を使用して、標準化されたメカニズムを介してアップデートの提供状況を公開できます。
セキュリティ パッチレベル(SPL)について
Android は、Google Play システム アップデートなどのモジュラー システムを通じて、迅速かつ独立したコンポーネント アップデートを提供するように進化してきました。そのため、単一の SPL ビルド プロパティに依存することは、デバイスの真のセキュリティ ポスチャーを判断する最善の方法ではなくなりました。コンポーネント レベルの可視性を提供するため、Security State ライブラリは 3 つの異なるパッチレベルの API を提供します。
- デバイス SPL(DSPL): 特定のシステム コンポーネントについて、デバイスに現在インストールされ、実行されているセキュリティ パッチレベル。ネットワーク呼び出しなしでデバイスのプロパティと構成からクエリされます。
- 公開済み SPL(PSPL): Android のセキュリティに関する公開情報で正式に公開されている、それらのコンポーネントの最新のパッチレベル。
- 利用可能な SPL(ASPL): 特定のデバイスにダウンロードしてインストールできるパッチレベル。デバイス上のアップデート クライアントとのプロセス間通信(IPC)を介して非同期でクエリされます。
セキュリティ状態ライブラリは、次のコンポーネントでこれらのパッチレベルを追跡します。
- システム: Android オペレーティング システムのコア。標準 / OEM システムの OTA アップデートにより更新されます。
- システム モジュール: Google Play システム アップデート(プロジェクト Mainline)を介してバックグラウンドでシームレスに更新されるモジュラー OS サブシステム。
- カーネル: デバイスのハードウェアとソフトウェアを接続する基盤レイヤ。月単位の日付ではなく、長期サポート(LTS)リリース バージョン(5.15.159 や 6.1.91 など)で評価されます。
コンポーネント レベルでこれら 3 つの異なるパッチレベルを明らかにすることで、デベロッパーや企業はデバイスのセキュリティを正確に把握し、不足しているパッチを特定して、プロアクティブな修復手順を講じることができます。その方法の 1 つを以下の例に示します。
デベロッパーや企業は、デバイス アクセスに対してオール オア ナッシングのアプローチを取るのではなく、DSPL、PSPL、ASPL を組み合わせて、コンテキストに応じたスマートなセキュリティ決定を行うことができます。たとえば、銀行アプリや企業アプリは、高額な支払い、認証情報の登録などの機密性の高いワークフローを開始する前に、デバイスの現在のセキュリティ パッチ(DSPL)と保留中のアップデート(ASPL)を比較できます。インストール待ちのアップデートがある場合、デベロッパーや企業は、ユーザーにまずデバイスをアップデートするよう求めることができます。さらにきめ細かい制御を行うために、デベロッパーや企業は、特定の高リスクの脆弱性(CVE)がデバイスでパッチされているかどうかをクエリできます。たとえば、タップ決済や近接データ共有を承認する前に、重要な NFC や Bluetooth の修正が適用されていることを確認できます。
フローの概要
アプリ デベロッパーと企業管理向け
クライアント アプリケーションは、androidx.security.state ライブラリを使用して、コンテキストを認識した情報に基づく判断を行うことができます。
- 同期ポスチャー チェック(DSPL): アプリは、アプリの起動時にシステム、システム モジュール、カーネルのインストール済みパッチレベルをすぐに検査し、PSPL と比較して、機密性の高い企業リソースや生体認証アクセスのロックを解除する前に、デバイスが組織の必要なセキュリティ ベースラインを満たしているかどうかを確認できます。
- 保留中のアップデートのプロンプト(ASPL): デバイスのパッチが少し遅れている従業員をすぐにブロックするのではなく、エンタープライズ アプリは ASPL にクエリを実行して、保留中のシステム アップデートまたは Google Play システム アップデートがステージングされ、インストールできる状態になっているかどうかを確認できます。その場合、アプリは、ユーザーにシステム設定に移動してインストールを完了するよう指示する、カスタマイズされたアプリ内ガイダンスを表示できます。
- 脆弱性レベルの監査(CVE): 高い保証が求められるユースケース向けに、このライブラリは、Open Source Vulnerabilities(OSV)からデバイス固有の脆弱性レポートをダウンロードし、特定の重大な CVE がデバイスで解決されているかどうかをプログラムで監査する機能を提供します。
OEM とアップデート クライアント向け: アップデートの提供状況の標準化
コンパニオン ライブラリ androidx.security.state.provider は、更新クライアントがデバイス上で直接更新の可用性を報告するための、標準化された Android IPC メカニズムを確立します。これまで、独自の OTA クライアントがアップデートの可用性を表示しても、この情報はサイロ化され、サードパーティ アプリケーションからクエリできませんでした。今後は、アップデートが OEM 専用の OTA クライアントまたは Google Play のどちらを介して配信されるかにかかわらず、アップデート クライアントによって提供される限り、アプリは単一の統合 API を介して ASPL の詳細にアクセスできます。
- Google Play システム アップデートでは、GMS Android デバイス全体で ASPL がすでに公開されています。
- Google Over-The-Air(GOTA)も導入されており、世界中の OEM と協力して、OTA クライアントをこの標準化されたフレームワークに導入しています。
速報レベルのデータの組み込み
Security State ライブラリは、単一の SPL 文字列だけでなく、そのパッチレベルがデバイスにとって実際に何を意味するのかを明確にします。Open Source Vulnerabilities(OSV)データベースと統合して Android のセキュリティに関する公開情報のデータを取得することで、ライブラリはこれまで以上に詳細な情報を確認できるようになります。このデータにより、ライブラリは、CVE エントリなどの特定の脅威がブロックされているかどうかを尋ねるだけでなく、デバイスの「有効な」詳細なセキュリティ状態を提供することもできます。
このアプローチが企業と Android OEM にもたらすメリットは次の 2 つです。
- 特定のコンポーネントに関する新しい脅威が、毎月のセキュリティ アップデートに含まれていないことがあります。この場合、ライブラリは、そのコンポーネントのセキュリティ レベルを自動的に引き上げて、「有効な」セキュリティ状態を反映します。これにより、既知のセキュリティ脅威から完全に保護されているデバイスが正確に評価されます。
- Android 17 で導入された新機能により、OEM は Supplemental Patches XML ファイルを介して、SPL よりも上位に適用された特定のセキュリティ修正を宣言できます。この機能により、特定のセキュリティ修正をバックポートする OEM は、モノリシックな SPL の更新を待つことなく、デバイスのコンプライアンスをすぐに証明できます。これにより、継続的なパッチ適用の取り組みが適切に評価されます。セキュリティ状態ライブラリは、この詳細な情報をアプリやサービスに提供し、継続的なパッチ適用が実施された時点で認識されるようにします。
使ってみる
セキュリティ状態ライブラリは、Android エコシステム全体を強化するために構築されています。
- アプリ デベロッパーと MDM: ユーザーの保護とリアルタイムのパッチ ポスチャーの評価を開始するには、公式のデバイスのセキュリティ状態を把握するガイドをご覧ください。
- OEM とアップデート クライアント: AndroidX Security State Provider ライブラリを使用して、アップデート クライアントをオンボーディングし、ASPL を公開します。補足パッチ XML を公開することで、バックポートされたパッチのクレジットをすぐに獲得できます。
- リリースノート: Security-State ライブラリと Security-State-Provider ライブラリの公式 AndroidX リリースノートで、完全な変更履歴と API シグネチャをご確認ください。
皆様からの貴重なご意見をお待ちしております。ライブラリをお試しいただき、ご意見や問題の報告がございましたら、公開されている Android Issue Tracker からお知らせください。
-
サービスに関する最新情報本日、Android Dev Summit において、日常的な摩擦を解消し、優れた Android アプリをより柔軟に構築できるように設計された多くのツールと API の幅広い提供を発表します。
Matthew McCullough • 所要時間: 4 分 -
サービスに関する最新情報Android Studio Rabbit 2 が安定版となり、本番環境で使用できる準備が整いました。このリリースには、Bring Your Own Agent、新しい XR エミュレータ機能、LeakCanary のアップデート、新しいエージェント スキル マネージャー ツール、AI コードレビューなど、開発を改善するための主要な機能が含まれています。
Matthew Warner • 所要時間: 3 分 -
サービスに関する最新情報次期 Android リリースをターゲットとするアプリは、WRITE_CONTACTS 権限を使用して連絡先に直接書き込むことができなくなります。
Roxanna Aliabadi Walker • 所要時間: 6 分
Android 開発に関する最新の分析情報を毎週メールでお届けします。