In forceReplaceShortcutInner of ShortcutPackage.java, there is a possible way to register unlimited packages due to a missing bounds check. This could lead to local denial of service which results in a boot loop with no additional execution privileges needed. User interaction is not needed for exploitation.
{
"vanir_signatures": [
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"16700796221960876658047075062901820845",
"308728855881366338611251931444619050660",
"188289724923926477708120317160316156172",
"44614394285164625813598547672783867506",
"206105765535832684862210061196108387550",
"129098121925743220798425757674504911517",
"165883179787575822188781207300394552354",
"45358171669273888812659535669192814796"
]
},
"id": "ASB-A-281061287-83788f56",
"signature_type": "Line",
"source": "https://android.googlesource.com/platform/frameworks/base/+/3215e73e36aa0463429226b5743ce24badf31227",
"deprecated": false,
"target": {
"file": "services/core/java/com/android/server/pm/ShortcutPackage.java"
},
"signature_version": "v1"
},
{
"digest": {
"function_hash": "334976330244219875878723607817575569924",
"length": 1528.0
},
"id": "ASB-A-281061287-987a18fd",
"signature_type": "Function",
"source": "https://android.googlesource.com/platform/frameworks/base/+/3215e73e36aa0463429226b5743ce24badf31227",
"deprecated": false,
"target": {
"function": "pushDynamicShortcut",
"file": "services/core/java/com/android/server/pm/ShortcutPackage.java"
},
"signature_version": "v1"
},
{
"digest": {
"function_hash": "25517847561716758263126889563997043673",
"length": 200.0
},
"id": "ASB-A-281061287-ef716b0c",
"signature_type": "Function",
"source": "https://android.googlesource.com/platform/frameworks/base/+/3215e73e36aa0463429226b5743ce24badf31227",
"deprecated": false,
"target": {
"function": "forceReplaceShortcutInner",
"file": "services/core/java/com/android/server/pm/ShortcutPackage.java"
},
"signature_version": "v1"
}
],
"types": [
"DoS"
],
"spl": "2023-12-01",
"fixes": [
"https://android.googlesource.com/platform/frameworks/base/+/3215e73e36aa0463429226b5743ce24badf31227"
],
"severity": "High"
}{
"vanir_signatures": [
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"16700796221960876658047075062901820845",
"203701812653124260786088409224808533408",
"303542053167480856875165221117970394146",
"190853302074390725425840266950682255074",
"206105765535832684862210061196108387550",
"129098121925743220798425757674504911517",
"165883179787575822188781207300394552354",
"245015905893707368514028808955757503038"
]
},
"id": "ASB-A-281061287-0c1f105c",
"signature_type": "Line",
"source": "https://android.googlesource.com/platform/frameworks/base/+/2d93aabdc4905b36ee684533904029cfc61533b7",
"deprecated": false,
"target": {
"file": "services/core/java/com/android/server/pm/ShortcutPackage.java"
},
"signature_version": "v1"
},
{
"digest": {
"function_hash": "159109076582546941070176486697659532569",
"length": 236.0
},
"id": "ASB-A-281061287-2a07e5e2",
"signature_type": "Function",
"source": "https://android.googlesource.com/platform/frameworks/base/+/2d93aabdc4905b36ee684533904029cfc61533b7",
"deprecated": false,
"target": {
"function": "forceReplaceShortcutInner",
"file": "services/core/java/com/android/server/pm/ShortcutPackage.java"
},
"signature_version": "v1"
},
{
"digest": {
"function_hash": "287786783413334123543829213843353028849",
"length": 1171.0
},
"id": "ASB-A-281061287-6352b9f5",
"signature_type": "Function",
"source": "https://android.googlesource.com/platform/frameworks/base/+/2d93aabdc4905b36ee684533904029cfc61533b7",
"deprecated": false,
"target": {
"function": "pushDynamicShortcut",
"file": "services/core/java/com/android/server/pm/ShortcutPackage.java"
},
"signature_version": "v1"
}
],
"types": [
"DoS"
],
"spl": "2023-12-01",
"fixes": [
"https://android.googlesource.com/platform/frameworks/base/+/2d93aabdc4905b36ee684533904029cfc61533b7"
],
"severity": "High"
}{
"vanir_signatures": [
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"16700796221960876658047075062901820845",
"308728855881366338611251931444619050660",
"188289724923926477708120317160316156172",
"44614394285164625813598547672783867506",
"206105765535832684862210061196108387550",
"129098121925743220798425757674504911517",
"165883179787575822188781207300394552354",
"45358171669273888812659535669192814796"
]
},
"id": "ASB-A-281061287-3006c118",
"signature_type": "Line",
"source": "https://android.googlesource.com/platform/frameworks/base/+/3215e73e36aa0463429226b5743ce24badf31227",
"deprecated": false,
"target": {
"file": "services/core/java/com/android/server/pm/ShortcutPackage.java"
},
"signature_version": "v1"
},
{
"digest": {
"function_hash": "334976330244219875878723607817575569924",
"length": 1528.0
},
"id": "ASB-A-281061287-a79e7589",
"signature_type": "Function",
"source": "https://android.googlesource.com/platform/frameworks/base/+/3215e73e36aa0463429226b5743ce24badf31227",
"deprecated": false,
"target": {
"function": "pushDynamicShortcut",
"file": "services/core/java/com/android/server/pm/ShortcutPackage.java"
},
"signature_version": "v1"
},
{
"digest": {
"function_hash": "25517847561716758263126889563997043673",
"length": 200.0
},
"id": "ASB-A-281061287-bf1fe3d4",
"signature_type": "Function",
"source": "https://android.googlesource.com/platform/frameworks/base/+/3215e73e36aa0463429226b5743ce24badf31227",
"deprecated": false,
"target": {
"function": "forceReplaceShortcutInner",
"file": "services/core/java/com/android/server/pm/ShortcutPackage.java"
},
"signature_version": "v1"
}
],
"types": [
"DoS"
],
"spl": "2023-12-01",
"fixes": [
"https://android.googlesource.com/platform/frameworks/base/+/3215e73e36aa0463429226b5743ce24badf31227"
],
"severity": "High"
}{
"vanir_signatures": [
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"16700796221960876658047075062901820845",
"308728855881366338611251931444619050660",
"188289724923926477708120317160316156172",
"44614394285164625813598547672783867506",
"206105765535832684862210061196108387550",
"129098121925743220798425757674504911517",
"165883179787575822188781207300394552354",
"45358171669273888812659535669192814796"
]
},
"id": "ASB-A-281061287-724219f5",
"signature_type": "Line",
"source": "https://android.googlesource.com/platform/frameworks/base/+/3215e73e36aa0463429226b5743ce24badf31227",
"deprecated": false,
"target": {
"file": "services/core/java/com/android/server/pm/ShortcutPackage.java"
},
"signature_version": "v1"
},
{
"digest": {
"function_hash": "25517847561716758263126889563997043673",
"length": 200.0
},
"id": "ASB-A-281061287-a3cdd939",
"signature_type": "Function",
"source": "https://android.googlesource.com/platform/frameworks/base/+/3215e73e36aa0463429226b5743ce24badf31227",
"deprecated": false,
"target": {
"function": "forceReplaceShortcutInner",
"file": "services/core/java/com/android/server/pm/ShortcutPackage.java"
},
"signature_version": "v1"
},
{
"digest": {
"function_hash": "334976330244219875878723607817575569924",
"length": 1528.0
},
"id": "ASB-A-281061287-d644e870",
"signature_type": "Function",
"source": "https://android.googlesource.com/platform/frameworks/base/+/3215e73e36aa0463429226b5743ce24badf31227",
"deprecated": false,
"target": {
"function": "pushDynamicShortcut",
"file": "services/core/java/com/android/server/pm/ShortcutPackage.java"
},
"signature_version": "v1"
}
],
"types": [
"DoS"
],
"spl": "2023-12-01",
"fixes": [
"https://android.googlesource.com/platform/frameworks/base/+/3215e73e36aa0463429226b5743ce24badf31227"
],
"severity": "High"
}{
"vanir_signatures": [
{
"digest": {
"function_hash": "334976330244219875878723607817575569924",
"length": 1528.0
},
"id": "ASB-A-281061287-2c308b4c",
"signature_type": "Function",
"source": "https://android.googlesource.com/platform/frameworks/base/+/3215e73e36aa0463429226b5743ce24badf31227",
"deprecated": false,
"target": {
"function": "pushDynamicShortcut",
"file": "services/core/java/com/android/server/pm/ShortcutPackage.java"
},
"signature_version": "v1"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"16700796221960876658047075062901820845",
"308728855881366338611251931444619050660",
"188289724923926477708120317160316156172",
"44614394285164625813598547672783867506",
"206105765535832684862210061196108387550",
"129098121925743220798425757674504911517",
"165883179787575822188781207300394552354",
"45358171669273888812659535669192814796"
]
},
"id": "ASB-A-281061287-9e99c298",
"signature_type": "Line",
"source": "https://android.googlesource.com/platform/frameworks/base/+/3215e73e36aa0463429226b5743ce24badf31227",
"deprecated": false,
"target": {
"file": "services/core/java/com/android/server/pm/ShortcutPackage.java"
},
"signature_version": "v1"
},
{
"digest": {
"function_hash": "25517847561716758263126889563997043673",
"length": 200.0
},
"id": "ASB-A-281061287-af13675e",
"signature_type": "Function",
"source": "https://android.googlesource.com/platform/frameworks/base/+/3215e73e36aa0463429226b5743ce24badf31227",
"deprecated": false,
"target": {
"function": "forceReplaceShortcutInner",
"file": "services/core/java/com/android/server/pm/ShortcutPackage.java"
},
"signature_version": "v1"
}
],
"types": [
"DoS"
],
"spl": "2023-12-01",
"fixes": [
"https://android.googlesource.com/platform/frameworks/base/+/3215e73e36aa0463429226b5743ce24badf31227"
],
"severity": "High"
}{
"vanir_signatures": [
{
"digest": {
"function_hash": "25517847561716758263126889563997043673",
"length": 200.0
},
"id": "ASB-A-281061287-b4a3fb74",
"signature_type": "Function",
"source": "https://android.googlesource.com/platform/frameworks/base/+/3215e73e36aa0463429226b5743ce24badf31227",
"deprecated": false,
"target": {
"function": "forceReplaceShortcutInner",
"file": "services/core/java/com/android/server/pm/ShortcutPackage.java"
},
"signature_version": "v1"
},
{
"digest": {
"function_hash": "334976330244219875878723607817575569924",
"length": 1528.0
},
"id": "ASB-A-281061287-b71264d0",
"signature_type": "Function",
"source": "https://android.googlesource.com/platform/frameworks/base/+/3215e73e36aa0463429226b5743ce24badf31227",
"deprecated": false,
"target": {
"function": "pushDynamicShortcut",
"file": "services/core/java/com/android/server/pm/ShortcutPackage.java"
},
"signature_version": "v1"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"16700796221960876658047075062901820845",
"308728855881366338611251931444619050660",
"188289724923926477708120317160316156172",
"44614394285164625813598547672783867506",
"206105765535832684862210061196108387550",
"129098121925743220798425757674504911517",
"165883179787575822188781207300394552354",
"45358171669273888812659535669192814796"
]
},
"id": "ASB-A-281061287-dd9e0748",
"signature_type": "Line",
"source": "https://android.googlesource.com/platform/frameworks/base/+/3215e73e36aa0463429226b5743ce24badf31227",
"deprecated": false,
"target": {
"file": "services/core/java/com/android/server/pm/ShortcutPackage.java"
},
"signature_version": "v1"
}
],
"types": [
"DoS"
],
"spl": "2023-12-01",
"fixes": [
"https://android.googlesource.com/platform/frameworks/base/+/3215e73e36aa0463429226b5743ce24badf31227"
],
"severity": "High"
}