0

我的本机进程在 Android 设备上以 root 身份运行。是否可以修改另一个进程的 UID 以使其成为根?
原因是允许访问非 root 进程无法访问的某些 Android“功能”。

4

3 回答 3

2

如果你有一个 root 手机,你可以使用 (通常) 显式运行进程/system/xbin/su。但是,您不能更改已经在运行的程序的 uid。(理论上,您可以戳内核内存并更改所有各种存储的 uid,但这是一个非常糟糕的主意,因为您无法锁定正在修改的内容,如果它们更改或移动,您可能会导致内核恐慌。)

于 2011-03-29T18:31:02.627 回答
1

不可以。如果另一个应用程序需要 root 访问权限,它需要自己获得权限。

于 2011-03-29T18:29:33.313 回答
1

您需要以exec bin(A)root 身份运行并执行以下操作:

  1. 附加到要更改 uid 的进程
  2. 获取进程状态并保存
  3. 调用setuid系统调用remote
  4. 使用保存的状态来分离进程。

以上都可以通过ptrace来完成。
更多信息可以在这里找到:
http ://www.linuxjournal.com/node/6210/print
http://www.phrack.org/issues.html?issue=59&id=12&mode=txt

于 2012-09-21T11:08:49.540 回答