在Windows 7和Visual Studio下是否有任何调试/预先存在的参数或任何选项,以防止其他进程挂钩到我的进程?
我在Visual Studio下为Windows编写游戏,并想知道是否有办法禁止用户挂钩游戏的过程?
答案 0 :(得分:8)
不,这是不可能的。即使您可以以某种方式禁用挂钩,用户仍然可以将调试器附加到您的进程并执行他们想要的任何内容< / em>的。当然,这是设计的:当你编写它时,它是你调试问题的方式。
一旦用户在他们的计算机上安装了程序,假设他们有足够的权限,他们对该程序有完全控制。试图以编程方式限制它是一个愚蠢的差事。
使用代码找不到此程序的解决方案。您需要调查内置的Windows安全模型,例如创建有限的用户帐户;在服务器故障上询问有关该问题的更多问题。
答案 1 :(得分:5)
简短的回答是否定的。
在Windows计算机上(与大多数其他计算机一样),具有足够权限的用户始终能够检查和/或修改游戏进程的地址空间内容。
那就是说,你想要防御什么样的用户和/或攻击?您希望保护哪些资产?一旦确定了这些内容,就可以开始考虑如何设计应用程序,以便攻击者更难以获得他们想要的内容。
我首先阅读Threat Modeling。祝你好运!
答案 2 :(得分:0)
无法禁用。你想要做的是检测字节补丁,钩子甚至只是在游戏内存区域读取。但你最好放弃,因为它不值得花时间。