我一直试图交换ID'一个测试我的程序的过程,我可以通过简单地调用
轻松设置该过程的effectiveUID / UGIDif (setegid(gid)==0)
{
if (seteuid(uid)==0)
{
}
}
然后我想用给定的说7052切换我的realUID,将EffectiveUID切换到root(0)
if (setregid(egid,rgid)== 0) //egid(7052),rgid(0)
{
if (setreuid(euid,ruid) == 0)
{
}
}
setregid
没有工作,它会返回错误说"操作不被允许"我在FreeBSD上,它适用于debian和其他linux发行版,我可以在这里得到一些帮助吗?
答案 0 :(得分:0)
更改凭据 - 这包括GID - 需要特权。而且你使用seteuid()将这个特权放在上面几行。