diff options
author | sqian <shuoq@google.com> | 2018-05-03 20:23:58 -0700 |
---|---|---|
committer | android-build-team Robot <android-build-team-robot@google.com> | 2018-07-20 00:29:01 +0000 |
commit | 70aa4a8f6e65185a399ac84fedf1b2796e371a7d (patch) | |
tree | 172c361e0535fc0dbcb15aa5ecff0b2b93c2107f | |
parent | 98e97ea04ae1866e1e7886e4a285c822b93ae825 (diff) | |
download | android_packages_services_Telephony-70aa4a8f6e65185a399ac84fedf1b2796e371a7d.tar.gz android_packages_services_Telephony-70aa4a8f6e65185a399ac84fedf1b2796e371a7d.tar.bz2 android_packages_services_Telephony-70aa4a8f6e65185a399ac84fedf1b2796e371a7d.zip |
DO NOT MERGE Add Safety Net Log for getForbiddenPlmns security hole
Bug: 73884967
Test: TH
Change-Id: Ia6363b2938c064560e1d0ad874e041067ece3310
(cherry picked from commit 4ba8b46b05dfab61938c5c4fce9733029f1ef7a7)
-rw-r--r-- | src/com/android/phone/PhoneInterfaceManager.java | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/com/android/phone/PhoneInterfaceManager.java b/src/com/android/phone/PhoneInterfaceManager.java index 20ede2ff2..b11418f1d 100644 --- a/src/com/android/phone/PhoneInterfaceManager.java +++ b/src/com/android/phone/PhoneInterfaceManager.java @@ -2469,6 +2469,20 @@ public class PhoneInterfaceManager extends ITelephony.Stub { * on a particular subscription */ public String[] getForbiddenPlmns(int subId, int appType, String callingPackage) { + + if ((mApp.checkCallingOrSelfPermission( + android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE) + == PackageManager.PERMISSION_GRANTED + || mApp.checkCallingOrSelfPermission( + android.Manifest.permission.READ_PHONE_STATE) + == PackageManager.PERMISSION_GRANTED) + && mAppOps.noteOp( + AppOpsManager.OP_READ_PHONE_STATE, Binder.getCallingUid(), callingPackage) + != AppOpsManager.MODE_ALLOWED) { + EventLog.writeEvent(0x534e4554, "73884967", Binder.getCallingUid(), + "getForbiddenPlmns calllingPackage: " + callingPackage); + } + if (!canReadPhoneState(callingPackage, "getForbiddenPlmns")) { return null; } |