iPhone以root身份运行应用程序
我正在为越狱的 iphone 等编写 gcc 的 gui 包装器,现在已经快完成了。但是,当运行ld:无法打开输出文件进行写入时,我得到此输出:a.out,errno = 1collect2:ld return 1退出状态
。 我相信这与应用程序运行的特权有关。我已经在 cydia 开发者常见问题解答中尝试过 setuid 技巧。有人可以帮忙吗?
编辑
这是我当前正在使用的包装器:#!/usr/bin/bash
目录=$(目录名“$0”)
exec "${dir}"/GUI\ GCC_ "$0"
我还使用了 chmod 4777 并将所有者:组更改为 root:wheel。
我做的一切都对吗?
I am writing a gui wrapper for gcc for a jailbroken iphone, etc. and it is almost done. However, I get this output when it is run ld: can't open output file for writing : a.out, errno=1 collect2:ld return 1 exit status
.
I believe this has to do with the privelages the app runs with. I have tried the setuid trick in the cydia developer faq. Can anyone please help?
EDIT
this is the wrapper I am currently using:#!/usr/bin/bash
dir=$(dirname "$0")
exec "${dir}"/GUI\ GCC_ "$0"
also I used chmod 4777 and changes the owner:group to root:wheel.
Am i doing everything right?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
当我这样做时它起作用了:
setuid(0);
系统(“执行根操作”);
// 检查你是谁
系统(“whoami”);
您可以安装“ps -U root”软件包来查看您是否是 root,或者
It worked when I did it like this:
setuid(0);
system("Do root stuff");
// To check who you are
system("whoami");
You can install the Package for "ps -U root" to see if you are root, or
确保您的 setuid 二进制文件隐藏在非 setuid 的包装器后面。有关如何完成此操作的示例,请参阅 Cydia 或 iFile。
Be sure your have your setuid binary hidden behind a wrapper that is not setuid. See Cydia or iFile for an example of how it's done.