標準のLinuxファイルシステムでグローバルに書き込むことができる共通ディレクトリは何ですか?基本的に?
/tmp
/etc
/var
/proc
/bin
/boot
/....
....
なぜ世界的に書くことができますか?これはセキュリティリスクをもたらしますか?
ベストアンサー1
ただFHS 必須要件一般的に誰でも書き込み可能なディレクトリ/tmp
はとです/var/tmp
。どちらの場合も、誰でも作成できる一時ファイルを保存するように設計されているためです。
/dev/shm
と見るのも一般的だ。一時ファイルシステム(RAM対応ファイルシステム)プロセス間で共有される中規模のデータにすばやくアクセスしたり、単に再起動時に削除が保証されるファイルを生成するためのものです。
/var/mail
時には/var/spool/mail
他のスプーラディレクトリがあるかもしれません。これは、メッセージが処理される前にメッセージを一時的に保持するために使用されます。使用されるツールによっては、常にグローバルに書き込めるわけではありません。存在する場合、これはユーザーツールがデーモンが処理するファイルを生成できるためです。
これらすべてのディレクトリには通常粘り強いビット(t
)設定は、そのファイルまたはディレクトリの所有者だけがその中のファイルを移動または削除できることを意味します。
すべてのユーザーとして実行されるすべてのプログラムはこれらのディレクトリにファイルを生成できます。特定のデータのセキュリティに関する限り、正しい作業を行うことは作成プログラムによって異なります。誰かがファイルシステムをいっぱいにする可能性があることに加えて、特に広く普及しているセキュリティ上の問題はありませんが、プログラムが間違っている可能性があります。
があったいくつかのタスクサービス別/tmp
カタログの場合。これは、発生する可能性のあるいくつかの潜在的なエラーを防ぐため、エラーがないことは、プログラムがディレクトリを使用する方法にはあまり重要ではありません。
以下では、システムでグローバルに書き込み可能なディレクトリを見つけることができます。
find / -maxdepth 3 -type d -perm -777