发明名称 |
基于系统虚拟化技术的内核态Rootkit检测方法 |
摘要 |
本发明提供了一种基于系统虚拟化技术的内核态Rootkit检测方法,本发明通过对Rootkit原理与系统调用和LKM进行深入分析,得到内核态Rootkit隐藏自身模块信息这一行为特点。并针对这一特点,利用设计了基于视图交叉验证的Rootkit检测方法。本发明通过对Xen内核进行更改以截获系统调用,从而构建可信视图。利用目标客户机的用户态工具构建被感染视图。通过对比可信视图和被感染视图发现隐藏的模块。 |
申请公布号 |
CN103310152B |
申请公布日期 |
2016.12.28 |
申请号 |
CN201310138433.9 |
申请日期 |
2013.04.19 |
申请人 |
哈尔滨工业大学深圳研究生院 |
发明人 |
王轩;丁宇新;李晔;张加佳;赵海楠;于成龙;刘猛;李鑫鑫;张自力 |
分类号 |
G06F21/56(2013.01)I |
主分类号 |
G06F21/56(2013.01)I |
代理机构 |
深圳市科吉华烽知识产权事务所(普通合伙) 44248 |
代理人 |
胡吉科;孙伟 |
主权项 |
一种基于系统虚拟化技术的内核态Rootkit检测方法,其特征在于:采用如下的步骤对虚拟机视图和用户视图进行对比以发现隐藏模块:1)模块监控器初始化包含目标客户机的模块列表module_list信息的虚拟机视图V1;2)超级管理器模块监控目标客户机的系统调用;3)当超级管理器模块监控到发生系统调用sys_init_module()时记录其发生时间戳t1并通知模块监控器更新模块监控器虚拟机视图为V2,记录下V2构建完成的时间戳t2;4)若在t1和t2时间间隔内没有系统调用sys_delete_module()产生,则在分析器模块内对比视图V1和V2,若V1=V2,则说明存在隐藏项,调用超级管理器模块提取sys_init_module()的信息m,若<img file="FDA0000984842360000012.GIF" wi="170" he="63" />则标记m为Rootkit,给出警告并继续步骤5,否则若sys_delete_module()产生,跳到步骤7;5)模块获取器在被监控系统的用户空间中提取系统进程信息构建用户视图U,并将结果传回给分析器模块;6)在模块监控器利用根据Xenaccess提取process_list信息生成的视图V3,在分析器模块内对比视图U和视图V3,对任意进程P∈V2,若<img file="FDA0000984842360000011.GIF" wi="131" he="55" />则标记P为Rootkit;7)更新虚拟机视图V1使V1=V2,并重复步骤1)。 |
地址 |
518000 广东省深圳市南山区西丽镇深圳大学城哈工大校区 |