[发明专利]内核级恶意软件查杀的方法和装置在审
申请号: | 201310652289.0 | 申请日: | 2013-12-05 |
公开(公告)号: | CN103679027A | 公开(公告)日: | 2014-03-26 |
发明(设计)人: | 邵坚磊 | 申请(专利权)人: | 北京奇虎科技有限公司;奇智软件(北京)有限公司 |
主分类号: | G06F21/56 | 分类号: | G06F21/56 |
代理公司: | 北京智汇东方知识产权代理事务所(普通合伙) 11391 | 代理人: | 康正德;薛峰 |
地址: | 100088 北京市西城区新*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 内核 恶意 软件 方法 装置 | ||
技术领域
本发明涉及计算机技术领域,特别是涉及一种内核级恶意软件查杀的方法和装置。
背景技术
目前随着杀毒软件的日益完善,病毒木马与杀软的对抗已经由过去的,免杀逃避等被动行为,转变为主动对抗结束杀软进程等主动行为。恶意程序会根据杀毒软件的名称扫描在操作系统中运行的杀毒软件的进程,并结束杀毒软件的进程,使得杀毒软件不能执行杀毒操作。
比如2012年肆虐我国的十大计算机病毒中的排名第一和第二的病毒,鬼影系列和AV(Anti-Virus,反病毒)终结者系列都会结束杀毒软件的进程,导致中毒后极难查杀。这些病毒会在感染系统后,加载驱动枚举所有的进程,发现是杀软的进程就一律终止进程。由于在内核级进行的处理,导致对抗很困难。
现有的一些技术方案是通过一些专杀,更改名字来进行处理,但由于只要供用户下载的软件,都可以被恶意程序作者获得,所以还是可以被木马加入终止列表中。
一般情况下,只能让用户手动修改随机杀毒软件的名字,来进行启动,但是这种方式导致了很大的麻烦,同时很多杀软自保是根据名字来进行保护的,修改名字也会导致自保失效。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的适于内核级恶意软件查杀的方法和相应地装置。
依据本发明的一个方面,提供一种内核级恶意软件查杀的方法,包括:
获取操作系统中记录当前正在运行的进程间指向关系的数据结构;
在数据结构中定位已加载的杀毒软件进程的前方进程和后方进程,其中,前方进程为杀毒软件进程所指向的进程,后方进程为指向杀毒软件进程的进程;
将前方进程和后方进程的指向关系修改为后方进程直接指向前方进程;
通过已隐藏的杀毒软件对所述操作系统进行恶意软件的查杀。
可选地,获取操作系统中记录当前正在运行的进程间指向关系的数据结构,包括:
接收用户对内核级的恶意软件的查杀请求;
通过预先启动的保护工具执行获取操作系统中记录当前正在运行的进程间指向关系的数据结构的操作。
可选地,获取操作系统中记录当前正在运行的进程间指向关系的数据结构,包括:
在内存中读取用于记录操作系统当前正在运行的进程的进程信息的双向链表;
在双向链表中读取用于记录进程间指向关系的数据结构。
可选地,双向链表为PsAcvtiveProcessList链表。
可选地,数据结构为EPROCESS结构;
其中,EPROCESS结构中包括LIST_ENTRY结构,LIST_ENTRY结构中包括指针成员FLINK和BLINK,FLINK中记录的指针用于指向当前EPROCESS结构所属进程的前方进程,BLINK中记录的指针用于指向当前EPROCESS结构所属进程的后方进程。
可选地,在数据结构中定位已加载的杀毒软件进程的前方进程和后方进程,包括:
查找与已加载的杀毒软件进程对应的EPROCESS结构;
读取EPROCESS结构中的指针成员FLINK和BLINK所记录的指针;
通过指针成员FLINK和BLINK所记录的指针定位杀毒软件的前方进程和后方进程。
可选地,在所述数据结构中定位已加载的杀毒软件进程的前方进程和后方进程,包括:
在所述双向链表中摘除所述杀毒软件进程的自身信息。
可选地,在所述双向链表中摘除所述杀毒软件进程的自身信息,包括:
将前方进程对应的EPROCESS结构中的BLINK中记录的指针修改为指向后方进程;
将后方进程对应的EPROCESS结构中的FLINK中记录的指针修改为指向前方进程。
依据本发明的一个方面,还提供了一种内核级恶意软件查杀的装置,包括:
数据结构获取模块,配置为获取操作系统中记录当前正在运行的进程间指向关系的数据结构;
进程定位模块,配置为在数据结构中定位已加载的杀毒软件进程的前方进程和后方进程,其中,前方进程为杀毒软件进程所指向的进程,后方进程为指向杀毒软件进程的进程;
指向关系修改模块,配置为将前方进程和后方进程的指向关系修改为后方进程直接指向前方进程;
查杀模块,配置为通过已隐藏的杀毒软件对所述操作系统进行恶意软件的查杀。
可选地,所述数据结构获取模块配置为按照如下方式获取操作系统中记录当前正在运行的进程间指向关系的数据结构:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇虎科技有限公司;奇智软件(北京)有限公司,未经北京奇虎科技有限公司;奇智软件(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310652289.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种双定子直线振荡电机
- 下一篇:一种3D动漫演示装置