問題タブ [pysandbox]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
474 参照

python - Djangoリクエストハンドラーでpysandboxを使用するにはどうすればよいですか?

pysandboxを使用して、ユーザーがサーバー上でコードを実行できるようにしたいと考えています。このリクエストハンドラーでDjangoの内部サーバー(manage.py runserver)を使用しています:

ページにアクセスすると、ValueError が発生します。

この環境でpysandboxを使用することは可能ですか?

(私はpysandbox 1.1を使用していると思います-それはダウンロードのversion.pyが言うことです。ダウンロードフォルダーには1.0.1と書かれています。私はMac OS 10.7.2を実行しています。)

0 投票する
1 に答える
3971 参照

python - Python コードの投獄

信頼できない WSGI アプリを内部に含む python プロジェクトがたくさんあります。それらを同時に安全に実行する必要があります。そのため、ディレクトリ アクセスの制限、Python モジュールの使用、CPU とメモリの制限が必要です。

私は2つのアプローチを考えています:

  1. 定義されたファイルから imp-module WSGI-object を介してインポートし、pysandbox で実行します。今SandboxError: Read only object、私はやっている:

    /li>
  2. Python インタープリターを変更し、潜在的に危険なモジュールを除外し、並列プロセスで実行し、ZMQ/Unix ソケット経由で通信します。ここからどこから始めればよいかさえわかりません。

何をお勧めしますか?

0 投票する
1 に答える
510 参照

python - Pysandbox を使用してオンライン Python シェルを実装する

このようなオンライン Python シェルを構築したいと考えています。現在、次のことを行うモジュールをPythonで構築しようとしています

  1. 新しいセッションを作成します。
  2. 文字列保持として渡されたコードを実行し、現在のセッションの環境変数を維持します。

Pysandboxを使用してこれを達成しようとしています。ここまでが私の努力です

私は3つの大きな問題に遭遇しています。

  1. エラーをうまく表示するには?たとえば、上記のコードを実行すると、次の出力が得られます

    ファイル「execute.py」、60 行目、実行中 self.sandbox.execute(code) ファイル「/home/aaa/aaa/aaa/pysandbox-master/sandbox/sandbox_class.py」、90 行目、実行中 return self. execute_subprocess(self, code, globals, locals) File "/home/aaa/aaa/aaa/pysandbox-master/sandbox/subprocess_parent.py", line 119, in execute_subprocess raise output_data['error'] NameError: name 'a'定義されていません

ここで望ましくないのは、「execute.py」の呼び出しトレースバックです。関数が次のエラーを返すようにしたいだけです。

  1. 現在のセッションの環境を維持するにはどうすればよいですか? たとえば、上記のコード シーケンスでは

    a = 5
    b = 5
    プリント a+b

出力10になるはずです。何かアイデアはありますか?

0 投票する
1 に答える
254 参照

python - libsandboxをインストールするにはどうすればよいですか?インストール中に問題が発生しました

libsandboxとpysandboxのインストールに問題があります。バイナリパッケージとソースパッケージを試しましたが、そうではありません。それは大丈夫のようですが、私が実行すると:

表示されます

どうすればそれを機能させることができますか?Linux64ビットで実行しています。

0 投票する
0 に答える
175 参照

python - pysandbox を使用した doctest および unittest

生徒の提出物を保存環境でテストしたいと考えています。それがpysandboxを使用する理由です。学生の提出物をテストするために、 doctest とunittestを使用したいと考えています。

ここにstudentSubmission.pyがあります

これは、可能な家庭教師による通常のユニットテストです: tutor_tester.py

そしてサンドボックスのスクリプト: sandbox_test.py

Python 2.7.3バージョンと最新のPysandboxを使用して、ubuntu lts 12.04.3でこれを実行すると。sandbox_test.py を実行すると、次のエラーが発生しました。

doctest を試すと: doctest_sandbox.py

Doctest は非常にうまく機能しましたが、最終的にはサンドボックスでエラーが発生しました。

python doctest_sandbox.py -v

ご協力いただきありがとうございます;)

0 投票する
2 に答える
59 参照

python - pysandbox による機能制限 (RF)

私の問題はhereおよびhereとまったく同じです。

私はまたsimple2.py、このプログラムによって生成された実行可能ファイルをサンドボックス化するために使用していますtest1.c:

次のコマンドを使用して実行可能ファイルをビルドしています。

gcc -static test1.c

この後、私が行う場合:

ldd a.out

私は出力を得ています:

動的実行可能ファイルではありません

ただし、 sample2.py を実行したときの結果はまだです

結果: RF
CPU: 0ms
メモリ: 952kB

私は正確に何を間違っていますか?