7

mach_inject を使用できるように、Authorization API を使用してユーザー権限を root に昇格するにはどうすればよいですか?

4

3 に答える 3

6

mach_inject を使用するために root になる必要はありません。代わりに、コードに署名する必要があります。テストのみを目的として (および 10.4/10.5 では)、アプリケーションを setgid procmod にすることもできます。

詳細については、 TN2206を参照してください。

于 2009-08-11T20:28:21.687 に答える
4

古い質問ですが、間違った答え:

pid/task を所有していない限り、実際には root になるか、procmod のメンバーになる必要があります。OS X では、これはコード署名とはほとんど関係ありません。上記の特権を必要とする Mach トラップ task_for_pid() による Mach_inject/Mach_star の使用。iOS では、対応する権限 (task_for_pid-allow) も必要です。これは、コード署名が便利な場所です (自己署名に ldid を使用)。

于 2012-08-26T17:12:08.013 に答える