ImpRec 无效 thunk 似乎有效

逆向工程 调试 我在
2021-06-24 13:33:27

我一直在重建IAT一个可执行文件,并使用了ImpREC中,虽然一些的thunk都显示为无效,即使在明显他们显示rvamodordname场就像有效的thunk。

我应该删除突出显示为无效的 thunk 还是做进一步分析,如果是这样怎么办?

在此处输入图片说明

1个回答

导入 REConstructor 检测到 2 个不同 DLL(combase.dllole32.dll0x00000000的 thunk,在 thunk 之间没有分隔符条目。这是因为这些 DLL 中的一个 ( ole32.dll) 导出被转发到另一个 DLL ( combase.dll) 的函数

Import REConstructor 需要所有相邻的 thunk(0x00000000它们之间没有中间)来自同一个 DLL,因此要解决此问题,您需要双击每个combase.dllthunk 并指定从ole32.dll.

例如,在双击combase.dll!CLSIDFromString进入,并告诉导入重构其导入表的条目实际上应该是ole32.dll!CLSIDFromString对,然后双击combase.dll!CLSIDFromProgID进入,并告诉导入重构其导入表的条目实际上应该是ole32.dll!CLSIDFromProgID,那么对于同样的CoTaskMemFreeCreateStreamOnHGlobal等等。请注意,您需要combase.dll为此块中的所有thunk执行此操作,而不仅仅是当前突出显示为无效的那些。