• 如果您想对本站表示支持,请随手点击一下广告即可~
  • 本站致力于提供原创、优秀的技术文章~
  • 有任何疑问或建议 均可以在站点右侧栏处 通过各种方式联系站长哦~
  • WINDOWS内核学习顺序指引清单

    逆向工程 EXP 741阅读 0评论

    前言

    鉴于很多同学想学习 逆向工程,但是找不到切入点导致无从入手,因此编写了这个指引清单。

    本文原则上只是一个学习指引目录(虽然部分章节有提供一些资料),因涉及知识面太多,具体内容以后再逐渐填充。

    有兴趣的同学可根据指引清单,先行逐步扩展学习每个知识点。当整个清单都弄懂了,也就入门了(对的,你没看错,只是入门)。


    文章目录


    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开发


    转载请注明:EXP 技术分享博客 » WINDOWS内核学习顺序指引清单

    喜欢 (2) 分享 (0)
    发表我的评论
    取消评论

    表情

    Hi,您需要填写昵称和邮箱!

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址