1

ジェイルブレイクされたiPhoneなどのgccのguiラッパーを書いていますが、ほぼ完成しています。ただし、実行するとこの出力が得られますld: can't open output file for writing : a.out, errno=1 collect2:ld return 1 exit status。これは、アプリが実行される特権に関係していると思います。cydia 開発者 FAQ で setuid トリックを試しました。誰でも助けてもらえますか?

編集
これは私が現在使用しているラッパーです。 また、chmod 4777 を使用し、所有者: グループをルート: ホイールに変更します。 私はすべて正しくやっていますか?
#!/usr/bin/bash
dir=$(dirname "$0")
exec "${dir}"/GUI\ GCC_ "$0"


4

2 に答える 2

2

次のようにするとうまくいきました:

setuid(0); system("ルート化を行う");

// 自分が誰であるかを確認するには system("whoami");

「ps -U root」のパッケージをインストールして、root であるかどうかを確認するか、

于 2011-01-24T02:24:48.183 に答える
1

setuidバイナリがsetuidではないラッパーの後ろに隠れていることを確認してください。それがどのように行われるかの例については、CydiaまたはiFileを参照してください。

于 2010-10-03T17:41:18.860 に答える