原文发表于百度空间,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. 纯Java实现定时任务(转)

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

  2. Activiti Model Editor组件

    通过Activiti Modeler架构图可知,Activiti Explorer采用的是Vaadin框架. Vaadin 是一种 Java Web 应用程序的开发框架, 其设计目标是便利地创建和维护 ...

  3. SolidEdge 如何绘制剖视图

    如果要创建剖视图,则点击切割平面按钮,然后绘制剖面线,画好之后点击完成   然后点击剖视图按钮,鼠标单击刚才的剖面线,往要的方向拖动,即可生成剖面视图   剖视图有时也需要用到旋转剖视图 如下图所示, ...

  4. 【转载】轻松搞懂WebService工作原理

    用更简单的方式给大家谈谈WebService,让你更快更容易理解,希望对初学者有所帮助. WebService是基于网络的.分布式的模块化组件. 我们直接来看WebService的一个简易工作流程: ...

  5. AML LCD debuged

    root@k101:/ # cat /sys/class/lcd/debug                                          Usage:     echo basi ...

  6. ++*p,(*p)++,*p++与*++p四者的区别

    四者的区别(*和++优先级相同默认从右向左运算) ++*p相当于++(*p),表示先给p指向的变量值加1,然后取该变量的值. (*p)++相当于先取p指向的变量,然后该变量值加1. *p++相当于*( ...

  7. Boom!!!计算机系统,从理解到爆炸,Bomblab

    进入文件夹下 ./bomb 開始执行炸弹 对于炸弹command not found之类的鬼畜情况: chmod 777 bomb 然后再执行炸弹 objdump -d bomb > bomb. ...

  8. 三分钟教你学Git(十四) 之 线下传输仓库

    有时候还有一个人不能从远程直接clone仓库或者说由于非常大,clone非常慢或其他原因.我们能够使用bundle命令将Git仓库打包,然后通过U盘或者是其他介质拷贝给他,这样他拿到打包好的仓库后能够 ...

  9. UI类继承关系图

  10. Java Management Extensions (JMX) Flume

    Lesson: Overview of the JMX Technology (The Java™ Tutorials > Java Management Extensions (JMX)) h ...