-2

有一个程序可以扫描我机器的内存以查找我正在使用的程序。我想避免这种情况。

有没有办法禁止这个其他程序检查我的内存,所以它只会看到自己的内存?我正在使用窗户。

4

2 回答 2

1

我所知道的一个进程读取另一个进程的内存的唯一方法是 via ReadProcessMemory(),它需要读取进程用于OpenProcess()获取PROCESS_VM_READ正在读取的进程的权限。所以,大概这是成功的,这意味着阅读过程有足够的权限来访问你的应用程序的内存,例如如果阅读应用程序是以管理员身份运行的,或者是一个调试器。在这种情况下,您的应用程序无法阻止它,除非通过更改其自己的安全描述符SetSecurityInfo()(但OpenProcess()允许调试器绕过该描述符并获得完全访问权限),或将您的应用程序设置为以更高的完整性级别运行( Vista 和更高版本)比阅读应用程序使用的PROCESS_VM_READ权限被拒绝。

有关详细信息,请参阅 MSDN:

进程安全和访问权限

于 2013-05-30T23:42:10.323 回答
0

我总是使用 Avast Antivirus (www.avast.com) 附带的沙盒。它允许您在完全隔离的环境中运行应用程序。

于 2013-05-30T23:02:21.893 回答