Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
AndroidSecurityEvolution — 最近の主要なAndroidバージョンにおける重要なセキュリティ強化 | Kitploit
ツール/GitHubGitHub/balazsgerlei/androidsecurityevolution
Androidセキュリティ暗号化モバイルセキュリティプライバシー学習と教育厳選リソース
GitHubbalazsgerlei/androidsecurityevolution

AndroidSecurityEvolution

最近の主要なAndroidバージョンにおける重要なセキュリティ強化

リポジトリを見る

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
187151ヶ月前Kitploit レビュー済み

Android セキュリティの進化

API last commit

最近の主要なAndroidバージョンにおける重要なセキュリティ強化を、Android 5.0 Lollipop(API 21)以降について解説します。

Android 5.0 (API 21) - Lollipop

Android 5 のセキュリティ強化

  • 2023年8月以降、Google Play 開発者サービス のアップデートはこのAndroidバージョンでのみ受け取れるようになります。2023年8月よりKitKat(APIレベル19および20)向けGoogle Play開発者サービスアップデート提供終了 を参照してください
  • デフォルトでフルディスク暗号化(FDE)が有効(メーカーはオプトアウト可能)。暗号化 および Android 5.0 のセキュリティ強化 を参照してください
  • SELinux が完全に強制されます。Android 5.0 のセキュリティ強化 を参照してください
  • WebView は独立したパッケージになりました。Android 5.0 のセキュリティ強化 および Android 5.0 Lollipop で更新可能になった WebView とは何か、そしてなぜ重要なのか? を参照してください

Android 6 (API 23) - Marshmallow

Android 6 のセキュリティ強化

  • Keystore API が大幅に拡張されました(対称暗号プリミティブ、AES および HMAC のサポート、ハードウェアバックアップ鍵のアクセス制御システム)。ハードウェアバックアップ Keystore を参照してください
  • TEE が必須になりました。ハードウェアバックアップ Keystore および Android 6.0 互換性定義書の7.3.10 指紋センサー節 を参照してください
  • KeyStore の鍵が セキュアハードウェア(例:Trusted Execution Environment(TEE) または Secure Element(SE))に保存されているかどうかを確認するための新しいAPI(isInsideSecureHardware)。KeyInfo の isInsideSecureHardware メソッド を参照してください
  • アプリは実行時に権限をリクエストする必要があります。Android 6.0 の変更点のランタイム権限セクション、ランタイム権限をリクエストする、Android 6.0 のセキュリティ強化 を参照してください
  • より制限の強い SELinux(IOCTLフィルタリング、SELinux ドメインの厳格化など)。Android における Security-Enhanced Linux および Android 6.0 のセキュリティ強化 を参照してください

Android 7 (API 24) - Nougat

Android 7 のセキュリティ強化

  • ユーザー と システム の証明書トラストストアが分離され、この時点以降、Man-in-the-Middle 攻撃には基本的に root アクセスが必要になります。Android Nougat における信頼できる認証局の変更 を参照してください
  • Network Security Config のサポートが追加され、アプリはコード変更なしに、セキュアな(HTTPS、TLS)接続の動作を単純な宣言的方法でカスタマイズできるようになりました。カスタムトラストアンカー(アプリが信頼する認証局(CA))、デバッグ専用のオーバーライド、クリアテキストトラフィック のオプトアウト、証明書ピンニング(信頼するサーバー鍵の制限)をサポートします。Android 7.0 for Developers の Network Security Config セクション を参照してください
  • デフォルトでは、Android 7.0 をターゲットとするアプリはシステム提供の証明書のみを信頼し、カスタム Network Security Config がなくても、ユーザーが追加した認証局(CA)を信頼しなくなります。Android 7.0 for Developers のデフォルトの信頼できる認証局 を参照してください
  • Key Attestation とバージョンバインディング(鍵を失わずに、セキュアでない古いバージョンへのロールバックを防止)をサポートする Keymaster 2 への更新。Android 7.0 for Developers の Key Attestation セクション、Keymaster の機能、Key Attestation を使用したハードウェアバックアップ鍵ペアの検証、Key and ID Attestation を参照してください
  • ファイルベース暗号化(FBE) が導入されましたが、メーカーによる実装は任意です。Android 7.0 for Developers の Direct Boot セクション、Direct Boot モードをサポートする、暗号化 を参照してください

