【发布时间】:2012-06-13 20:38:10
【问题描述】:
有人解释一下为什么下一个代码会在 ntdll.dll 中返回一个指针?
GetProcAddress(LoadLibraryA("kernel32.dll"), "EncodePointer");
GetProcAddress(LoadLibraryA("kernel32.dll"), "DecodePointer");
PS:如果调用kernel32的导出表指向的函数会抛出断点。
【问题讨论】:
-
在您的 Windows 版本上,这些功能似乎就在此处。在过去的美好时光里,恶意软件编写者必须在没有 Stack Overflow 的情况下完成所有工作。
-
如果你对这个问题没有很好的答案,我相信这在 SO 上是不受欢迎的
-
这不是恶意软件,是针对游戏的 AntiHack 解决方案,例如 nProtect GameGuard、AhnLab HackShield 等。
-
从什么时候开始rootkits不是恶意软件了?
-
你不能根据它做了什么来判断它,而是它必须做什么。在这种情况下,保护游戏免受作弊者和黑客攻击:)
标签: c windows loadlibrary getprocaddress pointer-address