アカウントをサンドボックス化してシステムの修正を防ぎます。

アカウントをサンドボックス化してシステムの修正を防ぎます。

ユーザーアカウントが特定のフォルダを編集または表示できないようにサンドボックスを試しています。つまり、/home/user/testアカウントは、システムがすべてのコマンドを受け入れ、システムを何らかの方法で変更または編集できないようにするC ++プログラムをコンパイルして実行します。

これは、そのユーザーのシステム全体で書き込み(および一部の読み取り)権限を無効にして削除susudo、プログラムを自分のフォルダにロックする(閉じ込める)ことを意味します。何か抜けましたか?


今実装のため。

とを別々に入力すると、合計の位置を見つけることができると思いますsu。たとえば、バイナリが次の場所にあることがわかります。sudowhereis suwhereis sudosudo

/usr/bin/sudo /usr/lib/sudo /usr/bin/X11/sudo /usr/share/man/man8/sudo.8.gz

このユーザーの実行を無効にするためにこれらのバイナリの権限を変更すると、他の手段sudo(他のプログラミング言語)による操作は禁止されますか?

chroot特に、プログラムがサンドボックスフォルダの外の他のリソースにアクセスする必要がある場合は、特定のフォルダ内にプログラムを「閉じ込める」ことが効果的ではないようです。それでは、最良のアプローチは何ですか?

ベストアンサー1

バックドアとして使用できるものを忘れたものを見つけるよりも、chrootに含める必要があるものを見つける方が良いでしょう。 chrooted構造の下で必要な材料に接続するだけです。そして最初のコンパイルの実行で見つけたが見落としたすべて。

2000年以来、私はこれらの要件があるたびにこれらの編集に仮想マシンを使用してきました。そのようなアカウントが実行できる操作やシステムの他のアクティビティ(ソフトウェアのインストールなど)によってコンパイルプロセスが中断される可能性があることを心配しないでください。アップグレードする前にスナップショットなどを撮るのは簡単です。このため、速度低下の観点からは、仮想マシンのオーバーヘッドは支払う必要がある非常に少ないコストです。

おすすめ記事