Frage

Ich suche Details zum Debugg HTTP -Verb.
Mir ist klar, dass dies für das Remote -Debuggen verwendet wird - obwohl ich mir nicht einmal sicher bin, ob es für IIS oder ASP.NET ist ...

Wenn ich direkt auf diese Schnittstelle zugreifen möchte - dh nicht über Visual Studio, sondern diese Befehle manuell sende - was muss ich wissen? Was sind die Befehle dafür?
Ich interessiere mich auch für Missbrauchsfälle, wenn Sie Informationen dazu haben ...

War es hilfreich?

Lösung

Nur zur Vollständigkeit, konsolidieren Sie hier die Antworten von What-is-the-Non-Standard-Http-Verb-Debug-für-in-asp-net-iis: (danke @mark, @jørn).

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

Wenn der Client versucht, den Debugger automatisch in einer ASP.NET 2.0 -Anwendung anzuhängen, sendet der Client eine HTTP -Anforderung, die das Debug -Verb enthält. Diese HTTP -Anforderung wird verwendet, um zu überprüfen, ob der Prozess der Anwendung ausgeführt wird, und um den richtigen Anhang auszuwählen.

Das DEBUG Verb wird verwendet, um Ferndebugging -Sitzungen zu starten/zu stoppen. Genauer gesagt a DEBUG Die Anforderung kann einen Befehlsheader mit Wert enthalten start-debug und stop-debug, Aber das tatsächliche Debuggen erfolgt über ein RPC -Protokoll.

Es verwendet Windows -Authentifizierung und DCOM, um tatsächlich das Debuggen zu führen (wenn Sie RPC -Verkehr zulassen, haben Sie jedoch größere Probleme) oder von Exploits. Urlscan blockiert es jedoch standardmäßig.

Stöbern Sie jedoch auf eine ASP.NET -Website mit der DEBUG Anfragen können verwendet werden, um anzuzeigen, ob das Web.config hat <compilation debug="true">. Der Test kann mit Telnet, WFetch oder ähnlichem durchgeführt werden, indem eine solche Anfrage gesendet wird:

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

Je nachdem, ob das Debugging aktiviert ist oder nicht, erhalten Sie entweder 200 OK oder 403 Forbidden.

Es wird allgemein angenommen, dass Sie niemals haben sollten <compilation debug="true"/> in einer Produktionsumgebung, da es ernsthafte Auswirkungen auf die Leistung der Website hat. Ich bin mir nicht sicher, ob das Debuggen -Aktivieren neue Angriffsvektoren eröffnet, es sei denn, der RPC -Verkehr ist auch aktiviert. In diesem Fall haben Sie ohnehin ernsthaftere Probleme.

Andere Tipps

Wenn Sie Remote -Debugging durchführen möchten, würde ich vorschlagen Debugview. Auf diese Weise können Sie Debug -Anweisungen entweder auf Ihrem Standortautomaten oder auf einem Remote -Computer "anhören", sofern Sie über den erforderlichen Zugriff verfügen.

Ich kann den Teil von Debugg HTTP nicht direkt beantworten, da ich damit nicht vertraut bin.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top