Android 8 (API 26) - Oreo

Android 8 のセキュリティ強化

  • WebView では JavaScript の評価が別プロセスで実行されるため、JavaScript コードがアプリのメモリに簡単にアクセスできなくなります。WebView セキュリティの新機能 および すべてのアプリに対する Android 8.0 の動作変更のセキュリティセクション を参照してください
  • WebView は Network Security Config と cleartextTrafficPermitted フラグを尊重します(古いAndroidバージョンでは、設定でクリアテキストトラフィックが許可されていなくても HTTP サイトを読み込んでいました)。Android 8.0 をターゲットとするアプリに対する Android 8.0 の動作変更のセキュリティセクション を参照してください
  • WebView に Safe Browsing API が追加され、有効にすると、潜在的に安全でないウェブサイトに移動しようとした場合にユーザーに警告が表示されます(Google Safe Browsing によって検証)。Android 8.0 の機能と API の WebView API セクション を参照してください
  • FLAG_SECURE Window フラグがよりサポートされ、このフラグが設定された画面のスクリーンショットが禁止されます
  • Keymaster 3 への更新。HAL Interface Definition Language(HIDL) と C++ で書き直されたハードウェア抽象化レイヤー(HAL)(C で書かれていた Legacy HAL と比較して)、 のサポートを含む。、、 を参照してください

Android 9 (API 28) - Pie

Android 9 リリースノート - セキュリティ機能

  • クリアテキストネットワークトラフィック(HTTP) がデフォルトで無効になりました。引き続き使用したい場合は(推奨されません)、アプリが Network Security Config で cleartextTrafficPermitted を明示的に true に設定する必要があります。APIレベル28+をターゲットとするアプリの動作変更: ネットワークTLSがデフォルトで有効 および Android: クリアテキストHTTPトラフィックが許可されない Android 9 を参照してください
  • 3DES 暗号化とセキュアキーインポートをサポートする Keymaster 4 への更新。ハードウェアバックアップ Keystore および Keymaster の機能 を参照してください
  • 多くの暗号アルゴリズムの BouncyCastle 実装を Conscrypt 実装に置き換え。Android 9 のすべてのアプリの動作変更: パラメータとアルゴリズムの Conscrypt 実装 を参照してください
  • 組み込みの Secure Element(SE) のサポートを追加。Android 9 リリースノートの Secure Element(SE)サービスセクション および Secure Element の CTS テスト を参照してください
  • ディスク暗号化(フルディスク暗号化(FDE) またはファイルベース暗号化(FBE) のいずれか)が、このバージョンを搭載して出荷されるすべてのデバイスで必須になりました
  • BiometricPrompt が導入され、生体認証中に表示されるUIが標準化され、誤用しにくいより良いAPIがアプリに提供されます。以前のソリューションである FingerprintManager は_非推奨_になります。生体認証ダイアログを表示する を参照してください

Android 10 (API 29) - Quince Tart

Android 10 のセキュリティ強化

