我正在尝试在Android 7.1上的应用程序中访问/proc/{PID}
(或运行ps)另一个进程。由于此补丁,我无法访问其他PID上的任何数据:
https://android-review.googlesource.com/c/platform/system/core/+/181345
我认为通过运行su,我可以访问/ proc,但不能。即使我将用户切换到该应用程序的用户,我也可以使用ADB Shell访问/ proc。
从adb shell运行groups
:
> generic:/ # groups
uid=0(root) gid=0(root) groups=0(root)input log adb sdcard_rw sdcard_r net_bt_admin net_bt inet net_bw_stats readproc
切换到应用程序的用户后,从adb运行groups
:
generic:/ # su u0_a56
generic:/ $ groups
uid=10056(u0_a56) gid=10056(u0_a56) groups=10056(u0_a56)input log adb sdcard_rw sdcard_r net_bt_admin net_bt inet net_bw_stats readproc
从应用程序内部运行groups
:
uid=10056(u0_a56) gid=10056(u0_a56) groups=10056(u0_a56)everybody all_a56
在运行su之后,从应用程序内部运行groups
:
uid=0(root) gid=0(root) groups=0(root)everybody all_a56
为什么su更改了gid而不是我所在的实际小组?