Sicherheit während Kernel-Mode Debuggen
Bei der Sicherheit beim Debuggen im Kernelmodus geht es nie um den Schutz des Zielcomputers . Das Ziel ist vollständig anfällig für den Debugger . Dies ist die Natur des Debuggens.
Wenn eine Debugverbindung während des Startvorgangs aktiviert wurde, bleibt sie über den Debugport bis zum nächsten Start anfällig.
Sie sollten sich jedoch Sorgen um die Sicherheit auf dem Hostcomputer machen. Im Idealfall wird der Debugger als Anwendung auf Dem Hostcomputer ausgeführt, interagiert aber nicht mit anderen Anwendungen auf diesem Computer. Es gibt drei Möglichkeiten, wie Sicherheitsprobleme auftreten können:
Wenn Sie beschädigte oder destruktive Erweiterungs-DLLs verwenden, können diese dazu führen, dass Ihr Debugger unerwartete Aktionen ausführt, die sich möglicherweise auf den Hostcomputer auswirken.
Es ist möglich, dass beschädigte oder destruktive Symboldateien auch dazu führen, dass Ihr Debugger unerwartete Aktionen ausführt, die sich möglicherweise auf den Hostcomputer auswirken.
Wenn Sie eine Remotedebuggingsitzung ausführen, versucht ein unerwarteter Client möglicherweise, eine Verbindung mit Ihrem Server zu erstellen. Oder vielleicht versucht der zu erwartende Client, Aktionen auszuführen, die Sie nicht erwarten.
Wenn Sie verhindern möchten, dass ein Remotebenutzer Aktionen auf Ihrem Hostcomputer ausführt, verwenden Sie den sicheren Modus.
Vorschläge zum Schutz vor unerwarteten Remoteverbindungen finden Sie unter Sicherheit beim Remotedebuggen.
Wenn Sie kein Remotedebuggen durchführen, sollten Sie sich dennoch vor fehlerhaften Symboldateien und Erweiterungs-DLLs hüten. Laden Sie keine Symbole oder Erweiterungen, denen Sie nicht vertrauen!
Lokales Kerneldebuggen
Nur Benutzer mit Debugberechtigungen können eine lokale Kerneldebugsitzung starten. Wenn Sie der Administrator eines Computers mit mehreren Benutzerkonten sind, sollten Sie sich darüber im Klaren sein, dass jeder Benutzer mit diesen Berechtigungen eine lokale Kerneldebuggingsitzung starten kann, die ihm effektiv die Kontrolle über alle Prozesse auf dem Computer gibt - und ihm daher auch Zugriff auf alle Peripheriegeräte gewährt.