In register of UidObserverController.java, there is a missing permission check. This could lead to local information disclosure of app usage with User execution privileges needed. User interaction is not needed for exploitation.
{
"types": [
"ID"
],
"spl": "2023-03-01",
"fixes": [
"https://android.googlesource.com/platform/frameworks/base/+/4a06c40b87e953a39e3fe921d3b2750ba4530a42"
],
"severity": "Moderate",
"vanir_signatures": [
{
"signature_type": "Line",
"target": {
"file": "services/core/java/com/android/server/am/UidObserverController.java"
},
"signature_version": "v1",
"id": "PUB-A-217934898-3bfcdd94",
"digest": {
"line_hashes": [
"218195099612587860206778912521731840736",
"20162055954559077860558760750139367561",
"139999638033380434954825316892884285259",
"216354509924778931630156105869773640454",
"188057200929276126686438257082602417756",
"321393233266276687217562392591366404051",
"186815861141387116029192005517273276588",
"140367999442785958039884040760867188957",
"214307795386168060417475897042195893164",
"9727032979898489430466161756920953861",
"149420561328240853457828276720412379051",
"138347516599277429226038022589125464528",
"84295456992686722468325669794364293126",
"332353572059498385559264121966599526378",
"204422849413425303063667162458441258548",
"80236737609126080431640005761816912945",
"156054127425289306413836453601785313787",
"12820347170005610795250911082128952589",
"211826423168340231249265526435304464479",
"137862014375774351735724436543383623840",
"106537491174551030328664199087201662096",
"163819892734911345980917267028626134353",
"335116121064151807854652592233458041651",
"114166056297913233540503192062374974717",
"202658610850628309995679703936802448122"
],
"threshold": 0.9
},
"deprecated": false,
"source": "https://android.googlesource.com/platform/frameworks/base/+/4a06c40b87e953a39e3fe921d3b2750ba4530a42"
},
{
"id": "PUB-A-217934898-62d99395",
"signature_type": "Function",
"digest": {
"function_hash": "151170913359512206799255390344956007518",
"length": 266.0
},
"signature_version": "v1",
"match_only_versions": [
"13"
],
"target": {
"function": "UidObserverRegistration",
"file": "services/core/java/com/android/server/am/UidObserverController.java"
},
"deprecated": false,
"source": "https://android.googlesource.com/platform/frameworks/base/+/4a06c40b87e953a39e3fe921d3b2750ba4530a42"
},
{
"id": "PUB-A-217934898-7a2d52fb",
"signature_type": "Function",
"digest": {
"function_hash": "232127009838911550429043619175108552008",
"length": 223.0
},
"signature_version": "v1",
"match_only_versions": [
"13"
],
"target": {
"function": "register",
"file": "services/core/java/com/android/server/am/UidObserverController.java"
},
"deprecated": false,
"source": "https://android.googlesource.com/platform/frameworks/base/+/4a06c40b87e953a39e3fe921d3b2750ba4530a42"
},
{
"signature_type": "Function",
"target": {
"function": "dispatchUidsChangedForObserver",
"file": "services/core/java/com/android/server/am/UidObserverController.java"
},
"signature_version": "v1",
"id": "PUB-A-217934898-e97fdef9",
"digest": {
"function_hash": "92823872027676986560484783018157384043",
"length": 3398.0
},
"deprecated": false,
"source": "https://android.googlesource.com/platform/frameworks/base/+/4a06c40b87e953a39e3fe921d3b2750ba4530a42"
}
]
}