首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >C权限提升(带密码)

C权限提升(带密码)
EN

Stack Overflow用户
提问于 2010-05-31 05:53:32
回答 3查看 681关注 0票数 2

我需要编写一个C程序,它允许我读/写root拥有的文件。但是,我只能在另一个用户下运行代码。我有root密码,但系统上没有"sudo“或"su”命令,因此我无法访问root帐户(实际上根本没有shell命令)。我对UNIX权限知之甚少,所以我不知道在不以某种方式利用系统或运行root拥有的程序(使用+s或其他什么)的情况下,是否真的可以做到这一点。有什么建议吗?

谢谢!

附言:不,这不是恶意的,这是在iPhone上。

EN

Stack Overflow用户

发布于 2010-05-31 05:59:06

您可以通过将suid位设置为应用程序来做到这一点,但是如果您希望从此c application运行某个外壳程序,则可以在本地用户上运行它,如果您通常这样做,则这是安全系统。

然而,您可以read/write/execute根拥有的文件,但如果您的用户不在文件组中,您的目标文件必须在最后3位设置为read/write/execute,或者当您的用户在文件所有者组中时,您必须检查/应用此选项到中间位置的3位。(3个第一位将权限设置给所有者,但这可能不是您的有用信息)。

如果您没有任何访问root帐户的权限。然后,如果组和其他用户权限不能像您必须拥有的那样访问功能,则您无法对此进行任何操作,除非尝试获取某个授权用户来访问此文件。在其他情况下,你可以做一些文件访问权限的修复,但不是从这个系统,你必须从这个设备获得硬盘驱动器,并连接到其他更改它或加载到此设备上的一些活动的系统来改变这一点。但是,您可以在私有系统上执行此操作,而不是在此系统上。

有关SUID bits的更多信息,请访问:

http://www.codecoffee.com/tipsforlinux/articles/028.html

http://www.everyjoe.com/newlinuxuser/explain-what-is-setuid-and-setgid/

票数 1
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2940500

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档