{"id":"ASB-A-316153291","details":"In multiple functions of ZygoteProcess.java, there is a possible way to achieve code execution as any app via WRITE_SECURE_SETTINGS due to unsafe deserialization. This could lead to local escalation of privilege with User execution privileges needed. User interaction is not needed for exploitation.","aliases":["A-316153291","CVE-2024-31317"],"modified":"2026-05-26T15:46:26.044149249Z","published":"2024-06-01T00:00:00Z","references":[{"type":"ADVISORY","url":"https://source.android.com/security/bulletin/2024-06-01"},{"type":"FIX","url":"https://android.googlesource.com/platform/frameworks/base/+/e25a0e394bbfd6143a557e1019bb7ad992d11985"}],"affected":[{"package":{"name":"platform/frameworks/base","ecosystem":"Android"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"14-next:0"},{"fixed":"14-next:2024-06-01"}]}],"versions":["14-next"],"ecosystem_specific":{"severity":"High","vanir_signatures":[{"target":{"function":"maybeSetApiDenylistExemptions","file":"core/java/android/os/ZygoteProcess.java"},"id":"ASB-A-316153291-4708fa78","signature_type":"Function","digest":{"function_hash":"214448203349323599548795376745365520973","length":1178},"deprecated":false,"source":"https://android.googlesource.com/platform/frameworks/base/+/7ba059e2cf0a2c20f9a849719cdc32b12c933a44","signature_version":"v1"},{"target":{"function":"zygoteSendArgsAndGetResult","file":"core/java/android/os/ZygoteProcess.java"},"id":"ASB-A-316153291-8a5d6124","signature_type":"Function","digest":{"function_hash":"175695285244469626251881774535437376642","length":657},"deprecated":false,"source":"https://android.googlesource.com/platform/frameworks/base/+/7ba059e2cf0a2c20f9a849719cdc32b12c933a44","signature_version":"v1"},{"target":{"file":"core/java/android/os/ZygoteProcess.java"},"id":"ASB-A-316153291-fad5e15d","source":"https://android.googlesource.com/platform/frameworks/base/+/7ba059e2cf0a2c20f9a849719cdc32b12c933a44","digest":{"threshold":0.9,"line_hashes":["250685846269877699305537590881757732988","182524859769249996603924161581678875248","186756118610173750335684351721385489392","182453770008676228557481321627097140899","137382483238606221430484722300192924877","131451455353301429098872188703380899469","80825542379334931313093044566922438533"]},"deprecated":false,"signature_type":"Line","signature_version":"v1"}],"spl":"2024-06-01","fixes":["https://android.googlesource.com/platform/frameworks/base/+/7ba059e2cf0a2c20f9a849719cdc32b12c933a44"],"types":["EoP"]},"database_specific":{"source":"https://storage.googleapis.com/android-osv/ASB-A-316153291.json"}},{"package":{"name":"platform/frameworks/base","ecosystem":"Android"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"12:0"},{"fixed":"12:2024-06-01"}]}],"versions":["12"],"ecosystem_specific":{"fixes":["https://android.googlesource.com/platform/frameworks/base/+/60669aa49aba34c0950d6246bd95b54f91a3c8e8"],"spl":"2024-06-01","vanir_signatures":[{"target":{"function":"maybeSetApiDenylistExemptions","file":"core/java/android/os/ZygoteProcess.java"},"source":"https://android.googlesource.com/platform/frameworks/base/+/60669aa49aba34c0950d6246bd95b54f91a3c8e8","signature_type":"Function","digest":{"function_hash":"214448203349323599548795376745365520973","length":1178},"id":"ASB-A-316153291-02ccd840","deprecated":false,"signature_version":"v1"},{"target":{"file":"core/java/android/os/ZygoteProcess.java"},"id":"ASB-A-316153291-bb550b30","source":"https://android.googlesource.com/platform/frameworks/base/+/60669aa49aba34c0950d6246bd95b54f91a3c8e8","digest":{"threshold":0.9,"line_hashes":["250685846269877699305537590881757732988","182524859769249996603924161581678875248","186756118610173750335684351721385489392","182453770008676228557481321627097140899","137382483238606221430484722300192924877","131451455353301429098872188703380899469","80825542379334931313093044566922438533"]},"deprecated":false,"signature_type":"Line","signature_version":"v1"},{"target":{"function":"zygoteSendArgsAndGetResult","file":"core/java/android/os/ZygoteProcess.java"},"id":"ASB-A-316153291-cfeea0e6","source":"https://android.googlesource.com/platform/frameworks/base/+/60669aa49aba34c0950d6246bd95b54f91a3c8e8","digest":{"function_hash":"175695285244469626251881774535437376642","length":657},"deprecated":false,"signature_type":"Function","signature_version":"v1"}],"types":["EoP"],"severity":"High"},"database_specific":{"source":"https://storage.googleapis.com/android-osv/ASB-A-316153291.json"}},{"package":{"name":"platform/frameworks/base","ecosystem":"Android"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"12L:0"},{"fixed":"12L:2024-06-01"}]}],"versions":["12L"],"ecosystem_specific":{"severity":"High","vanir_signatures":[{"target":{"file":"core/java/android/os/ZygoteProcess.java","function":"maybeSetApiDenylistExemptions"},"source":"https://android.googlesource.com/platform/frameworks/base/+/60669aa49aba34c0950d6246bd95b54f91a3c8e8","signature_type":"Function","digest":{"function_hash":"214448203349323599548795376745365520973","length":1178},"deprecated":false,"id":"ASB-A-316153291-088a7ca6","signature_version":"v1"},{"target":{"file":"core/java/android/os/ZygoteProcess.java"},"id":"ASB-A-316153291-852dfbdd","source":"https://android.googlesource.com/platform/frameworks/base/+/60669aa49aba34c0950d6246bd95b54f91a3c8e8","digest":{"threshold":0.9,"line_hashes":["250685846269877699305537590881757732988","182524859769249996603924161581678875248","186756118610173750335684351721385489392","182453770008676228557481321627097140899","137382483238606221430484722300192924877","131451455353301429098872188703380899469","80825542379334931313093044566922438533"]},"deprecated":false,"signature_type":"Line","signature_version":"v1"},{"target":{"function":"zygoteSendArgsAndGetResult","file":"core/java/android/os/ZygoteProcess.java"},"id":"ASB-A-316153291-9c54f351","signature_type":"Function","digest":{"function_hash":"175695285244469626251881774535437376642","length":657},"deprecated":false,"source":"https://android.googlesource.com/platform/frameworks/base/+/60669aa49aba34c0950d6246bd95b54f91a3c8e8","signature_version":"v1"}],"spl":"2024-06-01","fixes":["https://android.googlesource.com/platform/frameworks/base/+/60669aa49aba34c0950d6246bd95b54f91a3c8e8"],"types":["EoP"]},"database_specific":{"source":"https://storage.googleapis.com/android-osv/ASB-A-316153291.json"}},{"package":{"name":"platform/frameworks/base","ecosystem":"Android"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"13:0"},{"fixed":"13:2024-06-01"}]}],"versions":["13"],"ecosystem_specific":{"fixes":["https://android.googlesource.com/platform/frameworks/base/+/60669aa49aba34c0950d6246bd95b54f91a3c8e8"],"spl":"2024-06-01","vanir_signatures":[{"target":{"function":"zygoteSendArgsAndGetResult","file":"core/java/android/os/ZygoteProcess.java"},"source":"https://android.googlesource.com/platform/frameworks/base/+/60669aa49aba34c0950d6246bd95b54f91a3c8e8","signature_type":"Function","digest":{"function_hash":"175695285244469626251881774535437376642","length":657},"id":"ASB-A-316153291-16f4247f","deprecated":false,"signature_version":"v1"},{"target":{"file":"core/java/android/os/ZygoteProcess.java"},"id":"ASB-A-316153291-8250aede","source":"https://android.googlesource.com/platform/frameworks/base/+/60669aa49aba34c0950d6246bd95b54f91a3c8e8","digest":{"threshold":0.9,"line_hashes":["250685846269877699305537590881757732988","182524859769249996603924161581678875248","186756118610173750335684351721385489392","182453770008676228557481321627097140899","137382483238606221430484722300192924877","131451455353301429098872188703380899469","80825542379334931313093044566922438533"]},"deprecated":false,"signature_type":"Line","signature_version":"v1"},{"target":{"file":"core/java/android/os/ZygoteProcess.java","function":"maybeSetApiDenylistExemptions"},"source":"https://android.googlesource.com/platform/frameworks/base/+/60669aa49aba34c0950d6246bd95b54f91a3c8e8","signature_type":"Function","digest":{"function_hash":"214448203349323599548795376745365520973","length":1178},"deprecated":false,"id":"ASB-A-316153291-9c55f11e","signature_version":"v1"}],"types":["EoP"],"severity":"High"},"database_specific":{"source":"https://storage.googleapis.com/android-osv/ASB-A-316153291.json"}},{"package":{"name":"platform/frameworks/base","ecosystem":"Android"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"14:0"},{"fixed":"14:2024-06-01"}]}],"versions":["14"],"ecosystem_specific":{"fixes":["https://android.googlesource.com/platform/frameworks/base/+/60669aa49aba34c0950d6246bd95b54f91a3c8e8"],"vanir_signatures":[{"target":{"function":"zygoteSendArgsAndGetResult","file":"core/java/android/os/ZygoteProcess.java"},"id":"ASB-A-316153291-0b9b2229","signature_type":"Function","digest":{"function_hash":"175695285244469626251881774535437376642","length":657},"deprecated":false,"source":"https://android.googlesource.com/platform/frameworks/base/+/60669aa49aba34c0950d6246bd95b54f91a3c8e8","signature_version":"v1"},{"target":{"file":"core/java/android/os/ZygoteProcess.java"},"source":"https://android.googlesource.com/platform/frameworks/base/+/60669aa49aba34c0950d6246bd95b54f91a3c8e8","signature_type":"Line","digest":{"threshold":0.9,"line_hashes":["250685846269877699305537590881757732988","182524859769249996603924161581678875248","186756118610173750335684351721385489392","182453770008676228557481321627097140899","137382483238606221430484722300192924877","131451455353301429098872188703380899469","80825542379334931313093044566922438533"]},"id":"ASB-A-316153291-3e77f95b","deprecated":false,"signature_version":"v1"},{"target":{"function":"maybeSetApiDenylistExemptions","file":"core/java/android/os/ZygoteProcess.java"},"id":"ASB-A-316153291-474c4861","signature_type":"Function","digest":{"function_hash":"214448203349323599548795376745365520973","length":1178},"deprecated":false,"source":"https://android.googlesource.com/platform/frameworks/base/+/60669aa49aba34c0950d6246bd95b54f91a3c8e8","signature_version":"v1"}],"spl":"2024-06-01","types":["EoP"],"severity":"High"},"database_specific":{"source":"https://storage.googleapis.com/android-osv/ASB-A-316153291.json"}}],"schema_version":"1.7.5"}