![悪意のあるユーザー(Linux)から/ proc fsを制限する最善の方法は何ですか? [閉鎖]](https://linux33.com/image/169167/%E6%82%AA%E6%84%8F%E3%81%AE%E3%81%82%E3%82%8B%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC%EF%BC%88Linux%EF%BC%89%E3%81%8B%E3%82%89%2F%20proc%20fs%E3%82%92%E5%88%B6%E9%99%90%E3%81%99%E3%82%8B%E6%9C%80%E5%96%84%E3%81%AE%E6%96%B9%E6%B3%95%E3%81%AF%E4%BD%95%E3%81%A7%E3%81%99%E3%81%8B%EF%BC%9F%20%5B%E9%96%89%E9%8E%96%5D.png)
特定のメンバーグループのみが読み取りおよび書き込み操作を実行できるように、procfsに制限を設定しようとしています。
カーネルファイルhidepid
で設定してgid
これを行うことができるとしましょう/etc/fstab
。これは、悪意のあるユーザーがprocfsで読み書きすることを制限しますが、悪意のあるユーザー(制限付き)がfs/etc/fstab
操作(読み取りと書き込みなど)の代わりにsyscallを使用してprofsのコンテンツにアクセスできるかどうか疑われます。
答え1
/proc
はいカーネルとユーザー空間の間のインタフェースとそのすべての内容、およびほとんどは他の方法では使用できません(プロセス外のpidディレクトリにある項目の場合)。これにより、hidepid=2
コマンドライン、プロセス環境などの情報を他のユーザーに効果的に隠すことができます。
いくつかの情報は副作用によって決定することができます。たとえば、指定されたpidを持つプロセスの存在は、呼び出しプロセスが正しい権限を持っていない場合にプロセスが存在しない場合、シグナル0:kill()
失敗を使用してそのプロセスを終了しようとすることで確認できます。同様に、開いているポートは接続を試して確認できます。ESRCH
EPERM