2016-07-29 102 views
0

我想这里提到给root访问权限,以我的应用程序在越狱iPhone 9.3.3在iOS 9.3.3运行应用越狱具有root访问权限

我都遵循相同的步骤 - Gaining root permissions on iOS for NSFileManager (Jailbreak)

然而该应用程序无法获得root权限。它看起来像,setuid(0)失败。我在主要功能中使用setuid(0)setgid(0)

int main(int argc, char *argv[]) { 
    if(!(setuid(0) == 0 && setgid(0) == 0)) { 
    exit(EXIT_FAILURE); 
    } 

    return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 
} 

该应用程序在上述条件下退出。

任何帮助将不胜感激。

+0

在你的设备上,你可以运行'stat -c'%U%a'path/to/wrapper-script/path/to/executable'并在这里输出结果? – Siguza

+0

stat:找不到命令。 我是否必须在特定目录中查找此命令?我从根本上打它。 – Michael

+0

我的不好,你需要Cydia的“Core Utilities”包。我认为这是默认安装的。 – Siguza

回答

0

的setgid(0)是没有必要的

在iOS中无法运行的应用程序作为root直接你必须通过一个shell脚本来运行它们。

藤说:

  1. 重命名的应用程序二进制文件,例如,如果二元命名应用其重命名为_App
  2. 创建一个名为应用“原来的名称的文本文件二进制名称“
  3. 在新建的文本文件中粘贴

#!/bin/bash 
dir=$(dirname "$0") 
exec "${dir}"/_App "[email protected]"