ルートが所有するディレクトリの所有権の変更

ルートが所有するディレクトリの所有権の変更

権限のないユーザーとして、EXT4私は必要なすべての権限()を持つファイルシステムのディレクトリを持っています。これにより、ルートが所有していても、その中にあるファイルrwx(およびvim file)の内容と所有権を変更できます。 、および(および):w!を変更する権限がない場合でも同様です。root:root0644

ルートが所有するディレクトリが権限のないユーザーが所有するディレクトリ内にある場合、これは可能ですか?

ベストアンサー1

ディレクトリ所有者は、必要に応じてディレクトリの内容を変更できます。ディレクトリ所有者が書き込めないディレクトリにファイルが存在していても、ディレクトリ所有者はそのファイルを削除して同じ名前の新しいファイルを作成できます。

より一般的には、ディレクトリへの書き込みアクセス権がある場合は、そのディレクトリからファイルを削除して作成できます。したがって、ファイルへの書き込み権限がない場合は、ファイルに書き込むのではなく、既存のファイルを削除して同じ名前の新しいファイルを作成して、そのディレクトリのファイルを変更できます。

ディレクトリを所有していparentて、そのディレクトリにルートが所有するサブディレクトリが含まれており、書き込みchild権限がない場合は、childその中のファイルを変更することはできませんchild。ただし、名前を変更してchildという新しいサブディレクトリを作成できますchild。このサブディレクトリはあなたが所有しているので、必要なものは何でも含めることができます。

これは、秘密鍵ファイルに対するOpenSSHの完全性チェックなど、ファイル制御を検証するセキュリティチェックがディレクトリチェーン全体をルートまで確認する理由です。同様に、ユーザーにファイルを実行するためのsudo権限を付与する場合、ファイルのフルパスはrootによって制御されなければなりません。たとえば、ユーザーにホームディレクトリからプログラムを実行するためのsudo権限を付与しないでください。 (一方、setuidのルートプログラムはどこでも可能です。なぜなら、setuidはファイルパスではなくファイル自体に追加されるからです。)あります。コンテンツファイルですが、パス内のその場所でディレクトリ名を変更するだけです。

おすすめ記事