<分区>
我在某处读到一段代码, promise 它可以保护应用程序 Winsock 功能免受数据包编辑器的影响。
我运行着一个游戏服务器,这对我来说真是个好消息。但这真的可能吗?
就像使用绕道将 DLL 添加到我的游戏的可执行文件以保护我的 winsock 函数不被劫持一样?
比如如果他们将数据包编辑器连接到我的应用程序,他们将不会在数据包日志记录中看到任何内容?
或者对这类工具隐藏我的应用程序进程是更好的方法吗?
谢谢。欢迎讨论。
我找到的代码:http://pastebin.com/XtfSHxBL
如果您要将此类代码添加到您的游戏中,我会直接 NOP ;)
克服它。
客户端不安全,永远不可信。
此外,我可以在两者之间切换一个 linux 路由器,并在那里捕获数据包..
如果您不希望您的 winsock 数据被捕获,您需要使用良好的非对称加密算法(如 PGP)对其进行加密,然后再将数据发送到 winsock。
一个更好的主意是使用 isdebuggerpresent 来关闭程序(如果是的话)。
但是然后你需要加密可执行文件,因为否则我只是用 IDA 反汇编它,并且补丁是调试器存在于 NOP,或者 0xe9 它在运行时通过 createremotethread 返回 false,顺便说一句,文件校验和检查无法检测到.
但是,如果我劫持 isdebuggerpresent WinAPI 函数并将其删除,您仍然会受到攻击。这也可以通过 MS 弯路来实现 ;)