函数名:PsSetCreateProcessNotifyRoutine   //添加或删除进程创建退出例程!
原型:
NTSTATUS PsSetCreateProcessNotifyRoutine([in] PCREATE_PROCESS_NOTIFY_ROUTINE NotifyRoutine,[in] BOOLEAN                        Remove
);
参数
[in] NotifyRoutine
指定调用方提供的进程创建回调例程的入口点。请参阅PCREATE_PROCESS_NOTIFY_ROUTINE。
[in] Remove
指示是否应将 NotifyRoutine 指定的例程添加到系统的通知例程列表中,或从中删除该例程。如果为 FALSE,则将指定的例程添加到列表中。如果为 TRUE,则从列表中删除指定的例程。
返回值
PsSetCreateProcessNotify 例程可以返回下列值之一:
返回代码    描述
STATUS_SUCCESS
给定的 NotifyRoutine 现在已向系统注册。
STATUS_INVALID_PARAMETER
给定的 NotifyRoutine 已注册,因此此调用是冗余调用,或者系统已达到注册进程创建回调的限制。
 1. `打开WinDbg`2. WinDbg->U PsSetCreateProcessNotifyRoutine

 3. 取出红色框中的地址 fffff807`0ddfdc804. WinDbg->U fffff807`0ddfdc80 L200

 5. 继续取出地址 - 这其实就是一个进程回调数组首地址6. WinDbg->DQ fffff807`0dbbb060


数一数是十个回调,嗯我看下PChunter或其他工具,都一致。

7. 取第一个地址试试ffffe706`2105042f->掩码->&0xFFFFFFFFFFFFFFF8 = 0xFFFFE70621050428
8. 得到的还不是真正的对象地址,需要WinDbg->DQ 0xFFFFE70621050428


这时候就得到了所谓的回调入口地址,对比下方PChunter的内容确实是一致,是第一个回调对象!

如果创建的是EX好像有HANDLE的什么,就不细研究了。

内核进程回调遍历【记录】相关推荐

  1. clientdataset 遍历字段_解决DBGridEh遍历记录后不移动当前行位置的方法

    解决DBGridEh遍历记录后不移动当前行位置的方法 在用DBGridEh配合ClientDataSet使用时,需要知道用户选择了哪些记录,可用遍历记录的方法查询选择列是否为真,但在这之后,Clien ...

  2. Gilde 加载高斯模糊图片没有走到listener回调原因记录

    1.如下,用的Glide4.0 RequestOptions options = new RequestOptions().diskCacheStrategy(DiskCacheStrategy.NO ...

  3. 支付宝支付回调,回调日志记录

    1.支付报支付回调方法 public function aliPayNotify(){try {$app = PayService::alipay();$collect = $app->veri ...

  4. 寒江独钓 第二章(3)Hook分发函数和回调函数

    前面两节讲的是通过在设备栈上绑定一个新的设备实现键盘过滤.这是非常正统的方法,是合法软件行为.一般黑客软件不会采用这么正道的方法.     黑客可以通过修改一个已经存在的驱动对象(比如前面提到的Kbd ...

  5. C#学习记录(七)委托、高级委托

    目录 1.什么是委托 2.委托的一般使用 3.多播(multicast)委托 1.什么是委托 委托(delegate)是函数指针的升级版 实例C/C++中的函数指针 一切皆地址 变量(数据)是以某个地 ...

  6. C++回调函数用法(zz)

    一.回调函数 我们经常在C++设计时通过使用回调函数可以使有些应用(如定时器事件回调处理.用回调函数记录某操作进度等)变得非常方便和符合逻辑,那么它的内在机制如何呢,怎么定义呢?它和其它函数(比如钩子 ...

  7. 利用XSLT把ADO记录集转换成XML

    由于XML(可扩展标记语言:eXtensible Markup Language)真正的平台无关性,它正在逐渐成为数据传输的主要介质.XML是一种自描述的语言,数据本身就已经包含了元数据,即关于数据本 ...

  8. Python 装饰器记录总结 (终极版)

    Python 装饰器记录总结 (终极版) 原文链接:http://magicroc.com/2017/04/10/Python装饰器记录总结/ 装饰器是一个函数,一个用来包装函数的函数,装饰器在函数申 ...

  9. C++回调函数用法(zt)

    一回调函数 我们经常在C++设计时通过使用回调函数可以使有些应用(如定时器事件回调处理.用回调函数记录某操作进度等)变得非常方便和符合逻辑,那么它的内在机制如何呢,怎么定义呢?它和其它函数(比如钩子函 ...

  10. 彻彻底底了解回调函数

    什么是回调函数? 一,回调函数 我们经常在C 设计时通过使用回调函数可以使有些应用(如定时器事件回调处理.用回调函数记录某操作进度等)变得非常方便和符合逻辑,那么它的内在机制如何呢,怎么定义呢?它和其 ...

最新文章

  1. 每日一皮:强大的sudo ...
  2. 利用优盘安装win2008r2系统
  3. 使用CSS3的appearance属性改变元素的外观
  4. 最优间隔分类器-SVM
  5. Vue--- 一点车项目
  6. mysql授权 改表_mysql开启远程登陆(修改数据表和授权两种方法)
  7. 我最爱用的一款 Redis 可视化管理工具!好用到爆!!!
  8. 关于C语言include尖括号和双引号的对话
  9. 嘴上说着喜爱Java 9 ,身体却诚实地拥抱了Java 8
  10. Echarts数据可视化series-pie饼图,开发全解+完美注释
  11. AspNetPager控件+repeater+Ajax+存储过程实现高效分页,还有漂亮控件样式
  12. Nagios社区真有意思
  13. Tkinter教程(每天半小时,3天彻底掌握Tkinter)day1
  14. iOS开发之SEL用法
  15. 【shell案例】学员管理系统
  16. 囧人又做了哪些囧事呢?
  17. kylin在hadoop 中的架构图_Kylin |1.麒麟架构及原理
  18. MNN实践[C++版本]
  19. 如何学习 JavaScript
  20. 《系统》是南方周末2007年度最好的特稿

热门文章

  1. 各个音阶的频率_有谁知道音谱中的1234567各代表的频率是多少?
  2. BPM那些事儿——BPM与SOA的演进与展望
  3. AVOD-理解系列(一)
  4. Java实现打印进度条
  5. Zigbee 协议栈
  6. RestClientException: Could not extract response: no suitable HttpMessageConverter found for response
  7. SAO Utils 添加白色参考线
  8. 简单易懂的ueditor新手教程
  9. CityEngine建模全流程解析与分享【系列文章之一】
  10. 实现QQ主界面效果[图]