Firefly开源社区

打印 上一主题 下一主题

想问下android setgid(0)失败的原因

17

积分

0

威望

0

贡献

游客

积分
17

想问下android setgid(0)失败的原因

发表于 2015-5-8 15:18:06      浏览:7826 | 回复:2        打印      只看该作者   [复制链接] 楼主
最近在修改su.c文件,我的目的是让所有三方应用在user版本上都可以使用root权限,我现在不想要apk来管理,也就是对申请root权限的应用没有限制,只要申请都可以获得,于是我去掉了su.c中的下面这段限制
    if (myuid != AID_ROOT && myuid != AID_SHELL) {
        fprintf(stderr,"su: uid %d not allowed to su\n", myuid);
        return 1;
    }
我把上面这段话去掉之后,发现在setgid(gid) || setuid(uid) 这地方报错,gid和uid的值都为0,也就是root的用户组,但是不知道为什么会报:Operation not permitted 这样的错误呢?我研究了下setgid函数,被运行的文件有setgid的权限,那么运行该文件时就拥有该文件所有者同样的权限,而我的su文件的权限是这样的:
-rwsr-sr-x root     root        83776 2008-08-01 20:00 su
setgid和setuid的权限都有啊,而且我通过shell指令运行su文件,也能成功获取到root权限,为什么我用第三方的应用去获取,在setgid的时候就会失败呢???
回复

使用道具 举报

115

积分

0

威望

0

贡献

技术小白

积分
115
发表于 2017-3-30 10:42:27        只看该作者  沙发
楼主的问题解决了么?
回复

使用道具 举报

742

积分

68

威望

68

贡献

技术大神

Rank: 3Rank: 3

积分
742
QQ
发表于 2017-4-5 11:54:45        只看该作者  板凳
Morgan 发表于 2017-3-30 10:42
楼主的问题解决了么?

早就不能这样玩了,从4.4.2就不行了,你如果想要获取root权限的话,可以搜一下我的帖子
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

友情链接 : 爱板网 电子发烧友论坛 云汉电子社区 粤ICP备14022046号-2
快速回复 返回顶部 返回列表