summaryrefslogtreecommitdiff
path: root/libs/androidfw/StringPool.cpp
diff options
context:
space:
mode:
author Lokesh Kumar Goel <lokeshgoel@google.com> 2024-02-27 23:05:05 +0000
committer Austin Borger <borgera@google.com> 2024-03-15 17:36:52 +0000
commit5d79e535b9a802680062545e15fc1faaf779c0bf (patch)
treea9e3772d0cacecbd78a0b9a3c2820772760bd987 /libs/androidfw/StringPool.cpp
parent8ab8c7517905915808491506f634b808618fb706 (diff)
Fix vulnerability in AttributionSource due to incorrect Binder call
AttributionSource uses Binder.getCallingUid to verify the UID of the caller from another process. However, getCallingUid does not always behave as expected. If the AttributionSource is unparceled outside a transaction thread, which is quite possible, getCallingUid will return the UID of the current process instead. If this is a system process, the UID check gets bypassed entirely, meaning any uid can be provided. This patch fixes the vulnerability by emptying out the state of the AttributionSource, so that the service checking its credentials will fail to give permission to the app. Bug: 267231571 Test: v2/android-virtual-infra/test_mapping/presubmit-avd Merged-In: Ic301a8518b8e57e1c9a2c9f2f845e51dca145257 Change-Id: I3f228064fbd62e1c907f1ebe870cb61102f788f0
Diffstat (limited to 'libs/androidfw/StringPool.cpp')
0 files changed, 0 insertions, 0 deletions