Android 10 リリースノート - セキュリティ機能

  • WebView ではファイルアクセスがデフォルトで無効になりました。WebSettings の setAllowFileAccess メソッド を参照してください
  • TLS 1.3 が利用可能になり、デフォルトで有効になりました。Android 10 のすべてのアプリの動作変更: TLS 1.3 がデフォルトで有効 を参照してください
  • SHA-1 で署名された証明書は、TLS では信頼されなくなりました
  • バックグラウンドアプリは他の Activity(例: 他のアプリ)を起動できなくなりました。Android 10 リリースノートのバックグラウンドアプリの起動セクション および Android 10 のセキュリティとプライバシー強化のバックグラウンドアクティビティ制限セクション を参照してください
  • ファイルベース暗号化(FBE) は、このAndroidバージョンで起動するデバイスでは必須です(アップデートで移行したデバイスは引き続きフルディスク暗号化(FDE) を使用できます)。暗号化 を参照してください
  • デフォルトの Input Method Editor(IME) アプリのみがバックグラウンドから クリップボード データにアクセスできます。Android 10 のプライバシー変更のクリップボードデータへのアクセス制限セクション および Android 10 のセキュリティとプライバシー強化のクリップボードデータセクション を参照してください
  • StrandHogg 2.0 エクスプロイト(CVE-2020-0096)は不可能になりました(この脆弱性のパッチは 2020年5月のセキュリティアップデート で Android 8.0、8.1、9.0 にもバックポートされています。メーカーがデバイスにアップデートをリリースした場合)。StrandHogg 攻撃 / タスクアフィニティの脆弱性、、 を参照してください

Android 11 (API 30) - Red Velvet Cake

Android 11 リリースノート - セキュア

  • タスクハイジャッキング(StrandHogg 1.0)エクスプロイト(別のアプリが自分の taskAffinity をターゲットと同じに設定し、ユーザーがターゲットアプリを起動しようとして正当なアプリアイコンを使用した場合でも、そのアプリを起動するように騙す攻撃)は不可能になりました。StrandHogg 攻撃 / タスクアフィニティの脆弱性 および Strandhogg Vulnerability を参照してください
  • アプリはデフォルトで、他のインストール済みアプリに関する情報を照会できなくなりました。Android のパッケージ表示フィルタリング および Package visibility in Android 11 を参照してください
  • 未使用アプリの ランタイム権限 が自動リセットされます。Android 11 の権限アップデートの未使用アプリからの権限自動リセットセクション および ランタイム権限をリクエストするの未使用アプリの権限自動リセットセクション を参照してください
  • Scoped Storage が導入されましたが、アプリは引き続き requestLegacyExternalStorage を介してオプトアウトできます。Android 11 のストレージアップデート および Android ストレージのユースケースとベストプラクティスの本番アプリでのオプトアウトセクション を参照してください
  • スタンドアロン(フォールバックだけでなく)の DEVICE_CREDENTIAL(PIN、パターン、パスワード)認証子が BiometricPrompt に追加されました
  • カスタムビュー(setView で設定)を持つ Toasts は、バックグラウンドから起動できなくなりました。これは、被害者アプリのUIを覆い隠すことに依存する特定の 攻撃を緩和するためです。ちなみに、 メソッド全体は Android 11(API 30)で非推奨です。 を参照してください

Android 12 (API 31) - Snow Coneセキュリティ強化 - Android 12

Android 12 リリースノート

  • android:exported フラグは、インテントフィルタ を宣言するコンポーネント(アクティビティ、コンテンツプロバイダ など)のマニフェストで 明示的に 定義する必要があります。Android 12 をターゲットとするアプリの動作変更: コンポーネントのエクスポートをより安全にするセクション を参照してください。
  • 一般的なウェブ インテント は、そのウェブ インテント に含まれる特定のドメインに対してターゲットアプリが承認されていない限り、ユーザーのデフォルトブラウザアプリに解決されます。Android 12 の動作変更(すべてのアプリ): ウェブインテント解決セクション を参照してください。
  • 暗号アルゴリズムの BouncyCastle 実装をより多く Conscrypt 実装に置き換えます。Android 12 の動作変更(すべてのアプリ): BouncyCastle 実装の削除セクション を参照してください。
  • アプリが別のアプリの クリップボード データに初めてアクセスすると、ユーザーに通知されます。コピー&ペーストの「アプリがクリップボードデータにアクセスしたときに表示されるシステム通知」セクション を参照してください。
  • アプリは システムダイアログ を閉じることができなくなりました。Android 12 の動作変更(すべてのアプリ): アプリはシステムダイアログを閉じられないセクション を参照してください。
  • タップジャッキング の緩和策: オーバーレイがアプリを覆っている場合、アプリがタッチイベントを消費できないようにします。Cloak & Dagger を参照してください。
  • スコープ付きストレージ が常に適用され、requestLegacyExternalStorage によるオプトアウトはできなくなりました。Android ストレージのユースケースとベストプラクティスの「本番アプリでのオプトアウト」セクション を参照してください。
  • おおよその位置情報へのアクセス権限のみを付与する新しいオプション
  • アプリがカメラまたはマイクを使用しているときにユーザーに知らせる、ステータスバーの新しいプライバシーインジケーター
  • BiometricManager.Strings API が導入され、認証に を使用するアプリ向けにローカライズされた文字列が提供されます。

