hidepid オプションを使用して proc をマウントしても、期待どおりに proc は非表示になりません。なぜですか?

hidepid オプションを使用して proc をマウントしても、期待どおりに proc は非表示になりません。なぜですか?

デフォルトでは、/ procに通常のproc fsがマウントされています。

(私は次のすべてのコマンドのルートです)

同じファイルを別の場所に再インストールし、hidepidオプションを次のように設定しました。

mount -t proc -o hidepid=2 proc /some/dir/proc

インストールが正常に機能し、ls /procAndで同じ出力を見ることができますls /some/dir/proc

次に、次を実行します。

setpriv —-reuid 1002 ls /proc

そして出力はまだ同じです。 uid 1002 は root 以外のユーザーであり、非表示のプロセスはありません。

setprivが動作していることを確認し、そうであれば、期待どおりにsetpriv -—reuid 1002 ls /root/権限が拒否されました。

hidepid オプションが効果がないようです。私は何を見逃していますか?

ベストアンサー1

また、次のオプションがhidepidありますgid

gid=gid(Linux 3.3以降)
プロセス情報を知ることができるメンバーを持つグループのIDを指定します。それ以外の場合は禁止されます。 hidepid

これを明示的に言及していませんが、私のシステムでは提供されていない場合、デフォルトは0に設定されているようです。 (ソースは確認できませんでした。)したがって、以下を試してみてください。

setpriv --regid 1002 --clear-groups --reuid 1002 ls /proc/ 

procまた、インストール中に設定されたインストールオプションが無視されるバグがあります。-oremountその後の作業に設定します。この問題はLinux 5.7で修正されました。以下を参照してください。procfsマウントオプションが再マウントにのみ適用されるのはなぜですか?

おすすめ記事