0

私は次のプログラムを使用しており、( chown root XXX; chmod 4755 XXXroot として実行して) suid しましたが、出力はまだruid 1000, euid 1000, suid 1000です。ここで uid がゼロになるべきではありませんか?

#define _GNU_SOURCE
#include <stdio.h>
#include <unistd.h>

int main()
{
        uid_t ruid, euid, suid;
        if (! getresuid (&ruid, &euid, &suid))
                printf ("ruid %d, euid %d, suid %d\n", ruid, euid, suid);
        else
                perror ("getresuid");

        return 0;
}

ls -l の出力:

-rwsr-xr-x 1 root root 9.7K May 1 11:36 test*

4

1 に答える 1

4

コマンド出力を確認してmountください。ファイル システムはnosuidオプションでマウントできます。

マウントのマニュアルページから

nosuid: set-user-identifier または set-group-identifier ビットを有効にしないでください。

于 2013-05-01T04:00:46.267 に答える