NTFS FSD HOOK
2016-04-18 11:39
281 查看
NTFS FSD HOOK
NTSTATUS FSDHookControl( IN BOOLEAN IsHook ) { NTSTATUS status = STATUS_SUCCESS; UNICODE_STRING uNTFS = {0}; PDRIVER_OBJECT NTFS = NULL; RtlInitUnicodeString( &uNTFS, L"\\FileSystem\\Ntfs" ); status = ObReferenceObjectByName( &uNTFS, OBJ_CASE_INSENSITIVE | OBJ_KERNEL_HANDLE, NULL, 0, *IoDriverObjectType, KernelMode, NULL, &NTFS); if ( ! NT_SUCCESS( status ) ) return status; if( IsHook ) NtfsCreateDispatch = InterlockedExchangePointer( &NTFS->MajorFunction[ IRP_MJ_CREATE ], NtfsCreateDispatchHook ); if( ! IsHook && MmIsAddressValid( NtfsCreateDispatch ) ) InterlockedExchangePointer( &NTFS->MajorFunction[ IRP_MJ_CREATE ], NtfsCreateDispatch ); status = ObDereferenceObject( NTFS ); return status; }
相关文章推荐
- 物资借用/归还登记表模板
- [置顶] iOS-发布状态界面github开源
- tomcat 角色介绍
- python UNIX_TIMESTAMP时间处理方法分析
- ZABBIX 之python脚本邮件报警配置
- [转]Go语言并发之美
- Photoshop设计青春洋溢的音乐厅形象站台广告
- LeetCode *** 95. Unique Binary Search Trees II
- [C++11]新特性——引入了nullptr
- 2015全国硕士研究生计算机考研真题(附答案)
- 机器学习之详解Logistic回归
- 从头认识多线程-1.12 suspend和resume缺点-不同步
- java容器类---概述
- 【转】关于127.0.0.1地址的疑惑
- spring MVC原理
- mysql ON DUPLICATE KEY UPDATE语句示例
- Ubuntu Linux内核编译步骤
- swift 中的闭包回调
- 《深入理解计算机系统》读书笔记
- cocos2dx读取excel文件