一个R3下的APIHOOK 扫描工具(支持86-64)

7次阅读
没有评论

就简单的介绍一下工具的逻辑。
1.InlineHook 扫描逻辑 : dump 进程下的所有dll包括自身。然后 通过路径 把 文件 也dump下来。
接下来 就是 无聊而又痛苦的工作!!!
1.1 拉伸文件 到内存 IMAGE_SECTION_HEADER->VirtualAddress(为了避免 混论:这一步的内存 叫做 PeBuffer)
1.2 修复 PeBuffer 的 IAT表 流程:通过 PEbuffer -> ImageThunkData->u1(名字OR序号) 最终定位修改 PEbuffer ->FirstThunk->u1.Function
1.3 修复PeBuffer 的重定位表 直接使用API LdrProcessRelocationBlock(新基址(也就是PeBuffer),SizeOfBlock,NextOffset,Diff);
例如 : Diff = GetModuleHandle(L"ntdll.dll") - PIMAGE_NT_HEADERS->OptionalHeader.ImageBase

2.IAT Hook扫描逻辑 (这个最简单) dump->IAT 和 PeBuffer ->IAT(注意 这个你已经修复了 如 1.2描述)对比,直接得出结果

如果 出现了 程序崩溃的情况,bug,请联系我。
备注:扫 微软dll,基本无敌 。扫其他dll,萎了。

云盘:
链接:https://pan.baidu.com/s/1dejQNwq42FS6Cnn94no4Eg
提取码:6c47

正文完
 0
116博客
版权声明:本篇文章由 116博客 于2024-12-01发表,共计608字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)
验证码