SecurityPermissionFlag.ExecutionでサンドボックスAppDomainにはどのように安全ですか?
-
25-09-2019 - |
質問
Iアセンブリを生成し、メソッドを実行し、定型的なコードにmungesメソッド本体を、プラグインSystem.AddInを使用して確立ベクター事前定義されたメソッドの本体を受け入れています。
アセンブリ参照のSystem
とSystem.Core
と
var pset = new PermissionSet(PermissionState.None);
pset.AddPermission(new SecurityPermission(SecurityPermissionFlag.Execution));
私はその可能性の可能な参照は、ホストを停止見つけることができる唯一の例外は、例えば、創造的な手段の任意の数を呼び出すことができ、スタックオーバーフロー、あります体を閉鎖し、再帰的な方法などを宣言...
そして参照されるアセンブリ、System
とSystem.Core
によって公開される可能攻撃ベクトルがあります。
私の質問は:このどのように安全であり、潜在的な攻撃を防ぐために、ホストとの可能な方法をダウンさせる可能性があり、悪意のあるコードのいくつかの例は、
何ですか? UPDATE:。また、マネージドアドインフレームワークに精通している人のために、AddInSecurityLevel.Internet
に同じ質問を適用
解決
これは通常、アドインのホストを爆撃するために難しいことではありません。それが関係しているすべてのスレッドを開始し、それが未処理の例外をスローしますです。ジェシーカプラン<のhref = "http://blogs.msdn.com/clraddins/archive/2007/05/01/using-appdomain-isolation-to-detect-add-in-failures-jesse-kaplan.aspx" のrel =「nofollowをnoreferrer」>障害のこれらの種類のための可能な対策についてしてブログに書いています。サンドボックスは、このブログの記事にショーン・ファーカスで覆われていたのます。