Android 13 (API 33) - Tiramisu

セキュリティ強化 - Android 13

Android 13 リリースノート - セキュリティ

  • 一致しない インテント は インテントフィルタ によってブロックされます(アプリは、宛先が定義した インテントフィルタ に完全に一致しない限り、別のアプリのエクスポートされたコンポーネントに インテント を送信できません)。Android 13 および Android 13 QPR リリースノートの「インテントは宣言されたインテントフィルタと一致する必要がある」セクション を参照してください。
  • ファイルベース暗号化 (FBE) のみが許可され、フルディスク暗号化 (FDE) は許可されなくなりました。以前許可されていたバージョンから更新されたデバイスでも同様です。
  • 共有 UID は非推奨になりました。これは、2 つ以上のアプリ間でサンドボックスアクセスを共有し、同じプロセスで実行するために使用されていました。パッケージマネージャー内で非決定的な動作を引き起こす可能性があるため、将来の Android バージョンで削除される予定です。アプリ署名 を参照してください。
  • AES(Advanced Encryption Standard)、HMAC(Keyed-Hash Message Authentication Code)などの対称暗号プリミティブ、および非対称暗号アルゴリズム(楕円曲線、RSA2048、RSA4096、Curve 25519 を含む)の Keymaster サポート
  • アプリから非免除(フォアグラウンドサービス (FGS) を含む)通知を送信するための POST_NOTIFICATIONS ランタイム権限が追加されました。通知のランタイム権限 と android.permission.POST_NOTIFICATIONS を参照してください。
  • アプリがフォアグラウンドにない場合に トースト を表示するには、ランタイム権限が必要です。ユーザーにトーストメッセージを表示したいだけなのに、通知を投稿する権限が必要な理由を説明するのは 非常に 直感に反する場合があります。さらに、トーストは 通知チャンネル に関連付けることはできません。NotificationManagerService のソースコード を参照してください。
  • すべてのデバイスログへのアクセスを要求するアプリに対して、使用ごと のプロンプトを追加し、ユーザーがアクセスを許可または拒否できるようにしました。Android でデバイスログを管理する を参照してください。
  • Android Virtualization Framework (AVF) が導入され、標準化された API を備えた 1 つのフレームワークの下にさまざまなハイパーバイザーがまとめられました。

Android 14 (API 34) - Upside Down Cake

セキュリティ強化 - Android 14

