Ho un vettore di plug-in stabilito usando System.AddIn che accetta il corpo di un metodo predefinito, munge il corpo del metodo nel codice boilerplate, genera l'assembly ed esegue il metodo.Quanto è sicuro un appDomain in modalità sandbox con SecurityPermissionFlag.Execution?
Il gruppo fa riferimento a System
e System.Core
ed è tenuta stagna con
var pset = new PermissionSet(PermissionState.None);
pset.AddPermission(new SecurityPermission(SecurityPermissionFlag.Execution));
L'unica eccezione che posso trovare riferimento a che potrebbero possibile abbattere l'host è un overflow dello stack, che potrebbe essere invocato un qualsiasi numero di mezzi creativi , per esempio chiudere il corpo e dichiarare un metodo ricorsivo ecc ...
E poi ci sono i possibili vettori di attacco esposti dagli assiemi di riferimento, System
e System.Core
.
La mia domanda è: quanto è sicuro questo e quali sono alcuni esempi di codice dannoso che potrebbe potenzialmente abbattere l'host e possibili modi per prevenire tali attacchi?
AGGIORNAMENTO: anche per coloro che hanno familiarità con AddIn Framework gestito, applicare la stessa domanda a AddInSecurityLevel.Internet
.