当前位置:网站首页>Win64 驱动内核编程-31.枚举与删除映像回调
Win64 驱动内核编程-31.枚举与删除映像回调
2022-07-20 20:01:00 【51CTO】
枚举与删除映像回调
映像回调可以拦截 RING3 和 RING0 的映像加载。某些游戏保护会用此来拦截黑名单中的驱动加载,比如 XUETR、WIN64AST 的驱动。同理,在反游戏保护的过程中,也可以拦截游戏驱动的加载。
跟进程/线程回调类似,映像回调也存储在数组里。这个数组的“符号名”是PspLoadImageNotifyRoutine。我们可以在 PsSetLoadImageNotifyRoutine 中找到它:
实现的代码如下:
执行结果如下:
用这三种回调(CreateProcess、CreateThread、LoadImage)来做监控其实并不怎么靠谱,因为系统里存在一个开关,叫做 PspNotifyEnableMask,如果它的值被设置为 0,那么所有的相关操作都不会经过回调。换句话说,如果 PspNotifyEnableMask等于 0,那么所有的进程、线程、映像回调都会失效。不过这个变量并没有在导出函数中直接出现,所以找到它略难。
宋孖健,13
边栏推荐
- 2022年7月俄罗斯数据库排行榜:ClickHouse雄踞榜首,GigaBASE摘得榜眼
- Is it safe for Orient Fortune Securities to open an account? What is the lowest commission?
- findContours
- STL notes (XIV): function object
- 代码实现求二叉树结点数和叶子结点数(C语言)
- PostgreSQL operation and maintenance - distributed citus single machine multi instance deployment
- 百度经典面试题——判定素数(如何优化?)
- 【三维目标检测】Pointpillars(一)
- Hex burning with miniprog3
- 自定义类型:结构体(一)
猜你喜欢
Asemi rectifier bridge mb10m parameters, mb10m size, mb10m characteristics
SPARK Parquet嵌套类型的向量化支持以及列索引(column index)
Learning notes (1) getting to know uni app for the first time
VS2005 uses PDB plus source code to locate the code line where the crash occurs
单元测试,写起来到底有多痛?你会了吗
基于B\S架构搭建属于自己的股票分析系统
How to solve the problem that win11 printer document is suspended?
ASEMI整流桥MB10M参数,MB10M大小,MB10M特性
【TensorFlow&PyTorch】创建张量学习笔记
读书会 | 拨开心理咨询的迷雾:普通人应该如何看待心理咨询
随机推荐
搭建简易动态ip代理池
A link is automatically added to the picture in the content of dedecms dream weaving article. Click the new window to open the picture
读书会丨如何才能不做情绪的人质?
【LeetCode】在非有序数组中使用二分
Qt Opengl 给两个立方体设置两中不同颜色
数据库自增ID用完了会怎样?
基于B\S架构搭建属于自己的股票分析系统
STL notes (XIV): function object
【刷题记录】16. 最接近的三数之和
消息称苹果继续向俄罗斯市场交付产品:不进行售卖,只用于退换货
华为云:一切皆服务,共建全场景智慧金融
SVG转换为PDF的简单方法
[3D target detection] pointpillars (II)
(PC+WAP)织梦模板空气净化类网站
七大排序知识点
静态&动态&文件通讯录
Map and set knowledge points
剑指 Offer 21. 调整数组顺序使奇数位于偶数前面
Redis实现分布式限流(学习笔记
Reading notes (I) -- Kite Runner