|
|
1
6
另一种选择是创建一个导出函数,该函数将返回一个要隐藏的函数的地址数组——一旦有了这些地址,就可以直接调用它们
在可执行文件中,可以执行以下操作
|
|
|
2
4
使用*.def文件并使用NONAME属性防止导出名称:请参阅 Exporting Functions from a DLL by Ordinal Rather Than by Name ... 有一个 an example here . |
|
|
3
3
这真的很尴尬,但是如果你不想让别人看到序数,你可以用COM包装你的函数。COM DLL只公开常见的COM函数,因此您的函数将被隐藏。然后,有一些技术可以在不首先注册DLL的情况下使用DLL,因此在系统中找不到有关将要使用的COM类的信息。使用COM确实是一个奇怪的原因,但是请求也很少见。。。 |
|
|
4
2
基本的 用户仍然可以通过GetProcAddress访问它们。 我认为您必须使用更复杂的方法,例如eran提出的解决方案。 |
|
|
5
1
Enumerate COM object (IDispatch) methods using ATL? 了解如何在COM DLL中查找函数名。
另一个技巧是导出诱饵函数,使其崩溃或设置内部状态,以使代码知道它已被破坏。在受损状态下,代码可能故意生成错误结果或随机崩溃。它还可以将带有窥探者信息的邮件发送回帐户。 |
|
0___________ · 我可以在整个程序生命周期内保持句柄打开吗 2 年前 |