“Data Execution Prevention” mata (VS2008) o ASP.Net Development Server local (também conhecido como Cassini) no Vista 64

StackOverflow https://stackoverflow.com/questions/19349

  •  09-06-2019
  •  | 
  •  

Pergunta

Ocasionalmente, descubro que, ao depurar um aplicativo ASP.Net (escrito no Visual Studio 2008, rodando no Vista de 64 bits), o servidor de desenvolvimento ASP.Net local (ou seja,'Cassini') para de responder.

Muitas vezes aparece uma mensagem dizendo que "Prevenção de Execução de Dados (DEP)" eliminou WebDev.WebServer.exe

Os logs de eventos simplesmente me informam que "WebDev.WebServer.exe parou de funcionar"

Ouvi dizer que esse 'problema' se apresenta com mais frequência no Vista de 64 bits porque a DEP está ativada por padrão.Conseqüentemente, desligar a DEP pode “resolver” o problema.

Mas estou me perguntando:

Existe um bug/situação conhecido com Cassini que faz com que o DEP interrompa o processo?

Alternativamente, qual é o perigo prático de desabilitar a Prevenção de Execução de Dados?

Foi útil?

Solução

A única maneira de saber com certeza seria vasculhar a fonte Cassini e ver se há alguma área onde ele gera código no heap e depois executá-lo sem limpar o sinalizador NX.

Porém, em vez de fazer isso, por que não usar o IIS?

EDITAR:

O perigo de desabilitar a DEP é abrir brechas de segurança.A DEP funciona impedindo a execução de código gerado arbitrariamente no heap.Isso ajuda a evitar que programas de malware insiram códigos nos segmentos de dados de programas legítimos.

Outras dicas

Você está no Vista, melhorou (7), Cassini ficou uma porcaria.

Portanto, basta iniciar este aplicativo no iis com um cabeçalho de host e uma entrada de arquivo hosts.

Você pode conceder a exclusão de determinados programas do DEP, se necessário.

Como Jônatas

menciona que isso abre quaisquer vulnerabilidades que o aplicativo possa ter.

Usar o IIS no Visual Studio não é tão chato quanto costumava ser nos dias 1.1/VS02/03.Existem muitas boas razões para preferir o IIS ao servidor Cassini (artigos de Dominick Baier):

Cassini considerada prejudicial
Outra razão pela qual eu não recomendaria a Cassini

Dominick é 'o cara' quando se trata de IIS e segurança.

Ao usar o IIS para um aplicativo da web, sempre crio o aplicativo primeiro no IIS, aponto-o para minha pasta preferida e, em seguida, peço ao VS para criar o projeto.Isso significa que você não acaba sobrecarregando c:\inetpub\wwwroot com seus aplicativos da web.

Claro, agora temos o IISExpress que, se você estiver visando o IIS7.x, é a escolha óbvia para desenvolver aplicativos ASP.NET no Visual Studio.

Obrigado pelas respostas.Acho que desenvolvi tanta aversão ao IIS na era .net 1.x que me recusei a considerar reutilizá-lo - até agora.

aparte:ao escolher entre duas respostas igualmente aceitáveis ​​de ChanChan e Jonathan, marquei arbitrariamente a de Jonathan como 'aceita' porque a) ele entrou primeiro e b) sua reputação é atualmente mais baixa.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top