
Zygote の脆弱性 CVE-2024-31317 に関する詳細な議論
CVE-2024-31317 は、正規の Android アプリが利用できる任意の uid および SELinux スコープへの非特権アクセスを提供します。これにより uid 1000(system)および uid 2000(shell)へのアクセスが可能になり、非特権アプリから完全にトリガーできるため、それを利用するあらゆる機能の永続化が可能になります。
このエクスプロイトは、2024年6月のセキュリティパッチ以前のほとんどの Android バージョンおよび Android 9 以降に適用されるはずです。一部のベンダーはこの変更を古いバージョンに取り込んでいる場合があります。具体的には、セキュリティパッチが 2024-06-01 以前の Android 9〜14 を意味します。
この脆弱性は Android 11 以下の場合、自明です。12 より前のバージョンでの実装手順については、添付のソースを参照してください。
shell 権限は、adb shell 経由の直接アクセスと同じであるはずです。system 権限はより疑問が残ります。@oddbyte が、特にこの脆弱性に関連する利用可能な system アクセスのリストを維持しています。デフォルトのプロパティコンテキスト権限は、property_contexts と system_app.te に記載されています。
この調査は、以下のソースと実際の Android ソースコードに大きく基づいています: