Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3ef3f18b authored by Kunal Malhotra's avatar Kunal Malhotra
Browse files

Adding in verification of calling UID in onShellCommand

Test: manual testing on device
Change-Id: I68903ebd6d3d85f4bc820b745e3233a448b62273
Bug: b/261709193
(cherry picked from commit b651d295)
Merged-In: I68903ebd6d3d85f4bc820b745e3233a448b62273
parent cdb75845
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -10608,6 +10608,13 @@ public class ActivityManagerService extends IActivityManager.Stub
    public void onShellCommand(FileDescriptor in, FileDescriptor out,
            FileDescriptor err, String[] args, ShellCallback callback,
            ResultReceiver resultReceiver) {
        final int callingUid = Binder.getCallingUid();
        if (callingUid != ROOT_UID && callingUid != Process.SHELL_UID) {
            if (resultReceiver != null) {
                resultReceiver.send(-1, null);
            }
            throw new SecurityException("Shell commands are only callable by root or shell");
        }
        (new ActivityManagerShellCommand(this, false)).exec(
                this, in, out, err, args, callback, resultReceiver);
    }