Android 14 セキュリティリリースノート

  • 最低 targetSdk 要件の導入: Android 6(API 23)より前の Android バージョンをターゲットとするアプリはインストールできなくなりました。つまり、Android 6(API 23)で導入された セキュリティ制限(この場合、特に ランタイム権限の処理)が、デバイスにインストールされているすべてのアプリに適用されることを前提とできます(この最低値は将来の Android バージョンごとに引き上げられる予定です)。動作変更(すべてのアプリ): インストール可能な最小ターゲット API レベルのセクション を参照してください。
  • 特定のメディアファイルを保存したアプリの名前はデフォルトで秘匿されます(そのパッケージ名が他のアプリに常に表示される場合、またはそれを照会するアプリに QUERY_ALL_PACKAGES 権限が付与されている場合を除きます。この権限を取得するには、Google Play の特別な手動レビューが必要です)。動作変更(すべてのアプリ): メディア所有者のパッケージ名が秘匿される場合があるセクション を参照してください。
  • アプリがこの権限を必要とする理由を説明する、位置情報権限プロンプトに説明を追加します。
  • Hardware-assisted AddressSanitizer (HWASan) が大幅に改善されました。これは、Android 10 で導入されたメモリエラー検出ツールで、置き換え対象である 非推奨 の AddressSanitizer に似ています。
  • ヌル暗号化された携帯電話ネットワーク接続を拒否するサポートを追加し、回線交換方式の音声と SMS トラフィックが常に暗号化され、パッシブな無線傍受から保護されるようにしました。Android 14 は業界初の携帯電話接続セキュリティ機能を導入 を参照してください。
  • 複数の IMEI のサポートを追加
  • AES-HCTR2 は、暗号化アクセラレーション命令を備えたデバイスでのファイル名暗号化の推奨モードになりました。
  • アプリが Android 14 をターゲットとしており、動的コード読み込み (DCL) を使用する場合、動的に読み込まれるすべてのファイルを 読み取り専用 としてマークする必要があります。そうしないと、システムが Exception をスローします。動作変更: Android 14 以降をターゲットとするアプリ: より安全な動的コード読み込みセクション を参照してください。

Android 15 (API 35) - Vanilla Ice Cream

Android 15 セキュリティリリースノート

  • Android 7(API 24)より前の Android バージョンをターゲットとするアプリはインストールできなくなりました。つまり、Android 7(API 24)で導入された セキュリティ制限 が、デバイスにインストールされているすべてのアプリに適用されることを前提とできます。動作変更(すべてのアプリ): 最小ターゲット SDK バージョンが 23 から 24 に引き上げられたセクション を参照してください。
  • USB モードと画面タイムアウトを変更するときに、システムは(生体認証が登録されている場合)生体認証を要求するようになりました。Android 15 は PC に接続したときに本人確認を行う を参照してください。
  • タスクハイジャック(StrandHogg)に対するさらなる緩和策: 最上位のアクティビティがタスクを終了した場合、Android は最後にアクティブだったタスクに戻ります。さらに、最上位でないアクティビティがタスクを終了した場合、Android はホーム画面に戻ります。この最上位でないアクティビティの終了はブロックされません。動作変更: Android 15 以降をターゲットとするアプリ: その他の変更セクション を参照してください。
  • タスクハイジャック(StrandHogg)に対するさらなる緩和策: 他のアプリから自分のタスクに任意のアクティビティを起動できなくなりました。動作変更: Android 15 以降をターゲットとするアプリ: その他の変更セクション を参照してください。
  • 設定ミスされた PendingIntent を悪用する攻撃者への緩和策: アプリが Android 15(API 35)をターゲットとする場合、PendingIntent 作成者はデフォルトで バックグラウンドでのアクティビティ起動 をブロックするようになりました。動作変更: Android 15 以降をターゲットとするアプリ: その他の変更セクション を参照してください。
  • デフォルトでは、PendingIntent 作成者がバックグラウンドアクティビティ起動権限を許可している場合、または送信者にバックグラウンドアクティビティ起動権限がある場合を除き、アプリはタスクスタックをフォアグラウンドに復帰させることができなくなりました。これは、アプリが Android 15(API 35)をターゲットとする場合に適用されます。動作変更: Android 15 以降をターゲットとするアプリ: その他の変更セクション を参照してください。
  • 非表示のウィンドウは、バックグラウンドアクティビティ起動の対象からブロックされるようになりました。これにより、サービス拒否 (DoS) 攻撃とポップアップ広告が緩和され、完全または部分的な タップジャッキング と全画面フィッシングに対する緩和策も提供されます。動作変更: Android 15 以降をターゲットとするアプリ: その他の変更セクション を参照してください。

Android 16 (API 36) - Baklava

