8
シェルスクリプトでsetuidを許可する
setuid許可ビットではなく、エグゼキュータの所有者の実効ユーザーIDを使用してプログラムを実行するためのLinuxに指示します: > cat setuid-test.c #include <stdio.h> #include <unistd.h> int main(int argc, char** argv) { printf("%d", geteuid()); return 0; } > gcc -o setuid-test setuid-test.c > ./setuid-test 1000 > sudo chown nobody ./setuid-test; sudo chmod +s ./setuid-test > ./setuid-test 65534 ただし、これは実行可能ファイルにのみ適用されます。シェルスクリプトはsetuidビットを無視します。 > cat setuid-test2 #!/bin/bash id -u > ./setuid-test2 1000 > …