Considerações de segurança do Visualizador
Escrever um visualizador envolve a possíveis ameaças de segurança.Atualmente não existe nenhuma exploração conhecida para essas ameaças potenciais, mas os desenvolvedores devem estar cientes delas e tomar precauções de segurança apropriadas, conforme descrito aqui, contra futuras explorações.
Visualizadores do depurador exigem maiores privilégios que o permitido por um aplicativo de confiança parcial.Visualizadores não serão carregado quando você está parado no código com confiança parcial.Para depurar usando um visualizador, você deve executar o código com confiança total.
Possível mal-intencionado componentes Debuggee
Visualizadores consistem em pelo menos duas classes: uma no lado do depurador e um no debuggee side.Visualizadores são geralmente implantados em conjuntos separados colocados em diretórios especiais, mas também pode ser carregados fora do elemento a ser depurado.Quando isso ocorre, o depurador assume o código o ser depurado e executa dentro do depurador com confiança total.
Executando o código do debuggee side com confiança total se torna problemático, quando o debuggee não é totalmente confiável.Se um visualizador tenta carregar um assembly de confiança parcial do elemento a ser depurado no depurador, Visual Studio encerrará o visualisador.
No entanto, uma menor vulnerabilidade ainda existe.O debuggee side pode associar um lado do depurador foi carregado de outra fonte (não o debuggee).O debuggee side, em seguida, pode informar que confiável lado do depurador para executar ações em seu nome.Se a classe debugger-side confiável expõe um mecanismo de "excluir este arquivo", por exemplo, o debuggee parcialmente confiável pode chamar esse mecanismo quando o usuário invoca seu visualizador.
Para atenuar essa vulnerabilidade, ficar atento as interfaces expostas por seu visualisador.