特定のグループのメンバーだけが読み取りおよび書き込みアクションを実行できるような制限を procfs に設定しようとしています。
カーネルドキュメントでは、でhidepid
とを設定することでそれが可能だと書かれています。これにより、悪意のあるユーザーによる procfs での読み取りおよび書き込みが制限されますが、悪意のあるユーザー ( で制限されている) が読み取りや書き込みなどの fs 操作ではなく syscall を使用して profs 内のコンテンツにアクセスできるかどうかは疑問です。gid
/etc/fstab
/etc/fstab
答え1
/proc
はカーネルとユーザー空間の間のインターフェースであり、そのすべてのコンテンツは他の方法では利用できません (pid ディレクトリの下のコンテンツ、そのプロセス外)。そのため、hidepid=2
プロセスのコマンドラインや環境などの情報を他のユーザーから隠すのに効果的です。
一部の情報は副作用を通じて判断できます。たとえば、特定の pid を持つプロセスが存在するかどうかは、シグナル 0 でそのプロセスを強制終了しようとすることで判断できます。プロセスが存在しない場合、呼び出しプロセスに適切な権限がない場合は、kill()
で失敗します。同様に、開いているポートは、それらに接続しようとすることで判断できます。ESRCH
EPERM