手头一本Subverting The Windows Kernel Rootkits,看了些RootKits的代码和同事以前写的Anti-Spyware的driver,发现很多技术都是自己一直在用的,有的是曾经用过又放弃了,只不过一直没有把这些当作RootKit来看待。也许是以前写的driver都是很常规的,为了更大的compatibility,一直都尽量避免用这些hook/patch~~~~
先列出我知道的windows kernel级的hook/patch技术,有兴趣的XD在后面补上新的,希望这个帖子能为寻找hook/patch技术的人提供点信息哦~~~
1. Hooking the System Service Descriptor Table
2. Hooking the Interrupt Descriptor Table
3. Hooking the Major I/O Request Packet Function Table in the Device Driver Object
4. Detour Patching (Long Jump)
5. Filter Device Driver
6. Import Address Table Hooking/Export Address Table Hooking
7. DKOM
但确实如wowocock所说,没有windows source code,这种LIST_ENTRY都不知道哪里有。现有的DKOM也只能对process list和driver list进行操作。
DKOM也是改变了原本OS的机能,从大的方面来说,也算是打了补丁了。
一般patch说的是动态修改操作系统代码.DKOM修改的一般不是代码页.
通常DKOM也是不会改变机能的,因为OS不会走你的逻辑,只是骗过OS一些数据结构罢了.OS照样做它自己该做的事.
绕这个概念也没啥意思,只是觉得楼主要列出来patch/hook的名字么,怎么有点逻辑冲突,嘿嘿