能力值:
( LV9,RANK:610 )
|
-
-
|
能力值:
( LV9,RANK:610 )
|
-
-
|
能力值:
( LV9,RANK:610 )
|
-
-
[原创]A-Protect的一个BSOD
call hook其实也一样 解析一下原本call的地址,然后直接jmp过去就行了。返回地址不需要修改。
这个功能还是蛮有用的 对付那些有定时检查(简单检查,如果深入检查就。。。)的Inline钩子。
|
能力值:
( LV9,RANK:610 )
|
-
-
|
能力值:
( LV9,RANK:610 )
|
-
-
|
能力值:
( LV9,RANK:610 )
|
-
-
|
能力值:
( LV9,RANK:610 )
|
-
-
[原创]一个简单的驱动的反编译
逆的有点小问题。
PreOperation 中
if (nameinfo)
{
FltReleaseFileNameInformation(nameinfo);
}
应该放在return之前。。。
要不就内存泄漏了
|
能力值:
( LV9,RANK:610 )
|
-
-
|
能力值:
( LV9,RANK:610 )
|
-
-
[求助]miniFilter PreSetInformationFile 修改参数
preoperation 中修改callbackdata是不会影响postoperation中的callbackdata的
只会对下一层有影响
这个是对的
关键我想修改 ‘新名字’参数
比如应用层修改 c:\a.txt => c:\b.txt
我想在驱动里把 c:\b.txt 修改为 c:\c.txt 而且应用层还认为修改成功了 实际上重命名成 c.txt了
不知道我表达清楚了没有。
|
能力值:
( LV9,RANK:610 )
|
-
-
|
能力值:
( LV9,RANK:610 )
|
-
-
|
能力值:
( LV9,RANK:610 )
|
-
-
[求助]卸载HOOK
如果是应用层
可以先挂起其他线程,查看其他每个线程的EIP在不在这范围之内
如果在的话 就先跑一会再挂起
如果是R0
把IRQL提高到DPC级别 然后Unhook,但是这样不能保证其他线程EIP是否在这里面,不能从根本上杜绝。
R0暂时想不到好的处理方案。
所以R0做inline钩子 最好是用原子操作修改call地址 这样最保险
|
能力值:
( LV9,RANK:610 )
|
-
-
|