使用带有偏移量语法的 GetProcAddress

逆向工程 部件 大批 抵消 过程 称呼
2021-06-10 22:15:52

我有以下几行(我使用 IDA PRO):

   ...
   push (offset aPstorec_dllwne+0Ch)      ; lpProcName
   push esi                               ; hModule
   call GetProcAddress_0
   ...

当我点击(offset aPstorec_dllwne+0Ch)我使用:

   seg001:004012F0 ; char aPstorec_dllwne[] 
                   aPstorec_dllwne db 'pstorec.dll, 0 , 'WNetEnumCachedPasswords', 
                   0 , 'MPR.DLL' , 0 , 'SeDebugPrivilege', 0 , 0 , 0 , 0

所以我的问题是:我应该如何阅读它以获取该过程的信息?我知道数组的每个字段都是 4 个字节,开头db表示这一点。但是当我从零开始计数时,我在 WNetEnumCachedPasswords 之后来到了 0。这是错误的,对吧?

最好的祝福

1个回答

如果您遇到不熟悉的 API 调用,请查看MSDN 页面参数 2 是“函数或变量名称,或函数的序数值”。查看您的偏移量,其中只有一个是函数名称 WNetEnumCachedPasswords。

您可以通过从 aPstorec_dllwne 计算 12 (0xc) 个字节来验证您帖子中的评论所说的。db 代表数据字节,您还可以看到“char aPstorec_dllwne[]”表示一个字符数组,每个元素也有 1 个字节。