Android 16 セキュリティリリースノート* 一般的な Intent リダイレクト攻撃 に対するデフォルトのセキュリティを追加しました。他のアプリから受信したインテント(現在のアプリを起動するインテントにエクストラとしてラップされたものなど)の起動をブロックします。Behavior changes: all apps の Improved security against Intent redirection attacks セクション を参照してください

  • companion device pairing フロー中に、悪意のあるアプリからユーザーの位置情報プライバシーを保護する新しい保護機能を追加しました。Android 16 で動作するすべてのコンパニオンアプリは、RESULT_DISCOVERY_TIMEOUT を使用した発見タイムアウトの直接通知を受け取らなくなります。その代わりに、視覚的なダイアログでタイムアウトイベントがユーザーに通知されます。ユーザーがダイアログを閉じると、アプリは RESULT_USER_REJECTED で関連付けの失敗を通知されます。Behavior changes: all apps の Companion apps no longer notified of discovery timeouts セクション を参照してください
  • MediaStore#getVersion() はアプリごとに一意になります。これにより、バージョン文字列から識別用のプロパティが排除され、不正使用やフィンガープリンティング技術への利用を防ぎます。Behavior changes: Apps targeting Android 16 or higher の MediaStore version lockdown セクション および MediaStore の getVersion メソッド を参照してください
  • アプリはアプリマニフェストを使用して、厳格なインテント解決を_オプトイン_できます。Safer Intents(StrictMode の一部として Android 15 で初めて導入)とは、配信されるインテントが非 null のアクションを持ち、ターゲットアプリのインテントフィルターと一致する必要があることを意味します。これらのルールの両方、またはインテントフィルターの一致のみを強制できるようになりました。Behavior changes: Apps targeting Android 16 or higher の Safer Intents セクション および、より具体的には Implementation セクション を参照してください
  • アプリから写真と動画の権限を求められたとき、選択したメディアへのアクセスを制限することを選択したユーザーには、写真ピッカーでアプリが所有する写真が事前に選択されている状態で表示されます。ユーザーはこれらの事前選択項目を選択解除でき、それによりアプリのそれらの写真と動画へのアクセスが取り消されます。Behavior changes: Apps targeting Android 16 or higher の App-owned photos セクション を参照してください
  • KeyMint(以前の Keymaster)バージョン 4.0 のアテステーション証明書のサポートを追加しました。KeyMint 4.0 証明書には、KeyDescription 構造に新しい フィールドが含まれており、読み込まれた APEX モジュールの整合性を検証するために使用できます。 および を参照してください

Android 17 (API 37) - Cinnamon Bun

Android 17 セキュリティリリースノート

  • ユーザーが READ_CONTATCS 権限を必要とせずに連絡先をアプリと共有できる、標準化されたブラウズ可能なインターフェースである Android Contact Picker を導入します。Features and APIs の Android contacts picker セクション を参照してください
  • クロスプロファイルのループバックトラフィックを許可しなくなりました。Behavior changes: all apps の Block cross profile loopback traffic セクション を参照してください
  • Android Keystore でアプリが作成できるキー数に制限を適用します(Android 17 をターゲットとする非システムアプリの場合は 50,000 キー)。このストレージは限られておりアプリ間で共有されるため、共有リソースを保護するためです。アプリが制限を超えてキーを作成しようとすると、KeyStoreException で作成に失敗します。Behavior changes: all apps の Per-app keystore limits セクション を参照してください
  • StrictMode の新しい検出機能(Android 18 ではデフォルトで強制されます): 現在、アプリが ACTION_SEND、ACTION_SEND_MULTIPLE、または ACTION_IMAGE_CAPTURE アクションを持つ URI でインテントを起動すると、システムはターゲットアプリに読み取りおよび書き込み URI 権限を自動的に付与します。Android 18 以降、システムはこれらの権限を自動的に付与しなくなります。Behavior changes: all apps の Restrict implicit URI grants セクション を参照してください
  • Android 17 以降をターゲットとするアプリに対して、Certificate Transparency をデフォルトで有効にします。Behavior changes: Apps targeting Android 17 or higher の Enable CT by default セクション を参照してください
