一般社団法人日本スマートフォンセキュリティ協会(JSSEC)は8月27日、「Android アプリのセキュア設計・セキュアコーディングガイド」の2025年8月27日版を公開した。

 同ガイドは、Androidアプリケーションのセキュリティを考慮した設計・開発のノウハウを集めた文書で、アプリケーション開発現場で「使う」ことを想定した文書構成が特徴となっている。
各テーマの文書は、忙しい開発者向けの手本となるサンプルコードを紹介したサンプルコードセクション、サンプルコードの背景にあるセキュリティ観点の留意事項をまとめたルールブックセクション、セキュリティの理解を深めるための話題をまとめたアドバンストセクションで構成されている。

 17版目の改定版となる2025年8月27日版では、最新版のAndroid 16における変更点を中心に改訂を行っている。Android 16では、順序付きBroadcastのpriority指定やSafer Intentsの導入、Intentリダイレクト攻撃対策強化など、アプリ間通信の安全性を高める仕様変更が加えられているため、対応する新しい記事を追加している。また、MediaStoreのバージョン管理やアプリ所有写真の扱い、ローカルネットワークアクセス権限、Key sharing APIによる鍵共有といったストレージ・ネットワーク・暗号管理に関する機能も拡充されたため、セキュリティリスクへの理解を深めやすくするための記事を追加している。Google Playアプリ署名による鍵管理についてのコラムを追加し、アプリ配布における安全性確保についても解説している。

 Android 10以降のストレージアクセスや、コンポーネント公開制御・Intent関連の記述を再構成し、より体系的で実践的に活用できる内容へと改善するとともに、Googleの公式サポートが既に終了しているAndroid 7以前の記述については削除し、現行の開発環境で直面するリスクと対応策に焦点を当てている。

 2025年1月29日版からの改訂内容は下記の通り。

・新しい記事の追加
4.2.3.9. 順序付きBroadcastのpriority仕様変更
4.6.3.11. MediaStore バージョンのロックダウン
4.6.3.12. App-owned photos
4.7.3.6. Safer Intents
4.7.3.7. Intentリダイレクト攻撃対策
5.5.3.7. ローカル ネットワークへのアクセス権
5.6.3.8. Key sharing APIによるアプリ間鍵共有の仕組みとリスク
5.6.3.9. (コラム) Google Playアプリ署名による鍵管理

・構成・内容の見直しと拡充
4.6.3.4. Android 10以降の内部ストレージアクセス
4.6.3.5. Android 10以降の外部ストレージアクセス
4.6.3.6. Android 10以降の共有ストレージアクセス
4.7.3.1. コンポーネント公開制御とIntent送信の制限
4.7.3.2. PendingIntentオブジェクトの可変性
4.7.3.3. Intent Filterの厳格化
4.7.3.4. Intent Filter機能の拡張
4.7.3.5. PendingIntentとパッケージ停止状態の仕様変更
5.5.3.15. プライベート スペース
5.5.3.8. Android 12 における使用していないアプリの自動休止機能について
5.5.3.9. パッケージアクセスの仕様変更にともなうAPIの戻り値の変化
4.11.4.2. 新規インストールアプリでのsharedUserIdの無効化
2.2. サンプルコード、ルールブック、アドバンスト
5.1.3.5. 認証情報マネージャーを自動入力と統合する
4.6.3.8. メディア所有者のパッケージ名
5.3.3.2. Android 8.0(API Level 26)以降で署名の一致しないAuthenticatorのアカウントを読めるケース

・記事の削除
4.1.3.3. Activityに送信されるIntentの読み取り(Android 5.0より前のバージョンについて)
4.6.3.4. Android 4.4 (API Level 19)における外部ストレージへのアクセスに関する仕様変更について
4.6.3.5. Android 7.0(API Level 24)における外部ストレージの特定ディレクトリへのアクセスに関する仕様変更について
4.9.3.1. Android 4.2未満の端末におけるaddJavascriptInterface()に起因する脆弱性について
5.3.3.2. Android 4.0.xでは利用アプリとAuthenticatorアプリの署名鍵が異なると例外が発生する
5.6.3.3. 乱数生成における脆弱性と対策

元の記事を読む

編集部おすすめ