6

重複の可能性:
Python、セーフ、サンドボックス

スクリプトをアップロードしてサーバー側で実行できるようにする企業 Web システムを Python で構築しています。私はすでに Python で開発を行っており、Python は非常にシンプルな言語であるため、スクリプトを記述するのに適した言語のように思えます。しかし、そこにはセキュリティ上の問題があるため、限られたサブセットを除くすべての関数呼び出しをブロックしたいと考えています。これを行うために使用できるメカニズム、または他の手法はありますか? おそらくLuaなど、何か他のものを使用する必要がありますか? 私はピラミッド/パイロンで開発しています。

4

1 に答える 1

0

これはひどい考えですが、オプションについて知らせるためだけに:

Pythonコードを含む文字列をサニタイズすることができます(サニタイズすることで、数百の悪意のある単体テストのように実行し、サニタイズが適切であることを徹底的にテストする必要があります)、必要な関数呼び出しのみに一致させてから呼び出すことができeval()ます文字列。

于 2012-07-06T02:43:51.340 に答える