Tesla.Angela 发表于 2014-5-4 22:19:30

WIN64驱动编程基础教程(内含大量新手福利)

这份教程本来是拿来出售的,不过由于某些原因导致部分章节出现在了互联网上,于是决定彻底公开了。详细目录:
0.基础的基础
|-学习WIN64驱动开发的硬件准备
|-配置驱动开发环境(补充:http://www.m5home.com/bbs/thread-8495-1-1.html)
------------------------------
1.驱动级HelloWorld
|-配置驱动测试环境(补充:http://www.m5home.com/bbs/thread-9508-1-1.html)
|-编译和加载内核HelloWorld(勘误:http://www.m5home.com/bbs/thread-8421-1-1.html)
------------------------------
2.内核编程基础
|-WIN64内核编程的基本规则
|-驱动程序与应用程序通信(补充:http://www.m5home.com/bbs/thread-8602-1-1.html)
|-内核里使用内存
|-内核里操作字符串
|-内核里操作文件
|-内核里操作注册表
|-内核里操作进线程
|-驱动里的其它常用代码(补充:http://www.m5home.com/bbs/thread-8201-1-1.html)
------------------------------
3.内核HOOK与UNHOOK
|-系统调用、WOW64与兼容模式
|-编程实现突破WIN7的PatchGuard(补充:http://www.m5home.com/bbs/thread-8231-1-1.html)
|-系统服务描述表结构详解
|-SSDT HOOK和UNHOOK(勘误:http://www.m5home.com/bbs/thread-7994-1-1.html)
|-SHADOW SSDT HOOK和UNHOOK(补充:http://www.m5home.com/bbs/thread-9412-1-1.html)
|-INLINE HOOK和UNHOOK(补充:http://www.m5home.com/bbs/thread-8154-1-1.html)
------------------------------
4.无HOOK监控技术
|-无HOOK监控进线程启动和退出
|-无HOOK监控模块加载(补充:http://www.m5home.com/bbs/thread-8152-1-1.html)
|-无HOOK监控注册表操作
|-无HOOK监控文件操作(补充:http://www.m5home.com/bbs/thread-8922-1-1.html)
|-无HOOK监控进线程句柄操作(补充:http://www.m5home.com/bbs/thread-9324-1-1.html)
|-使用对象回调监视文件访问
|-无HOOK监控网络访问
|-无HOOK监视修改时间
------------------------------
5.零散内容
|-驱动里实现内嵌汇编(补充:http://www.m5home.com/bbs/thread-8108-1-1.html)
|-DKOM隐藏进程+保护进程
|-枚举和隐藏内核模块(勘误:http://www.m5home.com/bbs/thread-8450-1-1.html)
|-强制结束进程   
|-强制读写进程内存
|-枚举消息钩子(补充:http://www.m5home.com/bbs/thread-9411-1-1.html)
|-强制解锁文件(补充:http://www.m5home.com/bbs/thread-8869-1-1.html)
|-初步探索PE32+格式文件
------------------------------
6.用户态HOOK与UNHOOK
|-RING3注射DLL到系统进程
|-RING3的INLINE HOOK和UNHOOK
|-RING3的EAT HOOK和IAT HOOK
------------------------------
7.反回调
|-枚举与删除创建进线程回调
|-枚举与删除加载映像回调
|-枚举与删除注册表回调
|-枚举与对抗MiniFilter
|-枚举与删除对象回调值得一提的是,这份教程的附件里,包含了一个过“数字签名强制”(DSE)的LIB,只要在程序里包含了这个LIB,就能无视DSE直接加载未签名的驱动。当然,这个LIB只支持WIN7、WIN8和WIN8.1,对于未出现的系统,是不可能支持的。本教程由于编写仓促,难免有错漏之处,欢迎指出。不过本教程的所有代码,绝对没有故意插入错误。所有代码都能“即抄即用”。
下载地址:http://pan.baidu.com/s/1bnxQNJh2024年1月1日公开《WIN64驱动教程补充》(正文42篇,补充28篇,合计70篇):WIN64驱动教程补充:恢复隐藏的进程
WIN64驱动教程补充:干掉所有sfilter和MiniFilter
WIN64驱动教程补充:关于切换CR3读写进程内存
WIN64驱动教程补充:DKOM副作用总结
WIN64驱动教程补充:获得SSDT函数地址(32、64全平台兼容)
WIN64驱动教程补充:关于商业级别的进程保护
WIN64驱动教程补充:关于商业级别的进程保护(续)
WIN64驱动教程补充:关于商业级别的进程保护(续2)
WIN64驱动教程补充:关于ARK获取进程路径的方法
WIN64驱动教程补充:在高IRQL下执行只能在PASSIVE_LEVEL执行的代码
WIN64驱动教程补充:操作被独占打开的文件
WIN64驱动教程补充:硬编码的那点事儿
WIN64驱动教程补充:WIN64系统6字节的内联挂钩
WIN64驱动教程补充:编程实现加载WDM驱动
WIN64驱动教程补充:OBJECT HOOK的实现
WIN64驱动教程补充:DISK IRP HOOK的实现
WIN64驱动教程补充:内核EAT HOOK的实现
WIN64驱动教程补充:内核IAT HOOK的实现
WIN64驱动教程补充:IDT HOOK的实现
WIN64驱动教程补充:MSR HOOK的实现
WIN64驱动教程补充:一种罕见的注册表隐藏方式(DKOH)
WIN64驱动教程补充:内核级网络通信
WIN64驱动教程补充:2字节非跳转INLINE HOOK
WIN64驱动教程补充:不用任何API设置线程CONTEXT
WIN64驱动教程补充:更安全的MmIsAddressValid
WIN64驱动教程补充:RING3毁灭全盘数据
WIN64驱动教程补充:NTFS文件流的创建、删除、枚举
WIN64驱动教程补充:WIN64上枚举关机和蓝屏回调相关阅读:WIN64AST Limit 1.01源代码、一些与WINDOWS驱动开发相关的PoC
正规数字证书(已过期、被吊销,但不影响使用):

证书文件来自:http://bbs.et8.net/bbs/showthread.php?t=1013873。签名方法关键字:虚拟机、断网、改时间。签名后则正常使用。不需要断网,不需要改时间、不需要重启、不需要测试签名模式。由于这个证书在2021年进了WINDOWS内置的黑名单,因此用它签名的驱动无法在WIN10晚期版本(21H2+)和WIN10之后的系统(比如WIN11)上加载。

mysmartid 发表于 2014-5-5 00:24:24

感谢分享~

kk1025 发表于 2014-5-24 22:24:50

板大又要大失血送出囉。。。 (PS。不會是我害的吧)

陌路人 发表于 2014-12-26 16:06:10

我的驱动不能加载啊..   

tangptr@126.com 发表于 2015-7-8 11:07:56

原来所谓的无视DSE的Lib出自此文。。。

qq892640791 发表于 2016-5-26 12:27:22

开始学习64位驱动,谢谢大大

poeclub 发表于 2017-6-28 19:55:19

不知道可否放出<过“数字签名强制”(DSE)的LIB>的相关文件?
学习下突破机制。

7900031 发表于 2017-10-10 10:25:42

拿走了,有空好好学一下

waj19831 发表于 2018-2-6 03:36:16

新手学点东西不容易, 有一份带源码的教程, 很好很强大, 感谢

a646959714 发表于 2018-8-20 18:38:17

学习了
页: [1] 2
查看完整版本: WIN64驱动编程基础教程(内含大量新手福利)