「s」権限ビットはファイルにどのような影響を与えますか?

「s」権限ビットはファイルにどのような影響を与えますか?

次の権限を持つ2つのファイルがあります。

-rwsr--r--  1 root root 213 Oct 22 12:15 f1
-r--rwxr--  1 Bob staff 113 Oct 22 12:18 f4

ユーザーがBob実行できますかf1?なぜ?s中央集権的権威の効果は何ですかf1

答え1

許可のs意味は設定値このファイルにビット(モード4000)を設定してください。次のファイルを実行してください。ファイルを呼び出したユーザーではなく、ファイル所有者の権限があります。。この場合、ユーザーBobがファイルを実行すると、ユーザーのroot(スーパーユーザー)でファイルが実行されるため、システムへのフルアクセス権があります。想像できるように、これは非常に危険です。たとえば、 setuid が設定されたシェルは、実際にはシステム全体のバックドアです。

ただし、ファイルにはx「その他」実行可能()権限がないため、Bobは実際にそのファイルを実行できません。他のすべてのユーザー(Bobを含む)がファイルを実行できるようにするには、rootユーザーが次のコマンドを入力する必要があります。

chmod a+rx f1

パート2関連質問:実行可能ビットなしでsetuidを有効にする目的は何ですか?

答え2

これS権限はどういう意味ですか?設定値オープンしました。ただし、Bobはf1ファイルを実行できますが、権限を変更した後にのみ可能です。その他グループには実行権限があるため、少なくとも4745:

sudo chmod 4745 f1
-rwsr--r-x 1 root root 213 Oct22 12:15 f1

関連情報