私は現在LPIC-1 Linuxのために勉強中です認証。このため、私はMcGraw HilのRobb Tracy編集の「All-in-One」試験ガイドを使用しています(初版、McGraw HillのWebサイトで正誤表はありません)。
インターネット上でSUID特権を調べると、ほとんどの情報は次のようになります。
プログラムは、ファイル所有者の権限(実行するユーザーの権限ではなく)を使用して実行されます。
そして
実行可能ファイルにSUID権限が設定されている場合このファイルを実行するプロセスには、実行可能ファイルを実行しているユーザーではなく、ファイルの所有者(通常はroot)に基づいてアクセス権が与えられます。
...今、私の教科書では、情報は少し異なっていると言われています。見よ。
図1:チャプタの内容
図2:クイズの質問
図3:クイズの回答
私は、私がオンラインで読んだことに基づいて、正解は「A」となります。ファイルを作成したユーザーは所有者のままです。所有権と許可は2つの異なるものです。したがって、SUIDはバイナリを実行するユーザに一時的なパーミッションを付与しますが、バイナリの所有者を変更するべきではありません。
だから...私は混乱しているのか、これは初版のスクランブルです。
兄弟姉妹ですか?助けて!!
回答:
回答№1は1ファイルは所有者を変更しません。しかし、SUIDでファイルからユーザーが開始するプロセスには、ファイル所有者のアクセス許可があります。
この機能は、root以外のユーザーからrootプログラムとして実行するために使用されます。あなたは /bin
そして /usr/bin
ディレクトリ。
回答№2の場合は0
簡単に言えば、ファイル/プログラムを実行すると、所有者のUIDとGIDだけでなく、ファイル所有者のアクセス権も取得されます。ファイルの所有者は変更されません。