black73908
驱动牛犊
驱动牛犊
  • 注册日期2006-09-20
  • 最后登录2012-05-26
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望12点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
阅读:1899回复:5

请教:驱动器隐藏不了是怎么回事?

楼主#
更多 发布于:2008-03-29 22:24
1、HOOK
 ZwQueryInformationProcess
    __asm
    {
      push eax
      mov  eax, CR0
      and  eax, 0FFFEFFFFh
      mov  CR0, eax
      pop  eax
    }

    OldZwQueryInformationProcess=
    (ZWQUERYINFORMATIONPROCESS)InterlockedExchange(  (PLONG) &SYSTEMSERVICE(ZwQueryInformationProcess),
              (LONG) NewZwQueryInformationProcess);

    // REProtect memory
    __asm
    {
      push eax
      mov  eax, CR0
      or  eax, NOT 0FFFEFFFFh
      mov  CR0, eax
      pop  eax
    }

2、挂载MM,
        case IOCTL_MOUNTMGR_QUERY_POINTS:

            //设置完成回调函数
            KeInitializeEvent(&waitEvent, NotificationEvent, FALSE);
            IoCopyCurrentIrpStackLocationToNext(Irp);

            IoSetCompletionRoutine(    
                                                                                               Irp,
                                                                                           MMQueryCompletion,                            &waitEvent,                            TRUE,    TRUE,TRUE);

            status = IoCallDriver(ext->attached_to, Irp);
            if (STATUS_PENDING == status)
            {
                //等待完成
                status = KeWaitForSingleObject(&waitEvent,
                                                Executive,
                                                KernelMode,
                                                FALSE,
                                                NULL
                                                );
                ASSERT(STATUS_SUCCESS == status);
            }

            if (NT_SUCCESS(status))
            {
            mmPorints = (MOUNTMGR_MOUNT_POINTS *)
                                                                 Irp->AssociatedIrp.SystemBuffer;
            mmPorints->NumberOfMountPoints=0;
                                                                }
做这两件事情可以隐藏盘符,可是在磁盘管理下能看到,请教
该怎么办?谢谢。
JACK76
black73908
驱动牛犊
驱动牛犊
  • 注册日期2006-09-20
  • 最后登录2012-05-26
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望12点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2008-03-30 09:03
没人能帮我吗?
JACK76
black73908
驱动牛犊
驱动牛犊
  • 注册日期2006-09-20
  • 最后登录2012-05-26
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望12点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2008-03-30 16:09
这年头确实没厚道人。
JACK76
black73908
驱动牛犊
驱动牛犊
  • 注册日期2006-09-20
  • 最后登录2012-05-26
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望12点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
地板#
发布于:2008-04-01 20:14
没人知道怎么屏蔽磁盘管理吗?
JACK76
yandong_8212
驱动小牛
驱动小牛
  • 注册日期2006-07-28
  • 最后登录2011-02-11
  • 粉丝0
  • 关注0
  • 积分1046分
  • 威望464点
  • 贡献值1点
  • 好评度173点
  • 原创分0分
  • 专家分1分
地下室#
发布于:2008-04-03 11:03
打开FILEMON,仔细查看磁盘管理器到底做了什么工作,做有针对性的处理.不是别人不厚道,是有些东西别人也没接触过.
商务MSN:YanDong_8212@163.com
black73908
驱动牛犊
驱动牛犊
  • 注册日期2006-09-20
  • 最后登录2012-05-26
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望12点
  • 贡献值0点
  • 好评度11点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2008-04-03 12:31
这样啊,谢谢啊。不过磁盘管理器好像绕过了文件过滤驱动层。
FILEMON只能看到文件系统。
JACK76
游客

返回顶部