WINDOWS 内核学习顺序指引清单前言鉴于很多同学想学习 逆向工程,但是找不到切入点导致无从入手,因此编写了这个指引清单。 本文原则上只是一个学习指引目录(虽然部分章节有提供一些资料),因涉及知识面太多,具体内容以后再逐渐填充。 有兴趣的同学可根据指引清单,先行逐步扩展学习每个知识点。当整个清单都弄懂了,也就入门了(对的,你没看错,只是入门)。 1. 基础知识1.1. 驱动框架(NT和WDM)1.2. 驱动基础(编程概念、内核函数、基本数据结构等等)1.3. 驱动通信(R3主动与R0通信、R0主动与R3交互)
1.4. 基本操作(系统线程、工作队列、计时器、字符串、内存、链表等等等等)...... 2. 进程相关2.1. 枚举进程(PID、EPROCESS、进程路径等)2.2. 结束进程(多种方法)...... 2.3. 挂起进程...... 2.4. 恢复进程...... 2.5. 保护进程(API HOOK、回调)...... 2.6. 隐藏进程(API HOOK、DKOM)...... 2.7. 枚举线程...... 2.8. 结束线程(多种方法)...... 2.9. 挂起线程...... 2.10. 恢复线程...... 2.11. 枚举DLL(多种方法)...... 2.12. 卸载DLL...... 2.13. 注入DLL/SHELLCODE(NT6注入到系统进程)...... 2.14. RING3 INLINE HOOK/UNHOOK/绕过(多种方法)...... 2.15. RING3 EAT HOOK/UNHOOK...... 2.16. RING3 IAT HOOK/UNHOOK...... 2.17. 窗口操作(枚举、发消息、隐藏/显示、启用/禁用等)...... 2.18. 内存操作(枚举、申请、释放、读写、修改保护类型等)...... 2.19. 消息钩子(枚举、删除)...... 2.20. 内核回调表(枚举、清除HOOK)...... 2.21. 枚举句柄...... 2.22. .关闭句柄...... 2.23. 监控进程创建/退出(API HOOK、回调)...... 2.24. 监控线程创建/退出(API HOOK、回调)...... 2.25. 监控DLL加载(API HOOK、回调)...... 3. 文件相关3.1. API层文件操作(枚举、复制、删除、重命名)...... 3.2. FSD层文件操作(枚举、复制、删除、重命名)...... 3.3. DISK层文件操作(读写)...... 3.4. 解析NTFS/FAT32...... 3.5. 监控文件操作(API HOOK、SFILTER、MINIFILTER)...... 4. 注册表相关4.1. API层注册表操作(枚举、新建、删除、重命名)...... 4.2. 解析HIVE操作注册表...... 4.3. 监控注册表操作(API HOOK、回调、DKOH)...... 5. HOOK相关5.1. SSDT HOOK/UNHOOK(包括SHADOW SSDT)...... 5.2. INLINE HOOK/UNHOOK/绕过(多种方法)...... 5.3. IRP HOOK...... 5.4. OBJECT HOOK/UNHOOK...... 5.5. IDT HOOK/UNHOOK...... 5.6. EAT HOOK/UNHOOK...... 5.7. IAT HOOK/UNHOOK...... 5.8. MSR HOOK/UNHOOK...... 6. 内核相关6.1. 枚举内核模块(链表、目录对象、暴搜)...... 6.2. 监控驱动加载(API HOOK、回调)...... 6.3. 枚举/删除回调(进程、线程、映像、注册表、蓝屏、关机、对象、文件系统改变)...... 6.4. 枚举/删除定时器(IO/DPC)...... 6.5. 枚举GDT...... 7. 网络相关7.1. 内核网络通信(TDI、WSK)...... 7.2. 监控网络通信(WFP、TDI HOOK、NDIS HOOK、NDIS FILTER)...... 7.3. 枚举网络连接(API方法、发IRP法)...... 7.4. 枚举/挂钩NDIS处理函数...... 7.5. 流量统计/下载限速...... 7.6. 端口复用...... 8. 64位系统专用8.1. 破解PATCHGUARD(动态/静态)
8.2. 破解DSE(动态/静态)
9. 杂项9.1. 对象劫持...... 9.2. 符号操作...... 9.3. PE解析...... 9.4. 反调试...... 10. 整体项目10.1. PE工具...... 10.2. ARK...... 10.3. 调试器...... 10.4. 主动防御...... 10.5. 沙箱...... 10.6. 透明加密...... 10.7. VT级调试/反调试/主动防御...... 11. 其他11.1. MFC开发 |
|