Pergunta

Estou procurando detalhes sobre o verbo http de depuração.
É claro para mim que isso é usado para depuração remota - embora eu nem tenha certeza se é para IIS ou ASP.NET ...

Se eu quiser acessar essa interface diretamente - ou seja, não através do Visual Studio, mas enviando esses comandos manualmente - o que preciso saber? Quais são os comandos para isso?
Também estou interessado em casos de uso indevido, se você tiver alguma informação sobre isso ...

Foi útil?

Solução

Apenas para completar, consolidando aqui as respostas de O que é o não-padrão-http-verb-debug-use-up-in-asp-net-iis: (obrigado @mark, @jørn).

http://support.microsoft.com/kb/937523

Quando o cliente tenta anexar automaticamente o depurador em um aplicativo ASP.NET 2.0, o cliente envia uma solicitação HTTP que contém o verbo depuração. Esta solicitação HTTP é usada para verificar se o processo do aplicativo está em execução e para selecionar o processo correto a ser anexado.

o DEBUG O verbo é usado para iniciar/interromper as sessões de depuração remota. Mais especificamente, um DEBUG A solicitação pode conter um cabeçalho de comando com valor start-debug e stop-debug, mas a depuração real é feita por meio de um protocolo RPC.

Ele usa a autenticação do Windows e o DCOM para realmente fazer a depuração (obviamente, se você está permitindo o tráfego RPC, terá problemas maiores) ou de quaisquer explorações. O URLScan bloqueia -o por padrão, no entanto.

No entanto, cutucando um site do ASP.NET com o DEBUG solicitações podem ser usadas para revelar se o web.config tem <compilation debug="true">. O teste pode ser realizado com telnet, wfetch ou similar, enviando uma solicitação como esta:

DEBUG /foo.aspx HTTP/1.0
Accept: */ *
Host: www.example.com
Command: stop-debug

Dependendo se a depuração está ativada ou não, você obterá 200 OK ou 403 Forbidden.

É geralmente aceito que você nunca deve ter <compilation debug="true"/> Em um ambiente de produção, pois tem sérias implicações no desempenho do site. Não tenho certeza se ter depuração ativado abre algum novo vetores de ataque, a menos que o tráfego RPC também esteja ativado, nesse caso, você tem problemas mais sérios de qualquer maneira.

Outras dicas

Se você quiser fazer depuração remota, sugiro que a utilização de debug.writeline e a ferramenta da SysInternals DebugView. Isso permite que você 'ouça' para extratos de depuração na sua máquina de localização ou em uma máquina remota, desde que você tenha o acesso necessário.

Não posso responder diretamente à parte sobre depuração HTTP, pois não estou familiarizado com ela.

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