gpt4 book ai didi

ios - 越狱后,iOS 应用程序会以 root 权限运行吗?

转载 作者:可可西里 更新时间:2023-11-01 04:11:21 27 4
gpt4 key购买 nike

一旦 iOS 设备越狱,我们就可以构建越狱应用程序(使用 theos)并将其安装在 /Applications 目录中,预加载的应用程序以 root 权限运行。如果一个应用程序是用 Xcode 构建的,一旦安装,它就会进入 /private/var/mobile/Applications/ 文件夹,该文件夹应该强制执行 Apple 沙箱(在越狱之前)。

所以,我的问题是:

  1. 对于越狱设备,/private/var/mobile/Applications/ 中的应用程序是以 root 权限还是以 mobile 用户权限执行的?

  2. 对于 Android,一旦获得 root 权限,应用程序将必须通过执行 su 命令获得 root 权限。 iOS 也是这样吗?

我想了解这两个开发选项 (Theos/Xcode) 之间的区别,以及它如何影响我的应用可以执行的操作。

最佳答案

不反对任何事情H2CO3 said ,但要添加一些进一步的说明......

  • 使用 Xcode 安装在 /private/var/mobile/Applications/(†) 中的应用程序将以用户 mobile 权限运行,即使在越狱手机上也是如此。

  • 即使在越狱手机上,安装到 /private/var/mobile/Applications/(†) 的应用程序也将像应用程序一样几乎 (‡)在 jailed 电话上。因此,不会读取其他(正常)应用程序的数据,即使这些文件属于用户 mobile

  • 有关 Cydia 等应用程序以 root 身份运行的过程的详细描述,see this answer .或者,直接通过 ssh 进入您的手机,然后亲自查看 /Applications/Cydia.app/

  • 如果您只是将应用程序复制/安装到 /Applications/(不执行 H2CO3 suggested 操作),它不会被沙盒化,但仍会以 运行移动 (UID=501) 权限:

iPhone5:~ root# cd /Applications

iPhone5:/Applications root# ls -altr ./HelloJB.app/
total 220
-rw-r--r-- 1 root wheel 711 Apr 3 20:36 entitlements.xml
-rw-r--r-- 1 root wheel 297 Apr 3 20:36 entitlements-daemon.xml
-rw-r--r-- 1 root wheel 7972 Apr 3 20:36 embedded.mobileprovision
-rw-r--r-- 1 root wheel 58755 Apr 3 20:36 date.zip
-rw-r--r-- 1 root wheel 485 Apr 3 20:36 ResourceRules.plist
-rw-r--r-- 1 root wheel 8 Apr 3 20:36 PkgInfo
-rw-r--r-- 1 root wheel 1226 Apr 3 20:36 Info.plist
-rw-r--r-- 1 root wheel 10960 Apr 3 20:36 Icon\@2x.png
-rw-r--r-- 1 root wheel 8328 Apr 3 20:36 Icon.png
-rw-r--r-- 1 root wheel 451 Apr 3 20:36 HelloJB.plist
-rwxr-xr-x 1 root wheel 61088 Apr 3 20:36 HelloJB*
-rwxr-xr-x 1 root wheel 42688 Apr 3 20:36 HelloDaemon*
drwxr-xr-x 2 root wheel 136 Apr 3 20:36 en.lproj/
drwxr-xr-x 2 root wheel 102 Apr 3 20:36 _CodeSignature/
drwxr-xr-x 4 root wheel 544 Apr 3 20:36 ./
drwxrwxr-x 54 root admin 1904 Apr 5 02:14 ../

iPhone5:/Applications root# ps -Aef | grep HelloJB
501 9412 1 0 0:00.00 ?? 0:00.33 /Applications/HelloJB.app/HelloJB

iPhone5:/Applications root# grep mobile /etc/passwd
mobile:*:501:501:Mobile User:/var/mobile:/bin/sh

(‡) 这是一个good discussion, with input from Saurik, about how different jailbreaks may affect the sandbox .长话短说:视情况而定。


(†) 更新:在最近的 iOS 版本中,第 3 方应用程序的位置已移至 /var/mobile/Containers,后来移至 /var/containers/,但仍然存在相同的基本沙箱问题。

关于ios - 越狱后,iOS 应用程序会以 root 权限运行吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15968845/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com