Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Escrever um visualizador envolve possíveis ameaças à segurança. Nenhuma exploração conhecida existe atualmente para essas ameaças potenciais, mas os desenvolvedores devem estar cientes delas e tomar as precauções de segurança apropriadas, conforme descrito aqui, para se proteger contra futuras explorações.
Os visualizadores de depurador exigem privilégios maiores do que os permitidos por um aplicativo de confiança parcial. Os visualizadores não serão carregados quando ocorrer uma interrupção no código com confiança limitada. Para depurar usando um visualizador, você deve executar o código com confiança total.
Observação
O CAS (Code Access Security) foi preterido em todas as versões do .NET Framework e do .NET. As versões recentes do .NET não respeitam as anotações do CAS e produzem erros se as APIs relacionadas ao CAS forem usadas. Os desenvolvedores devem procurar meios alternativos de realizar tarefas de segurança.
Componente de Programa em Depuração Potencialmente Malicioso
Os visualizadores consistem em pelo menos duas classes: uma no lado do depurador e outra no lado do depurador. Os visualizadores geralmente são implantados em assemblies separados colocados em diretórios especiais, mas também podem ser carregados fora do depurador. Quando isso ocorre, o depurador retira o código do programa em depuração e o executa dentro do depurador com total confiança.
A execução de código do lado do depurador com confiança total torna-se problemática quando o depurador não é totalmente confiável. Se um visualizador tentar carregar um assembly de confiança parcial do depurador para o depurador, o Visual Studio encerrará o visualizador.
No entanto, ainda existe uma vulnerabilidade menor. O lado do depurador pode ser associado a um lado do depurador que foi carregado de outra fonte (não do depurador). O lado do depurador pode então dizer ao lado do depurador confiável para executar ações em seu nome. Se a classe do lado do depurador confiável expõe um mecanismo "excluir este arquivo", por exemplo, o depurador de confiança parcial pode invocar esse mecanismo quando o usuário invoca seu visualizador.
Para atenuar essa vulnerabilidade, esteja atento às interfaces expostas pelo visualizador.