百度空间 | 百度首页 
               
 
文章列表
 
2009年06月30日 星期二 07:36

   做IRP过滤的时候用到..但很容易忘记..先放上来...

  

IoSetCompletionRoutine 是一个宏
#define IoSetCompletionRoutine( Irp, Routine, CompletionContext, Success, Error, Cancel ) { \
    PIO_STACK_LOCATION __irpSp;                                 

类别:默认分类 | 评论(0) | 浏览()
 
2009年06月26日 星期五 22:16

总算快放假了..翻翻电脑,,发现以前俩张有意义的照片...纪念下...

类别:默认分类 | 评论(18) | 浏览()
 
2009年06月18日 星期四 19:28

   系统中有一类对象叫" CALLBACK",你可以在对像目录 \CallBack 看到相关的对象.
NTSTATUS
ExCreateCallback(
    OUT PCALLBACK_OBJECT *CallbackObject,
    IN POBJECT_ATTRIBUTES ObjectAttributes,
    IN BOOLEAN Create,
    IN BOOLEAN AllowMultipleCallbacks
    );
PVOID
ExRegisterCallback(
   

类别:默认分类 | 评论(2) | 浏览()
 
2009年06月14日 星期日 23:25

     无聊..帖点照片...

  

类别:默认分类 | 评论(17) | 浏览()
 
2009年06月13日 星期六 12:13

为什么需要句柄?
句柄只是对对像的引用,当我们进入内核时,获取对象显然是很简单,但为什么还需要句柄

呢? 应该说我们需要句柄做为参数调用API. 因为直接操作对象,可能会涉及到许多的未导

出的东西,如果自己实现的话是不大现实,而调用标准的内核API又很多时候依赖于句柄,但

又很多时候因为种种原因,我们得

类别:默认分类 | 评论(1) | 浏览()
 
2009年06月02日 星期二 15:41

OSR上有一工具..POOLTAG...利用的原理是...调用NtQuerySystemInformation传入SystemPoolTagInformation来获取POOL TAG的信息的....这样的话很容易在RING3完成...我们很容易获取这个TAG...

在内核里其实就是利用...PPOOL_TRACKER_TABLE PoolTrackTable;
                                  

类别:默认分类 | 评论(9) | 浏览()
 
2009年05月31日 星期日 19:50

前言:
Yas Kit的进程检测因为对对象的判断太过严格,搜索对象办法也不是很好,导致检测的效果不好,而驱动检测方面也不大理想, 使用了其他ARK,发现也有相干的问题,于是找点时间调整原来的搜索办法,过程记录下来与各位分享,也希望各位能提出问题,解决之[Sysnap]


1 一个对象生成时,一般都调用了ObCreateObject,每个对象都有不同的数据结构,在内存用一段空间表示,所谓的内存搜索对象,就是在内存里找出这些数据结构出来.当然你应该猜到ObCreateObject会调用ExAllocatePoolWithTag,这

类别:默认分类 | 评论(2) | 浏览()
 
2009年05月28日 星期四 16:58

下面的代码只能用于IDE系统...理论上可以穿还原软件...也适合于大硬盘,因为采用LBA方式...代码比较简单..不排除问题...

#define IDE_REG_DATA_PORT      0x0000
#define IDE_SECTOR_BUF_SZ         512
#define IDEReadBlock(Address, Buffer, Count) \
(READ_PORT_BUFFER_USHORT((PUSHORT)((Address) + IDE_REG_DATA_PORT), (PUSHORT)(Buffer),

类别:默认分类 | 评论(2) | 浏览()
 
2009年05月28日 星期四 16:42

先简单说说这俩个进程...

SMSS

InitSessionManager..
1 创建私有堆(RtlCreateHeap)...
2创建对象目录(ZwCreateDirectoryObject)...

3创建LPC端口对象SmApiPort(NtCreatePort)
NtCreatePort创建一个端口,RtlCreateUserThread创建俩个用户线程来等待用户的请求
涉及到的API是 NtReplyWaitReceivePort具体看其使用方法

类别:默认分类 | 评论(1) | 浏览()
 
2009年05月27日 星期三 11:37

pagefile是个比较神奇的文件..首先我们很难打开它来进行相关的操作.当然也有办法...这里我们说一种办法...系统有一个未导出的变量 PMMPAGING_FILE MmPagingFile[MAX_PAGE_FILES];

你系统有多少个pagefile.sys MmPagingFile就有多少个有效元素, MmPagingFile每个元素的类型是PMMPAGING_FILE

  

类别:默认分类 | 评论(1) | 浏览()
 
     
 
 
文章分类
 
 
 
 
     
 
文章存档
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
     
 
最新文章评论
   

每次必附腿照
 

是8个....不过这张照片只照了俩个..
 

2个大男的在房间干什么?
 

哥在相片里是哪个?
 

回复Sysnap: I Love You
 
     


©2009 Baidu