カーネルにより特権エスカレーションが防止されます。プロセスが必要な特権以外の特権を取得することを防ぐために、無防備なシステム変更に特権の完全セットがあるかどうかが確認されます。たとえば、root (UID=0) が所有するファイルまたはプロセスは、特権の完全セットを備えたプロセスによってのみ変更できます。root アカウントは、特権がなくても root が所有するファイルを変更することができます。しかし、root ユーザー以外は、root が所有するファイルを変更するにはすべての特権が必要です。
同様に、デバイスへのアクセスを提供する操作には、有効なセットのすべての特権が必要です。
特に file_chown_self および proc_owner は、特権エスカレーションが生じやすい特権です。
file_chown_self は、プロセスがそのファイルを渡せるようにする特権です。proc_owner は、プロセス自身が所有しないプロセスを調査できるようにする特権です。
file_chown_self 特権は、rstchown システム変数によって制限されます。rstchown 変数が 0 に設定されると、file_chown_self 特権は、システムイメージの全ユーザーの初期継承可能セットから削除されます。rstchown システム変数の詳細については、chown(1) のマニュアルページを参照してください。
file_chown_self 特権は、特定のコマンド、権利プロファイルに配置されているコマンド、および役割または信頼できるユーザーに割り当てられているプロファイルにもっとも安全に割り当てることができます。
proc_owner 特権は、プロセス UID を 0 にするには十分ではありません。任意の UID のプロセスを UID=0 にするには、すべての特権が必要です。proc_owner 特権はシステム上のすべてのファイルに無制限の読み取りアクセス権を与えるので、この特権の特定コマンドへの割り当て、プロファイルに配置されているコマンドへの割り当て、および役割に割り当てられているプロファイルへの割り当てはもっとも安全に行います。
![]() | 注意 - file_chown_self 特権または proc_owner 特権がユーザーの初期継承可能セットに含まれるように、ユーザーのアカウントを構成できます。ただし、このような強力な特権をユーザーや役割の継承可能セットに配置するには、セキュリティー上の相応の理由がなければなりません。 |
デバイスでの特権エスカレーションを防止する方法については、特権とデバイスを参照してください。一般的な説明については、privileges(5) のマニュアルページを参照してださい。