Firefly开源社区
标题:
想问下android setgid(0)失败的原因
[打印本页]
作者:
zxb1668956679
时间:
2015-5-8 15:18
标题:
想问下android setgid(0)失败的原因
最近在修改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的时候就会失败呢???
作者:
Morgan
时间:
2017-3-30 10:42
楼主的问题解决了么?
作者:
风之空响
时间:
2017-4-5 11:54
Morgan 发表于 2017-3-30 10:42
楼主的问题解决了么?
早就不能这样玩了,从4.4.2就不行了,你如果想要获取root权限的话,可以搜一下我的帖子
欢迎光临 Firefly开源社区 (https://dev.t-firefly.com/)
Powered by Discuz! X3.1