Debugging Tools for Windows

远程调试时的安全

有两种方式可以增加远程调试时的安全性:限制谁可以连接到会话中和限制已连接上来的人的权限。

控制对调试会话的访问

如果进行通过调试器的远程调试或使用进程服务器KD连接服务器,本地网络上的任何计算机都可以尝试附加到调试会话上。

如果使用TCP、1394、COM或 命名管道,可以要求调试客户端提供密码。但是,密码在传输时是不会加密的,因此这些协议都不安全。

如果想调试服务器变得安全一些,必须使用安全套接字层(SSL)或安全管道(SPIPE)协议。

如果进行通过remote.exe的远程调试, 可以通过/u参数来防止未认证用户的连接。

限制客户端的权限

如果设置了一个内核调试会话,可以使用安全模式来限制调试器对主控机的干涉。

在用户模式下是不能使用安全模式的。可以通过使用.noshell (Prohibit Shell Commands)命令来阻止调试器执行MS-DOS命令或运行外部程序。但是,客户端还是有很多其他方式可以用来干预计算机。

注意安全模式和.noshell都会同时阻止调试客户端和调试服务器的一些特定行为。没有办法只限制客户端而不限制服务器。

遗忘的进程服务器

在远程机器上开启进程服务器时,它是在后台运行的。

如果通过该进程服务器进行了远程调试然后关闭会话,进程服务器会继续运行。

忘记关闭的进程服务器会成为潜在的攻击目标。不再需要的进程服务器都应该关闭。使用Kill.exe实用程序或任务管理器来结束进程服务器。

Build machine: CAPEBUILD