[发明专利]病毒的查杀方法及装置有效
申请号: | 201410075200.3 | 申请日: | 2014-03-03 |
公开(公告)号: | CN103888447B | 公开(公告)日: | 2017-05-24 |
发明(设计)人: | 陈翼展 | 申请(专利权)人: | 珠海市君天电子科技有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;G06F21/56 |
代理公司: | 北京清亦华知识产权代理事务所(普通合伙)11201 | 代理人: | 张大威 |
地址: | 519070 广东省珠海市唐家*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 病毒 方法 装置 | ||
1.一种病毒的查杀方法,其特征在于,包括:
获取当前内核所有工作线程的线程对象,其中,所述获取当前内核所有工作线程的线程对象包括:扫描所有的工作线程创建函数所在的内存;根据所述内存定位出所述工作线程所在队列组成的数组的首地址;以及根据所述首地址遍历各个队列,获得所有工作线程的线程对象;
对各个线程对象的内核栈进行回溯以获得对应工作线程的起始地址,其中,所述对各个线程对象的内核栈进行回溯以获得对应工作线程的起始地址包括:获得各个线程对象的栈基址,根据所述栈基址通过内存特征回溯对应的内核栈,获得对应工作线程的起始地址;
根据所述对应工作线程的起始地址获得对应工作线程所在的模块路径;以及
根据所述模块路径定位到病毒所启动的工作线程,挂起病毒所启动的工作线程,并清除所述病毒。
2.根据权利要求1所述的方法,其特征在于,所述根据所述对应工作线程的起始地址获得对应工作线程所在的模块路径包括:
获得内核模块列表及其对应的内存范围;
将对应工作线程的起始地址与所述内存范围进行匹配,确定对应工作线程所在的模块路径。
3.根据权利要求2所述的方法,其特征在于,所述获得内核模块列表及其对应的内存范围包括:
通过系统信息查询函数获得内核模块列表及其对应的内存范围。
4.根据权利要求1所述的方法,其特征在于,所述根据所述模块路径定位到病毒所启动的工作线程,挂起病毒所启动的工作线程,并清除所述病毒,包括:
根据所述模块路径判断对应的工作线程是否为病毒所启动的工作线程,若是,则挂起所述病毒所启动的工作线程,灭活并清除所述病毒。
5.根据权利要求4所述的方法,其特征在于,所述挂起所述病毒所启动的工作线程包括:
调用线程挂起函数挂起所述病毒所启动的工作线程。
6.一种病毒的查杀装置,其特征在于,包括:
对象获取模块,用于获取当前内核所有工作线程的线程对象,其中,所述对象获取模块,包括:扫描单元,用于扫描所有的工作线程创建函数所在的内存;定位单元,用于根据所述扫描单元扫描到的所述内存定位出所述工作线程所在队列组成的数组的首地址;以及遍历单元,用于根据所述定位单元定位出的所述首地址遍历各个队列,获得所有工作线程的线程对象;
回溯模块,用于对各个线程对象的内核栈进行回溯以获得对应工作线程的起始地址,其中,所述回溯模块,具体用于:获得各个线程对象的栈基址,根据所述栈基址通过内存特征回溯对应的内核栈,获得对应工作线程的起始地址;
路径获得模块,用于根据所述对应工作线程的起始地址获得对应工作线程所在的模块路径;以及
查杀模块,用于根据所述路径获得模块获得的模块路径定位到病毒所启动的工作线程,挂起病毒所启动的工作线程,并清除所述病毒。
7.根据权利要求6所述的装置,其特征在于,所述路径获得模块,包括:
获得单元,用于获得内核模块列表及其对应的内存范围;
匹配确定单元,用于将所述回溯模块获得的对应工作线程的起始地址与所述获得单元获得的内存范围进行匹配,确定对应工作线程所在的模块路径。
8.根据权利要求7所述的装置,其特征在于,所述获得单元,具体用于:
通过系统信息查询函数获得内核模块列表及其对应的内存范围。
9.根据权利要求6所述的装置,其特征在于,所述查杀模块,具体用于:
根据所述模块路径判断对应的工作线程是否为病毒所启动的工作线程,若是,则挂起所述病毒所启动的工作线程,灭活并清除所述病毒。
10.根据权利要求9所述的装置,其特征在于,所述查杀模块,具体用于:
调用线程挂起函数挂起所述病毒所启动的工作线程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于珠海市君天电子科技有限公司,未经珠海市君天电子科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410075200.3/1.html,转载请声明来源钻瓜专利网。