十万个为什么 发表于 2021-1-16 20:19:39

郁金香驱动编程+驱动逆向+驱动保护视频教程


教程名字:郁金香驱动编程+驱动逆向+驱动保护视频教程
教程目录:
一、基础篇--简单驱动模型1.1 DDK及VC6.0/7.0/9.0的安装   1.1.1 安装VC++6.0 -1课   1.1.2 安装VS2003-VC++7.0-2课   1.1.2 安装VS2008-VC++9.0-3课   1.1.3 安装VC助手-4课   1.1.5 安装DDK-5课1.2驱动开发VC环境安装配置 1.2.1 VC6环境编译驱动-6课   A、VC6驱动编译配置   B、VC6集成环境下编译驱动 1.2.2 VS2003环境编译驱动-7课   A、VC7驱动编译配置   B、VC7集成环境下编译驱动 1.2.3 VS2008环境编译驱动-8课   A、VC9驱动编译配置   B、VC9集成环境下编译驱动 1.3 NT式驱动 1.3.1编写一个名为DDK_HelloWorld简单的驱动-9课      A、VC6集成环境下书写代码          驱动入口函数DriverEntry          入口函数参数DriverObject和RegistryPath      B、书写SOURCES文件      C、书写makefile文件      D、用DDK-Build环境编译 1.3.2为DDK_HelloWorld添加卸载例程-10课      A、输出调试信息-KdPrint      B、认识PDRIVER_OBJECT结构      C、注册驱动卸载例程      D、卸载例程回调函数构建      E、查看驱动调试信息 1.3.3 用工具过驱动保护(确定学习方向)-11课      A、用户层至内核的隐秘通道      B、浅谈过保护原理      C、实战过XX游戏驱动保护,让OD,CE正常附加调试      D、小结 1.3.4为DDK_HelloWorld添加设备例程-12课      A、相关内核API介绍      B、重要数据结构驱动对象DRIVER_OBJECT      C、重要数据结构设备对象DEVICE_OBJECT      D、添加创建设备的例程      E、用工具查看驱动及驱动设备 1.3.5VM+windbg安装 13课      A、安装VM虚拟机      B、在VM里安装操作系统      C、安装windbg      D、windbg和VM的相关配置      E、启用windbg双机调试 1.3.6实战用windbg调试自己驱动DDK_HelloWorld -14课      A、用户层调试和内核调试区别      B、如何下断跟踪      C、F10步过和F11步进      D、查看寄存器相关信息      E、源代码调试与机器码调试 1.3.7DDK_HelloWorld卸载例程细化-15课       A、再看DEVICE_OBJECT结构      B、删除符号链接      C、删除设备      D、测试卸载例程 1.3.8为DDK_HelloWorld添加默认派遣例程-16课      A、初识IRP      B、一个简单的IRP处理函数      C、IRP.IoStatus结构      D、IoCompleteRequest函数1.4 编写自己的驱动过游戏保护(以11课分析为例)   1.4.1需要具备的理论知识-17课      A、了解SSDT结构      B、由SSDT索引号获取当前函数地址            C、如何获取索引号      D、获取起源地址-判断SSDT是否被HOOK      E、如何向内核地址写入自己代码    1.4.2读出SSDT表当前函数地址-18课      A、引用KeServiceDescriptorTable表      B、通过ServiceTableBase+偏移读出当前函数地址      C、用windbg测试读取的值 1.4.3读出原函数地址-19课      A、集成上一课代码至GetNt_CurAddr函数      B、MmGetSystemRoutineAddress          C、书写GetNt_OldAddr函数          D、测试结果 1.4.4JMP地址转换公式推导-20课       A、JMP地址转换公式推导       B、计算实际地址函数RealJmp_Addr       C、测试1.5绕过SSDT驱动保护-21课       A、去掉页面保护       B、写入In Line HOOK代码       C、用OD附加测试效果       D、反HOOK代码1.6 NT式驱动的安装-22课      A、OpenSCManager      B、CreateService      C、OpenService      D、StartService      E、CloseServiceHandle      F、集成到loadNTDriver函数1.7 NT式驱动的卸载-23课   A、卸载驱动流程   B、内核函数DeleteService   C、内核函数ControlService   D、构建UnLoadSys函数   E、测试并查看调试信息1.8 驱动代码中C和C++代码区别-24课A、函数调用约定B、C和C++编译方式C、用C++方式编译驱动D、C代码升级至C++ E、优化21课的代码1.9、再谈VC环境配置-25课 A、编译选项C/C++ Project Option B、链接选项Link Project Option C、测试所编译驱动 二、中级篇2.1、手动加载NT式驱动(非工具)-26课 A、注册表 B、手动运行驱动 C、手动停止驱动2.2、应用程序与驱动交互访问(缓冲模式) 2.2.1、数据交换原理-27课 A、用户层传入数据B、驱动层接收数据C、驱动层回传数据级用户层 2.2.2、实战EXE和SYS通信-28课 A、用户层传入数据EXE部分代码 B、驱动层接收数据并处理SYS部分代码 C、驱动层返回数据至用户层 D、用户层获得处理结果2.3、应用程序与驱动交互访问(直接模式)-29课 A、用户层传入数据EXE部分代码 B、驱动层接收数据并处理SYS部分代码 C、驱动层返回数据至用户层 D、用户层获得处理结果 E、预编译指令#pragma #ifndef #endif2.4、应用程序与驱动交互访问(其它模式)-30课 A、用户层传入数据EXE部分代码 B、驱动层接收数据并处理SYS部分代码 C、驱动层返回数据至用户层 D、用户层获得处理结果 E、驱动中的异常处理2.5、再谈SSDT HOOK驱动保护原理-31课 A、初识内核进程相关结构 B、内核函数PsGetCurrentProcess C、进程保护原理 D、实例测试2.6、自写驱动保护XX进程-32课 A、HOOK SSDT B、构建自己的内核函数 C、构建Hook和UnHook函数 D、修改EXE和SYS对应源代码(实现所谓保护) E、测试效果 2.7、驱动中的内存管理-33课 A、 物理内存 B、 虚拟内存 C、 Ring0地址和Ring3地址 D、 驱动程序和进程的关系 E、 分页和非分页内存 F、 分配内核内存2.8、内存管理相关内核API-34课 A、RtlCopyMemory,RtlCopyBytes和RtlMoveMemory C、RtlZeroMemory和RtlFillMemory D、RtlEqualMemory E、ExAllocatePool和 ExFreePool F、重载new和delete操作符2.9.1在认识链表结构exe部分-35课 A、链表结构 B、链表的初始化 C、在链表中插入数据(结点) D、链表的遍历2.9.2在驱动中使用链表sys部分-36课 A、链表结构 B、链表的初始化 C、在链表中插入数据(结点) D、链表数据的删除 E、链表的遍历2.A.1驱动下的异常处理-37课 A、返回状态值 B、检查内存的可用性 C、异常处理try-except D、异常处理try-finally E、断言 2.A.2内核模式下的字串操作-38课 A、ASCII字符串和UNICODE字符串 B、ANSI_STRING字符串和UNICODE_STRING字符串 C、字符串的初始化与销毁 D、字符串复制,比较,(大小写,整数和字串)相互转换 E、ANSI_STRING字符串和UNICODE_STRING字符串相互转换2.A.3内核模式下的文件操作-39课A、文件的创建B、文件的打开C、获取和修改文件属性D、写文件和读文件三、进阶篇(进程保护,RootKit)3.1应用层勾子 3.1.1 IAT表-40课    A、初识IAT    B、IAT表相关结构    C、读出IAT项    D、编写代码测试分析       E、HOOK IAT    F、测试分析 3.1.2 应用层勾子InLine HOOK-41课    A、InLine HOOK 原理分析    B、InLine HOOK 代码编写    C、InLine HOOK 代码测试3.2内核勾子3.2.2 Shadow SSDT-42课   A、Shadow SSDT表基址   B、Shadow SSDT表结构   C、Shadow SSDT HOOK3.2.3 绕过所有用户层HOOK-43课   A、分析API函数原理   B、自写API函数   C、SYSENTER指令   D、硬编码_emit   E、模拟FindWindow函数3.2.4 驱动InLine HOOK实例-44课   A、分析等HOOK函数参数   B、选取HOOK地址   C、构建HOOK 代码   D、实现HOOK   E、测试效果3.2.5 认识 IDT表-45课   A、反断点的一些原理   B、认识IDT表   C、IDT表相关结构   D、读出IDT表-sidt指令   E、测试3.2.6 IDT HOOK-46课   A、实例演示   B、替换IDT处理函数   D、IDT HOOK 代码书写   D、测试效果四、高级篇--驱动逆向(实例分析)4.1 XX游戏驱动保护分析(实例A)   4.1.1、XX游戏驱动保护分析(实例A)-47课   A、保护情况分析   B、猜测相关原理   C、过保护让CE能查找到数据的相关分析   D、过保护让CE能修改数据的相关分析   4.1.2 、XX游戏过保护分析(实例B)-48课   A、分析游戏进程保护   B、分析游戏数据读取保护   C、分析游戏数据写入保护 4.2、 XX游戏驱动保护代码书写    4.2.1 XX游戏驱动保护代码书写-49课   A、定位特征码函数FindCode_Address构建   B、定位NtOpenThread   C、定位NtOpenProcess   D、定位NtReadVirtualMemory    E、定位NtWriteVirtualMemory   F、CALL与JMP指令的区别   G、构建相应的替换函数    4.2.2 XX游戏驱动保护代码书写-50课   A、恢复NtOpenThread   B、恢复NtOpenProcess函数       C、恢复NtReadVirtualMemory 让CE可读   D、恢复NtWriteVirtualMemory让CE可写   E、Ret指令详解   F、Hook代码编写并测试五、附加课程(不会实时更新)    5.1 过XX游戏保护实例       A、1394hub保护(游戏A)       B、necheck保护(游戏B)

教程下载:百度网盘下载:链接:https://pan.baidu.com/s/1QYt-HqjzaSAh8figuJ8dcg 提取码:ejt4

360网盘下载:https://yunpan.360.cn/surl_ySEz5x7dIvv (提取码:3d95)   

那年秋风起丶 发表于 2021-3-9 22:56:14

楼主发贴辛苦了,谢谢楼主分享!我觉得易语言吧是注册对了!

yyz860723 发表于 2021-5-29 07:00:27

楼主发贴辛苦了,谢谢楼主分享!我觉得易语言吧是注册对了!

中华斩舞 发表于 2021-10-4 09:17:09


论坛不能没有像楼主这样的人才啊!我会一直支持易语言吧。

语音消息不回 发表于 2022-1-6 23:36:01

感谢分享,辛苦啦!

q543638278 发表于 2022-5-30 01:11:09



楼主发贴辛苦了,谢谢楼主分享!我觉得易语言吧是注册对了!

yt2022 发表于 2022-8-24 16:51:21

感谢分享,辛苦啦!

shuaile 发表于 2024-4-8 02:07:54

双方所发生的嘎嘎嘎深V
页: [1]
查看完整版本: 郁金香驱动编程+驱动逆向+驱动保护视频教程