一部のユーザーがJavaアプリケーションを実行/テストするためにいくつかのchroot Jailを設定する予定です(各アプリケーションを信頼できないと仮定)。各刑務所に/ devと/ procをマウントする危険性はありますか?存在する場合、このリスクを排除するためにどのような措置を講じることができますか?
ベストアンサー1
情報を公開し/proc
て/dev
公開するほど、刑務所内のユーザーにはより多くの権利が与えられます。
UIDとGIDは刑務所の内部と外部で異なる場合があります。例えば、刑務所内では、ユーザ「x」は、刑務所の「ユーザ」およびシステムの「ディスク」を表すグループ123のメンバーであってもよい。バインドマウントを使用すると、/dev
RAWディスクデバイスへのアクセスを許可し、仮想ルートアクセスを許可し、それを回避できます。
私はmount / devをバインドしません。 Javaアプリケーションに必要な適切な所有権と権限を持ついくつかのデバイス(null
、、tty
...)のみを作成してください。zero
chroot Jailの代わりにLinuxコンテナを使用することを検討しましたか?このコンテナはさらに隔離されています(lxcsはchroot Jailより一歩進んでいます)。