ツールをダウンロード
  • SELinux 設定を更新: アプリケーションサンドボックスのさらなるロックダウン、mediaserver スタックを権限を減らしたより小さなプロセスに分割(Stagefright の緩和)。Android における Security-Enhanced Linux を参照してください
  • ID アテステーション
    ハードウェアバックアップ Keystore
    Keymaster の機能
    Key and ID Attestation
  • Project Treble が導入されました(このバージョンでリリースされたデバイスのみが Project Treble をサポートし、アップデートされたデバイスは対象外)。低レベルのベンダーコードを Android システムフレームワークから分離し、セキュリティアップデートの配信を容易にします。Here comes Treble: A modular base for Android および Treble Plus One Equals Four を参照してください
  • Treble と連携するよう SELinux を更新。SELinux ポリシーにより、メーカーと SOC ベンダーは、プラットフォームから独立してポリシーの一部を更新でき、その逆も可能です。Android における Security-Enhanced Linux を参照してください
  • メディアスタックのさらなる堅牢化: モバイルハードウェア抽象化レイヤー(HAL)を共有プロセスで実行するのではなく、それぞれ独立したサンドボックスプロセスで実行
  • 不明なソース(つまり Google Play 以外)からのアプリのインストールを許可するには、Android設定で特定のアプリに対してユーザーが明示的に権限を付与する必要があります(ユーザーはいつでもその権限を取り消したり、アプリごとに管理したりできます)。アプリの公開の不明なアプリとソースのユーザーオプトインセクション および すべてのアプリに対する Android 8.0 の動作変更のセキュリティセクション を参照してください
  • StrandHogg 2.0 Exploit Explained - Why Users and Android App Developers should care
    Strandhogg Vulnerability
  • Project Mainline が導入されました(このバージョンでリリースされたデバイスのみが Project Mainline をサポートし、アップデートで移行したデバイスは対象外)。これは Android 9(API 26)で導入された Treble の上に構築されています。これにより、Android アップデートはさらに簡素化され、迅速化されます。Mainline アップデートは、一般に Google Play システムアップデート として知られており、スマートフォンメーカーによる完全なOTAアップデートを必要とせずに、選択された AOSP コンポーネントをより迅速に配信できます(更新可能なコンポーネントのリストは新しいAndroidバージョンごとに増えていきます)。Fresher OS with Projects Treble and Mainline および What Are Google Play System Updates on Android, and Are They Important? を参照してください
  • タップジャッキング
    setView
    Toast の setView メソッドのドキュメント
    BiometricPrompt
  • ディスプレイ内 指紋センサーのサポートを追加
  • Fingerprint Android Interface Definition Language (AIDL) が導入されました
  • FLAG_SECURE フラグが、生体認証またはデバイス資格情報(PIN、パターン、パスワード)のプロンプトに追加されました。デバイスのロック解除とアプリ内の BiometricPrompt の両方が含まれます。つまり、これらの画面のスクリーンショットを撮ることはできず、画面共有では黒く表示されます。Android Code Search の com.android.systemui.biometrics.AuthContainerView のソース を参照してください。
  • デバイス上で機密性の高いユーザーデータを処理するための安全なパーティションとして、Private Compute Services が導入されました。これは、Live Caption、Now Playing、Smart Reply などの AI 駆動機能で使用されます。Google はこれを「Android オペレーティングシステム内の安全で分離されたデータ処理環境であり、内部のデータを誰と、どのように、いつ共有するかを決定するなど、データを制御できる」と定義しています。Android の Private Compute Services の紹介、Google が Android の Private Compute Core の仕組みを公式に説明、Android Private Compute Core アーキテクチャのホワイトペーパー を参照してください。
  • プラットフォーム開発のための Rust 言語サポート
  • トースト は 2 行のテキストに制限され、アプリケーションアイコンが表示されるため、ユーザーはどのアプリが表示しているかを識別できます。Android 12 をターゲットとするアプリの動作変更: トーストの再設計セクション と トーストの概要 を参照してください。
  • APK 署名スキーム v3.1 が導入され、apksigner を使用する新しい鍵のローテーションはすべて、Android 13 以降を対象としたローテーションでデフォルトで v3.1 署名スキームを使用します。
  • 制限付き設定 が導入され、サイドロードされたアプリ(セッションベースのインストール API を使用せずにインストールされたアプリ)が、Google が特に危険と見なす権限を取得できないようにしました(ユーザーは Android の設定でこれらの権限を手動で付与することは可能です)。現在これは、アクセシビリティと通知リスナーの保持に適用されます。Android 13 の制限付き設定機能により、悪意のあるアプリが通知にアクセスできなくなる を参照してください。ただし、この制限を認識している悪意のあるアプリは、インストール後に上記のセッションベースのインストール API を使用して別のアプリをインストールすることで回避できる可能性があるため、制限は 2 つ目のアプリには適用されないことに注意してください。
  • Project Mainline、より一般的には Google Play システムアップデート として知られる手段によるルート証明書の更新サポートを追加しました。これにより、新しい CA 証明書を導入したり、失効した証明書を削除したりするために、完全な OTA Android アップデートが必要なくなりました。Android 14 は Google Play 経由でルート証明書を更新可能にし、悪意のある CA からユーザーを保護 を参照してください。
  • StrictMode の新しい検出機能(これは Android 16 でデフォルトで適用されます): 特定のコンポーネントをターゲットとするインテントは、ターゲットのインテントフィルタ仕様と正確に一致する必要があります。別のアプリのアクティビティを起動するインテントを送信する場合、ターゲットインテントのコンポーネントは、受信アクティビティが宣言したインテントフィルタと一致する必要があります。また、アクションなし(アクションが null に設定されている)のインテントは、どのインテントフィルタにも一致しなくなります。つまり、アクティビティやサービスを開始するために使用されるインテントには、明確に定義されたアクションが必要です。動作変更: Android 15 以降をターゲットとするアプリ: より安全なインテントのセクション を参照してください。
  • PendingIntent の作成者は、保留中のインテントの送信者 ではなく、それを囲むインテントの送信者 として扱われます。動作変更: Android 15 以降をターゲットとするアプリ: より安全なインテントのセクション を参照してください。
  • Google Play Protect は、Android 10(API 29)以前をターゲットとするアプリをサイドロードする前に、生体認証またはデバイス資格情報(デバイスのロック解除に使用される PIN、パスワード、パターン)の確認を要求するようになりました。これは、Play Protect が悪意のあるアプリと戦うための継続的な取り組みの一環であり、同様のプロンプトが今後追加される可能性があります(新しい OS バージョンを必要としない場合もあります)。Google、怪しいアプリのインストール時に保護レイヤーを追加へ(APK 解析) を参照してください。
  • BiometricPrompt に正しい資格情報を複数回(5 回)提供できないと、今後はデバイス自体がロックされます。生体認証資格情報(例: 指紋)がこの回数認識されなかった場合、デバイスは安全な デバイス資格情報(PIN、パターン、パスワード)でのみロックを解除できます。さらに、その試行も失敗した場合、デバイスのロックを解除できるようになるまでに 60 秒のタイムアウトが必要です。これにより、BiometricPrompt の動作も変更されます。生体認証での失敗後にデバイス資格情報に「フォールバック」してユーザー認証を完了することはできません。ユーザーは、その認証方式が許可されている場合(かつ、プロンプトの失敗回数がすでに多すぎない場合)、プロンプトのボタンから 任意で デバイス資格情報を使用できることに注意してください。デバイスがロックされるとプロンプトはキャンセルされ、デバイスのロック解除後に新しいプロンプトをトリガーして認証を成功させる必要があります。Android 15 は、ロックが解除されたスマートフォンを盗まれた場合に、盗難者が銀行口座を空にすることを防ぎます を参照してください。
  • moduleHash
    Android 16 リリースノートの Device integrity セクション
    Key and ID attestation
  • デフォルトでは無効ですが、Android 17 で有効になる Certificate Transparency へのオプトインを許可します。Network security configuration の Opt out of certificate transparency セクション を参照してください