注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

mie

 
 
 

日志

 
 

文件夹重定向问题  

2011-12-14 19:53:01|  分类: 驱动 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
        最近遇到一个文件夹重定向的问题。一般来说,文件夹重定向可以基于文件过滤驱动等技术实现。然而,我逆向跟踪一个驱动,发现它根本没有使用过滤驱动,而且也没有使用hook等技术。
        开始分析时,比较着急,就没有debug,只是静态分析,但看不出所以然。
        今天抽空再看了一下,发现这个驱动运行时,设备栈里面多了个driver对象。于是,我在IoCreateDevice函数上下断点。结果:
nt!IoCreateDevice
fltMgr!FltpCreateVolumeDeviceObject+0x32
fltMgr!FltpFsControlMountVolume+0x96
fltMgr!FltpFsControl+0x58
nt!IopfCallDriver+0x31
nt!IopMountVolume+0x1b9
nt!IopCheckVpbMounted+0x5b
nt!IopParseDevice+0x3c6
nt!ObpLookupObjectName+0x56a
nt!ObOpenObjectByName+0xeb
nt!IopCreateFile+0x407
nt!IoCreateFile+0x8e
nt!NtCreateFile+0x30
nt!KiFastCallEntry+0xf8
WARNING: Frame IP not in any known module. Following frames may be wrong.
0x7c92eb94
0x1882251
nt!KiSuspendThread+0x18
nt!KiDeliverApc+0x1e0
0x1890861
0x1896507

        原来是使用APC插入一个异步调用,这个异步调用完成driver对象的创建,并且还顺便把文件夹和驱动设备对象关联起来。从而,完成了文件夹的重定向。
        ——我其实也还不是很清楚里面的实现细节,要想彻底搞清楚,还得好好分析这个APC的代码才行,暂时不管了,大致清楚就可以了。
        这个代码够狠!



  评论这张
 
阅读(828)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016