zoukankan      html  css  js  c++  java
  • 不知道为什么,我这里出了问题

    其实,道理上说,的确,创建一个文件,是要有打开文件的这个过程的,

    但是不知道为什么,我这里根本拦截不到打开文件的这个过程。

    举个例子,

    前面初始化了Minifilter,然后注册了两个回调,进程创建回调和镜像加载回调

    红色部分为进程创建回调,其实进程创建回调被触发的时候,第一个镜像就已经被加载起来了,

    但是我不明白,为什么,第一个镜像加载回调会在进程创建回调后面触发

    子进程PID为344,进程创建回调触发之后,直接触发的镜像加载回调,Minifilter根本没有拦截到Create这个exe文件的操作

    紫色框部分为镜像加载回调

    绿色框部分为minifilter的Create回调,上面的一行为 Pre ,下面一行为Post,

    根本就没有拦截到 exe 的操作,我不明白,为什么我这里会这样。

    我的测试环境是Windows XP sp3 x86 ,内核版本 NT5.1 WDK版本2600

    我很想知道,这东西到底是根本没Create,还是怎样了,但是今天先看了一下 CreateProcess 源码,大致是

    BasepMapFile 这个函数把它们映射到内存的,而这个函数里面调用了2个函数 NtOpenfile 和 NtCreateSection ,第一个函数就是 Create
    (我没找到 IRP_MJ_OPEN 阿 , 0x00 是 IRP_MJ_CREATE)

    所以我很纳闷,不过不管怎么说,就是这么回事,minifilter抓不到


  • 相关阅读:
    17. Letter Combinations of a Phone Number
    77. Combinations
    90. Subsets II
    78. Subsets
    275. H-Index II
    154. Find Minimum in Rotated Sorted Array II
    153. Find Minimum in Rotated Sorted Array
    树状数组区间查询和单点更新
    树状数组区间查询和单点更新
    最小生成树 kuangbin专题最后一个题
  • 原文地址:https://www.cnblogs.com/suanguade/p/4086247.html
Copyright © 2011-2022 走看看