内核回调的触发时机

自己验证的

 

环境WinXP SP3 x86

 

进程创建回调

  进程被影射进内存之后,仅仅是被影射进来之后。

  也就是进程内部空间的修改可能会修改到应用程序文件。

  这时有一条线程存在,但是没有被运行,也就是说,主线程存在,但是还没有执行到exe 的 oep。

  这时可以做的操作不多,

  可以插入APC,但是不可以修改进程空间的任何内存空间,因为被修改的地方可能会直接被影射到文件中。

 

镜像加载回调

  一个镜像被加载(影射)进内存之后。

  这时仍然不能对进程内部空间作修改,

  同样,这时仍然没有执行到 oep,

  主线程也仍然没有运行。

  可以插入APC。

  第一个被加载的镜像就是该进程的应用程序文件,镜像基址为建议加载地址,或者重定位加载地址。

  第二个被加载的镜像为 ntdll.dll

  然后依次为 kernel32 user32 gdi32

  当ntdll被加载的时候,仍然不能修改各种进程内部空间的数据。只要修改,都有可能被保存到文件。

 

注册表回调

  待测试

 

线程回调

  待测试

 

posted @   穷到底  阅读(415)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
点击右上角即可分享
微信分享提示