Linux で任意の Python スクリプトを安全に実行する環境を作成することはできますか? これらのスクリプトは、信頼できない人から受け取ったものであり、大きすぎて手動で確認できない場合があります。
非常に強引な解決策は、仮想マシンを作成し、信頼できないスクリプトを起動するたびにその初期状態を復元することです。(高過ぎ。)
Python がファイル システムにアクセスしたり、他のプログラムと対話したりすることを制限することは可能でしょうか。
Linux で任意の Python スクリプトを安全に実行する環境を作成することはできますか? これらのスクリプトは、信頼できない人から受け取ったものであり、大きすぎて手動で確認できない場合があります。
非常に強引な解決策は、仮想マシンを作成し、信頼できないスクリプトを起動するたびにその初期状態を復元することです。(高過ぎ。)
Python がファイル システムにアクセスしたり、他のプログラムと対話したりすることを制限することは可能でしょうか。
あなたが試すことができる4つのことがあります:
Systraceは最近侵害されたため、注意してください。
chroot jail の使用を検討してください。これは非常に安全で、十分にサポートされ、テストされているだけでなく、Python から実行する外部アプリケーションにも適用されます。
jythonを実行して、JVMのサンドボックスメカニズムを使用できます。JVMのサンドボックス化は非常に強力で、非常によく理解されており、多かれ少なかれ十分に文書化されています。許可したいものと許可したくないものを正確に定義するには時間がかかりますが、そこから非常に強力なセキュリティを取得できるはずです...
一方、jythonはcPythonと100%互換性がありません...
そのディレクトリ内のスクリプト以外には何もアクセスできないユーザーとして実行することはできませんか?
"sandboxing python" を検索してみてください。