原文发表于百度空间,2009-01-08

看雪论坛地址:https://bbs.pediy.com/thread-80109.htm

DebugMan论坛地址:http://www.debugman.com/thread/2642/1/1
==========================================================================

纯粹是写着好玩的东西,就是扩展一下ProcessNotify而已~
因为大家都知道,系统只给了8个坑,坑满了就蹲不进去了
所以,我们自己写代码来解决这个问题,有多少个坑我们自己决定
至少不会像系统那么小气只给8个,呵呵~~

看张效果图吧,27个Notify同时工作,当然还可以更多(不要说我无聊哦)~~~

附件中的testNotify.sys是测试用的,它会注册9个Notify,同时打印返回值
每个Notify在进程创建或退出时会打印一句话,最前面是一个唯一标识符(跟加载基址有关)
卸载Notify时也会打印返回码
你可以把testNotify.sys复制几份同时加载来测试,每一个的标识都不一样

上面那张图是这样来的:
1.加载第一份testNotify.sys,驱动的标识是18,9个Notify注册成功8个(虚拟机中干净系统,8个坑占满)
2.加载ExtendNotify.sys,因为坑已满,所以会XX掉第一个坑即标识为18的驱动的Notify1
3.加载第二份testNotify.sys,驱动的标识是138,9个Notify全部注册成功
4.加载第三份testNotify.sys,驱动的标识是140,9个Notify全部注册成功
5.随便运行个程序,27个Notify全部工作...

至于为什么打印出的消息是这个顺序,大家思考便可知道~~
这个只是以PrcessNotify为例,还有CreateThreadNotify,LoadImageNotify等都可以扩展...

【旧文章搬运】扩展一下ProcessNotify~~的更多相关文章

  1. 【旧文章搬运】分析了一下360安全卫士的HOOK(二)——架构与实现

    原文发表于百度空间及看雪论坛,2009-10-14 看雪论坛地址:https://bbs.pediy.com/thread-99460.htm 刚发这篇文章的时候,因为内容涉及360的核心产品,文章被 ...

  2. 【旧文章搬运】Windbg+Vmware驱动调试入门(四)---VirtualKD内核调试加速工具

    原文发表于百度空间,2009-01-09========================================================================== 今天又想起 ...

  3. 【旧文章搬运】深入分析Win7的对象引用跟踪机制

    原文发表于百度空间及看雪论坛,2010-09-12 看雪论坛地址:https://bbs.pediy.com/thread-120296.htm============================ ...

  4. 【旧文章搬运】再谈隐藏进程中的DLL模块

    原文发表于百度空间,2009-09-17========================================================================== 相当老的话 ...

  5. 【旧文章搬运】Windows句柄表分配算法分析(一)

    原文发表于百度空间,2009-03-30========================================================================== 阅读提示: ...

  6. 【旧文章搬运】Windows句柄表格式

    原文发表于百度空间,2009-02-28========================================================================== 句柄是Wi ...

  7. 【旧文章搬运】更正一个枚举PspCidTable时的错误

    原文发表于百度空间及看雪论坛,2009-02-27 看雪论坛地址:https://bbs.pediy.com/thread-82919.htm============================= ...

  8. 【旧文章搬运】Windbg+Vmware驱动调试入门(二)---Vmware及GuestOS的设置

    原文发表于百度空间,2009-01-08========================================================================== 这一篇是主 ...

  9. 【旧文章搬运】炉子给的SYSTEM_HANDLE_TYPE有点错误

    原文发表于百度空间,2008-12-03========================================================================== 今天写程序 ...

随机推荐

  1. dropwizard问题记录1:如何进行mvn package打包,如何在项目目录下运行

    dropwizard的helloworld入门教程,跟着教程一步步写很容易,但是最后打包时暴露了自己底子太差的缺陷 mvn package操作 之前工作中完全没有接触过这种打包方式,都是直接打war包 ...

  2. Ubuntu 16.04下在Shell终端下使用nautilus快速打开窗口文件夹

    Ubunut 16.04默认使用nautilus进行管理资源文件夹,nautilus默认是支持参数传递的. 使用: nautilus /dirurl 打开当前文件夹(可以使用$PWD代替): naut ...

  3. 纯Java实现定时任务(转)

    第一种: import java.util.Timer; import java.util.TimerTask; /** * * 于第一种方式相比,优势 1>当启动和去取消任务时可以控制 2&g ...

  4. Spring的依赖注入概述

    以下内容引用自http://wiki.jikexueyuan.com/project/spring/dependency-injection.html: 每个基于Java应用程序都有几个对象,这些对象 ...

  5. 【spring boot】mybatis启动报错:Consider defining a bean of type 'com.newhope.interview.dao.UserMapper' in your configuration. 【Mapper类不能被找到】@Mapper 和@MapperScan注解的区别

    启动报错: 2018-05-16 17:22:58.161 ERROR 4080 --- Disconnected from the target VM, address: '127.0.0.1:50 ...

  6. Answer's Question about pointer

    When you create a new pointer, this will be in heap until you delete it.  So what you said is sort o ...

  7. SolidEdge 如何由装配图快速生成爆炸视图

    建立图纸精灵,组态中选择explode(没有下一步可选了)   点击完成即可绘制爆炸图

  8. mui + vue 模板

    示例代码: (function(mui, doc) { // 定义全局变量(计时器) var timer; // mui初始化 mui.init(); // 创建vue的实例 var app = ne ...

  9. CentOS 5.5下搭建部署独立SVN服务器全程详解

    SVN服务器有2种运行方式:1.独立服务器 (例如:svn://xxx.com/xxx):2.借助apache   (例如:http://svn.xxx.com/xxx):为了不依赖apache,我选 ...

  10. Elasticsearch 学习笔记 Elasticsearch及Elasticsearch head安装配置

    一.安装与配置 1.到官网下载Elasticsearch,https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.6. ...