2023驱动保护学习 -- 卸载驱动程序
一、创建回调函数,卸载驱动的时候会执行里面的操作
void 卸载驱动回调函数(PDRIVER_OBJECT 驱动对象)
{KdPrint(("nxyn:我被卸载了,驱动编号=%p", 驱动对象));
}
二、在主函数中调用该函数
extern "C" NTSTATUS DriverEntry(_In_ PDRIVER_OBJECT 驱动对象, _In_ PUNICODE_STRING psg)
{驱动对象->DriverUnload = 卸载驱动回调函数;KdPrint(("nxyn:第一个驱动程序,驱动编号:%p", 驱动对象));return 0;
}
三、生成驱动文件,拷贝到虚拟机进行测试
四、在DebugView中设置标识符"nxyn",只查看包含nxyn的输出语句
![](/assets/blank.gif)
五、在Monitor中,导入该驱动程序,点击go,然后点击stop,查看输出效果
![](/assets/blank.gif)
六、在DebugView中会显示,我们要输出的语句,说明驱动加载和卸载都没问题。
![](/assets/blank.gif)
七、程序源码
#include <ntifs.h>void 卸载驱动回调函数(PDRIVER_OBJECT 驱动对象)
{KdPrint(("nxyn:我被卸载了,驱动编号=%p", 驱动对象));
}extern "C" NTSTATUS DriverEntry(_In_ PDRIVER_OBJECT 驱动对象, _In_ PUNICODE_STRING psg)
{驱动对象->DriverUnload = 卸载驱动回调函数;KdPrint(("nxyn:第一个驱动程序,驱动编号:%p", 驱动对象));return 0;
}
2023驱动保护学习 -- 卸载驱动程序相关推荐
- Windows驱动开发学习笔记(一)—— 环境配置第一个驱动程序
Windows驱动开发学习笔记(一)-- 环境配置&第一个驱动程序 环境配置 第一个驱动程序 环境配置 安装VS2010:https://pan.baidu.com/s/1uZWWxCtB60 ...
- 计算机如何删除已连接的打印机驱动程序,hp打印机驱动怎么彻底卸载 hp打印机驱动卸载教程...
很多用户在安装hp打印机驱动之后,发现安装好的驱动显示的是英文,当我们想要卸载换成中文的,发现卸载不了,这该怎么办呢?其实非常简单,下面小编为大家分享彻底卸载hp打印机驱动的方法,大家看完下面的方法就 ...
- Windows驱动开发学习笔记(五)—— SSDT HOOK
Windows驱动开发学习笔记(五)-- SSDT HOOK 系统服务表 系统服务描述符表 实验一:通过代码获取SSDT表地址 通过页表基址修改页属性 方法1:修改页属性 方法2:修改CR0寄存器 实 ...
- 驱动保护中的ObjectType_Callback探索
最近学习驱动保护,有点小小心德与大家分享下. 当前环境:VM中的win7 32 保护程序是某游戏的驱动保护. 具体现象是:在用PCHunter工具查看object钩子时发现如下的信息: 疑问点1:在H ...
- Windows驱动开发学习笔记(六)—— Inline HOOK
Windows驱动开发学习笔记(六)-- Inline HOOK SSDT HOOK Inline Hook 挂钩 执行流程 脱钩 实验一:3环 Inline Hook 实验二:0环 Inline H ...
- Windows驱动开发学习笔记(四)—— 3环与0环通信(常规方式)
Windows驱动开发学习笔记(四)-- 3环与0环通信(常规方式) 设备对象 创建设备对象 设置数据交互方式 创建符号链接 IRP与派遣函数 IRP的类型 其它类型的IRP 派遣函数 派遣函数注册位 ...
- Windows驱动开发学习笔记(三)—— 内核空间内核模块
Windows驱动开发学习笔记(三)-- 内核空间&内核模块 内核空间 实验 第一步:编译如下代码 第二步:将 .sys 文件拷贝到虚拟机中 第三步:部署 .sys 文件并运行 第四步:创建一 ...
- Windows驱动开发学习笔记(二)—— 驱动调试内核编程基础
Windows驱动开发学习笔记(二)-- 驱动调试&内核编程基础 基础知识 驱动调试 PDB(Program Debug Database) WinDbg 加载 PDB 实验:调试 .sys ...
- 日服巫术online过驱动保护分析(纯工具)(工具+自写驱动)
前言: 最近在学外挂编程,基本都是利用CE,OD调试分析游戏数据,但现在游戏公司用各种保护手段防止我们调试游戏,虽然我们有CE,OD这样的利器但是仍然被游戏驱动保护挡在门外i,真可谓巧妇也难为无米之炊 ...
最新文章
- ML之SVM:基于Js代码利用SVM算法的实现根据Kaggle数据集预测泰坦尼克号生存人员
- r语言和metawin_Windows下使用Rtools编译R语言包
- bash 的进站欢迎提示
- JDBC与JNDI应用比较
- 《Nmap渗透测试指南》—第2章2.8节ICMP Ping Types扫描
- 怎样用js结合h5画出多头像组合头像
- 阶段3 2.Spring_03.Spring的 IOC 和 DI_7 spring中bean的细节之作用范围
- 自制的基Ogre的场景编辑器—OgreSE
- 汽车EMI/EMC测试标准ISO7637-2详解
- IEEE754十六进制转十进制
- 第2周 Storm概念详解和工作原理,topology、spout、bolt的细节和API讲解之2
- Waited long enough for: ServiceRecord 问题解决
- 嵌入式编程软件基础汇总1
- 【c++STL——第四讲】stack系列 (常用知识点总结)
- 华师大计算机考研825,2020华东师范大学计算机/软件专业课改考408
- 考研-英语经验贴2.0
- 若依框架图片上传、富文本框编辑器功能
- python怎么群发邮件_python群发邮件怎么做
- 金簿财务软件智能版3.985
- 高一数学知识点:逻辑联结词、全称量词与存在量词