当前位置: 首页 > Windows
  • ETW监控进程

    #include <windows.h> #include <stdio.h> #include <conio.h> #include <strsafe.h> #include <wbemidl.h> #include <wmistr.h> #include <evntrace.h> #include <Evntcons.h> #include <vector> #include <tdh.h> #include <string> #include &l ...

    阅读全文
    作者:Socarates | 分类:内核 | 阅读:759 views | 标签:, ,
  • ETW的使用

    1.准备知识 ETW全称Event Tracing for Windows,可以从名称中看出来ETW是用来进行事件追踪的。在ETW中,使用ETW输出追踪消息的目标程序称之为提供器Provider,接收和查看追踪消息的工具或文件被称之为消耗器Consumer,负责控制追踪会话的工具称为控制器Controller。3者之间的关系如图 用于支持ETW传输追 ...

    阅读全文
    作者:Socarates | 分类:内核 | 阅读:825 views | 标签:, , ,
  • 服务自启动

    服务程序可以作为自启动的一种,其往往位于后台运行,没有任何交互。系统服务程序运行在Session 0上,由于Session 0隔离,所以系统服务与桌面进程之间不能进行交互。各个会话之间是相互独立的,在不同会话中运行的实例,相互之间不能发送Windows消息,共享UI元素,或者是在没有指定有权限访问全局名字空间的情况下共享 ...

    阅读全文
    作者:Socarates | 分类:内核 | 阅读:445 views | 标签:,
  • Windows过滤平台WFP

    一、前言 在WFP之前,由于网络数据包处理比较复杂,诸如:NDIS Filter、TDI、Windows LSP,所以在Vista之后,微软开发一种框架,称之为WFP(Windows过滤平台),其将NDIS、TDI等诸多细节隐藏了起来,用一系列WFP相关的内核API进行分装,使得开发人员可以更加方便地编写网络数据包过滤驱动。WFP可用来开发防 ...

    阅读全文
    作者:Socarates | 分类:内核 | 阅读:896 views | 标签:, , ,
  • MiniFilter

    一、前言 由于sFilter过于复杂,微软于是对其进行了简化封装,并提供了接口进行驱动的编写。MiniFilter是由过滤管理器与过滤驱动组成的,其中过滤驱动还有着altitude(inf文件中定义),也就是高度,高度值越大,其位于设备栈中的位置越靠前,并且其决定了过滤驱动在设备栈中的位置,所以如下图,驱动a比驱动b ...

    阅读全文
    作者:Socarates | 分类:内核 | 阅读:509 views | 标签:, , ,
  • 分层驱动模型

    一、简介 IRP是在设备栈上进行传递的,由高层传递给底层,而每一层的设备都会对应一个IO_STACK_LOCATION类型的IO堆栈用来记录IRP到达本层设备时所作的操作。而当IRP被某一层设备完成时,IO堆栈会一层一层地弹出,这称之为设备栈的回卷。 我们现在看见了,IRP在传递的时候,会经过好几层的设备,每一 ...

    阅读全文
    作者:Socarates | 分类:内核 | 阅读:515 views | 标签:, ,
  • 驱动调用驱动

    假设我们现在有一个DriverA,我们要编写一个DriverB来对DriverA进行调用。 那么有下列几种方法: 一.同步调用 1.在DriverB中调用ZwReadFile读取DriverA的设备对象,ZwReadFile会创建IRP_MJ_READ,随后将此IRP发送给DriverA。 2.DriverA在收到IRP_MJ_READ后,调用Read类型的派遣函数,函数内部将IR ...

    阅读全文
    作者:Socarates | 分类:内核 | 阅读:444 views | 标签:,