0

実行中のフォルダー外の他のフォルダーやプログラムにアクセスできないように、フォルダー内の c++ プログラムをコンパイルして実行する方法を探しています。オンラインの C++ コンパイラを構築しようとしています。

プログラムから避けたいことは、フォルダー外のファイルにアクセスしたり、ファイルを変更/削除したり、新しいファイルを作成して新しい場所にコピーしたりすることです。すべては、悪意のあるコードが実行されてシステムがダウンするのを防ぐためです。

私はWindows環境を持っていますが、達成するためのより良い方法があれば、Linuxがうまくいくでしょう. Windows でのユーザー ロール、アクセス許可、およびサンドボックスなどの一部のサードパーティ アプリも探しましたが、いずれにも納得できませんでした。

助言がありますか?

4

2 に答える 2

2

chroot*nix システムではこれに使用されますが、十分に制限された特権を持つユーザーとしてコードを実行して、chroot を元に戻すことを停止するようにしてください: http://kerneltrap.org/Linux/Abusing_chroot

Windows の同等の場合: https://serverfault.com/questions/161507/is-there-a-windows-equivalent-to-chroot、ただし、その質問が大きな注目を集めたようには見えません。

于 2012-06-01T17:34:16.323 に答える
1

ユーザーに割り当てられたシステム全体のアクセス許可を適用して、特定のフォルダー内でのみ読み取り/書き込み/実行を許可することができます。そのため、彼/彼女は外の世界にアクセスしたり、ファイル/フォルダなどを作成したりすることはできません。

于 2012-06-01T17:00:29.290 に答える