著录项信息
专利名称 | 一种防范感染式病毒感染的方法和装置 |
申请号 | CN201210559448.8 | 申请日期 | 2012-12-21 |
法律状态 | 暂无 | 申报国家 | 中国 |
公开/公告日 | 2013-10-16 | 公开/公告号 | CN103353930A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06F21/56 | IPC分类号 | G;0;6;F;2;1;/;5;6查看分类表>
|
申请人 | 北京安天电子设备有限公司 | 申请人地址 | 北京市海淀区闵庄路3号清华科技园玉泉慧谷一期1号楼
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 北京安天网络安全技术有限公司 | 当前权利人 | 北京安天网络安全技术有限公司 |
发明人 | 刘佳男;奚振弟;李柏松 |
代理机构 | 暂无 | 代理人 | 暂无 |
摘要
本发明公开了一种防范感染式病毒感染的方法,包括:遍历当前系统的所有进程以及监视系统新创建的进程;获取系统中所有进程信息,对运行中的进程进行过滤;对安全策略中的函数进行hook处理,记录或备份所述函数调用前的相关文件信息;监视过滤后的进程,对调用的函数信息进行权值处理,进程结束时将与所述进程相关的文件信息进行权值处理;对所述进程的函数信息和文件信息的权值计算和值,按照安全策略中的约定数值范围,输出所述和值相应的感染式恶意代码的进程的判定结果。还公开了一种防范感染式病毒感染的装置。本发明可以有效的监控感染式恶意代码的运行,根据监控感染式恶意代码的运行状态,判断恶意代码的运行进度,并加以恢复。
1.一种防范感染式病毒感染的方法,其特征在于,包括:
遍历当前系统的所有进程以及监视系统新创建的进程;
获取系统中所有进程信息,对运行中的进程进行过滤;
对安全策略中的函数进行hook处理,记录或备份所述函数调用前的相关文件信息;
监视过滤后的进程,若所述进程调用已被hook的函数,则对所述函数信息进行权值处理,当所监视的进程结束时将与所述进程相关的文件信息进行权值处理;
对所述进程的函数信息和文件信息的权值计算和值,按照安全策略中的约定数值范围,输出所述和值相应的感染式恶意代码的进程的判定结果。
2.如权利要求1所述的方法,其特征在于,所述进程信息包括:所述进程的当前程序的窗口信息、所述进程的映像文件的完整路径,以及所述映像文件信息。
3.如权利要求1所述的方法,其特征在于,对运行中的进程进行过滤具体为排除掉白名单列表中的进程。
4.如权利要求1所述的方法,其特征在于,对运行中的进程进行过滤具体为排除掉根据所获取的进程信息判断为受信的进程。
5.如权利要求1所述的方法,其特征在于,对所述进程的函数信息和文件信息的权值计算和值之后,根据所述函数信息和文件信息确定修正值,计算所述和值与修正值的修正和值,按照安全策略中的约定数值范围,输出所述修正和值相应的感染式恶意代码的进程的判定结果。
6.如权利要求1所述的方法,其特征在于,所述判定结果包括:不是感染式恶意代码的进程,不提示;可能是感染式恶意代码的进程,进行提示;确定是感染式恶意代码的进程,还原被感染程序的状态,提示对恶意代码进行处理。
7.一种防范感染式病毒感染的装置,其特征在于,包括:
进程单元,用于遍历当前系统的所有进程以及监视系统新创建的进程;
过滤单元,用于获取系统中所有进程信息,对运行中的进程进行过滤;
hook单元,用于对安全策略中的函数进行hook处理,记录或备份所述函数调用前的相关文件信息;
监视单元,用于监视过滤后的进程,若所述进程调用已被hook的函数,则记录所述函数信息,当所监视的进程结束时,记录与所述进程相关的文件信息;
权值单元,用于对所述函数信息和文件信息进行权值处理;
判定单元,用于对权值单元处理后的函数信息和文件信息的权值计算和值,按照安全策略中的约定数值范围,输出所述和值相应的感染式恶意代码的进程的判定结果。
8.如权利要求7所述的装置,其特征在于,还包括:
修正单元,用于对所述进程的函数信息和文件信息的权值计算和值之后,根据所述函数信息和文件信息确定修正值,计算所述和值与修正值的修正和值,按照安全策略中的约定数值范围,输出所述修正和值相应的感染式恶意代码的进程的判定结果。
9.如权利要求7所述的装置,其特征在于,还包括:
报警单元,用于对判定结果进行提示:不是感染式恶意代码的进程,不提示;可能是感染式恶意代码的进程,进行提示;确定是感染式恶意代码的进程,还原被感染程序的状态,提示对恶意代码进行处理。
一种防范感染式病毒感染的方法和装置\n技术领域\n[0001] 本发明涉及计算机网络安全技术领域,尤其是涉及一种防范感染式病毒感染的方法和装置。\n背景技术\n[0002] 随着互联网的发展,恶意代码对计算机用户的威胁表现的也越来越严重。近年,单纯感染式恶意代码的数量在逐渐减少,但并不意味着感染式恶意代码的威胁在逐渐降低,相反随着当前的恶意代码的综合性的增强,恶意代码的分类也越来越模糊,一个恶意代码往往具有多种恶意代码类型的特性。由于感染式恶意代码具有强大的传播能力和隐藏能力,依然一直被恶意代码的编写者所使用。\n[0003] 当前对感染式恶意代码的防范技术主要通过hips(Host-based Intrusion Prevention System)和安全软件的防火墙对其进行拦截;杀毒软件和专杀工具对被感染文件的检测和修复。并没有专门针对感染式恶意代码的防范工具。由于hips和安全软件的防火墙用于恶意代码的防范需要专业的技术知识作为支撑,而杀毒软件和专杀工具的修复又是在感染式恶意代码感染其他文件后的补救性工作。鉴于上面的原因,提出一种可以在感染式恶意代码在感染其他文件以前对其进行防范,也可以使非专业用户能够清晰明确的完成用户需要介入的操作就可以实现对感染式恶意代码感染的防范的方法可以有效降低感染式恶意代码对互联网和用户主机的危害程度。\n发明内容\n[0004] 本发明针对在windows平台下,感染式病毒在运行后感染其他文件时,通过底层驱动在系统添加一个主流内存的服务。此服务对所有进程的一些关键函数进行监控和hook,而后通过加权机制对监控和hook的结果进行计算。通过计算结果对判定为正在进行感染其他文件的程序进行处理,以达到防范对其他文件感染的目的。\n[0005] 本发明提供了一种防范感染式病毒感染的方法,包括:\n[0006] 遍历当前系统的所有进程以及监视系统新创建的进程;\n[0007] 获取系统中所有进程信息,对运行中的进程进行过滤;\n[0008] 对安全策略中的函数进行hook处理,记录或备份所述函数调用前的相关文件信息;\n[0009] 监视过滤后的进程,若所述进程调用已被hook的函数,则对所述函数信息进行权值处理,当所监视的进程结束时将与所述进程相关的文件信息进行权值处理;\n[0010] 对所述进程的函数信息和文件信息的权值计算和值,按照安全策略中的约定数值范围,输出所述和值相应的感染式恶意代码的进程的判定结果。\n[0011] 本发明还提供了一种防范感染式病毒感染的装置,包括:\n[0012] 进程单元,用于遍历当前系统的所有进程以及监视系统新创建的进程;\n[0013] 过滤单元,用于获取系统中所有进程信息,对运行中的进程进行过滤;\n[0014] hook单元,用于对安全策略中的函数进行hook处理,记录或备份所述函数调用前的相关文件信息;\n[0015] 监视单元,用于监视过滤后的进程,若所述进程调用已被hook的函数,则记录所述函数信息,当所监视的进程结束时,记录与所述进程相关的文件信息;\n[0016] 权值单元,用于对所述函数信息和文件信息进行权值处理;\n[0017] 判定单元,用于对权值单元处理后的函数信息和文件信息的权值计算和值,按照安全策略中的约定数值范围,输出所述和值相应的感染式恶意代码的进程的判定结果。\n[0018] 本发明通过各种信息对进程白名单的选定,以及进程在实际运行过程中对进程的信息判断,保证被监控计算机的运行效率,减少对进程的监控。\n[0019] 权值提取的依据是根据对大量感染式病毒的分析,发现感染式病毒的一些常见、通用的运行方法等。权值的计算是通过对大量感染式恶意代码的分析,总结其运行过程中常见连贯行为具有高度的可疑性。\n[0020] 权值处理部分应有主程序调用,权值处理部分返回结果给主程序。\n[0021] 本发明通过进程的白名单过滤功能,保证计算机能够稳定、正常的运行。\n[0022] 可以有效的监控感染式恶意代码的运行,根据监控感染式恶意代码的运行状态,判断恶意代码的运行进度,并加以恢复。\n[0023] 通过对感染式恶意代码的多种感染方式进行监控可以对多种类型的感染式病毒进行有效的防范。既可以对全盘感染式的恶意代码进防范,也可以对只感染指定程序的感染式恶意代码以及其他的各种类型进行有效的防范。\n附图说明\n[0024] 为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。\n[0025] 图1为本发明防范感染式病毒感染的方法流程图;\n[0026] 图2为本发明防范感染式病毒感染的方法实施例流程图;\n[0027] 图3为本发明防范感染式病毒感染的装置结构示意图;\n[0028] 图4为本发明权值输入列表;\n[0029] 图5为本发明权值计算公式表。\n具体实施方式\n[0030] 为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明中技术方案作进一步详细的说明。\n[0031] 如图1所示,本发明的方法流程图,如图所示:\n[0032] S101:遍历当前系统的所有进程,并监视所有新进程的创建。获取当前进程列表可通过系统Native API获取,监视进程创建可以通过挂钩相应API。\n[0033] 获取进程信息。获取进程映像路径以及模块等详细信息,保存为后续操作提供数据。\n[0034] S102:进程列表过滤排除。对运行的进程按白名单过滤,只监视白名单外的进程。\n如果为白名单进程则直接退出监控。\n[0035] S103:hook关键函数和函数处理。对感染式恶意代码感染过程中会用到的函数作hook处理,监视程序的操作。对某些函数作处理,在不破坏程序正常运行的情况下,确保可恢复程序对系统中文件以及其他各类信息数据的修 改 。\n[0036] S104:关键函数权值提交。将监控到的程序操作信息提交到权值处理部分。\n[0037] 其他相关信息获取。判断进程是否已经结束,如果进程结束对部分有价值信息的提取并提交到权值处理部分。\n[0038] S105:权值处理。根据输入和计算方法进行计算,得到结果。\n[0039] 然后进行结果输出。根据权值的数值范围输出相应的信息给用户,对于在安全范围内的权值,将不提示用户。\n[0040] 下面给出本发明比较完整的实施例,如图2所示:\n[0041] S201:遍历当前系统的所有进程,并监视所有新进程的创建。\n[0042] 获 取 当 前 系 统 的 进 程 列 表 ,可以 通 过 系 统 N a t i v e A P I :\n(NtQuerySystemInformation)来实现,也可以通过CreateToolhelpSnapshot函数来获得。\n[0043] 监视进程创建可通过挂钩系统api(例如CreateProcess、CreateProcessA、CreateProcessW等)来实现。挂钩后可以截获系统的所有进程的创建。\n[0044] S202:获取进程信息。\n[0045] 获取的进程信息,应包含当前程序是否有窗口,以及窗口大小,是否可以显示等信息。进程映像文件的完整路径,以及映像文件的文件版权信息、文件大小、入口点,PE文件节数量等信息。\n[0046] S203:进程列表过滤排除。\n[0047] 进程列表的过滤和排除主要有分3个部分:\n[0048] 1)白名单列表进行过滤,过滤系统进程,对于系统自身的关键进程(csrss.exe、winlogon.exe等)直接予以信任,不加监控。直接转到S210。\n[0049] 2)对于非系统运行必须的进程、笔记本附带工具的进程和常用工具软件的进程需要加以验证后 判断 是否监控(例如系统的升级、系统任务管理器、输入法等容易被病毒感染的进程)。如果需要监控转到S204,如果经判定为信任进程转到S210。此处的过滤要对进程对应的文件进行判断,判断的依据是通过S202监控得到的数据。\n[0050] 3)对于由于S202获取的信息过少甚至进程本身根本无法提取任何信息而无法确定的信息需进行重点监控。\n[0051] S204:hook关键函数和函数处理。\n[0052] 对感染式恶意代码感染过程中会用到的函数作hook处理,如文件遍历函数、文件修改相关函数(包括直接修改和文件内存映射等),以此监视程序是否会对系统的文件进行操作。对于可能会对文件进行修改的函数,在函数执行前需对原始文件做备份处理,使得在确定当前程序的修改为感染式恶意代码感染时可以将被修改的文件恢复到被恶意代码感染以前的状态。以取保系统的安全性。具体是指在某些函数操作会对系统中的文件或注册表或配置信息等进行修改时,对被修改的部分,先做备份或记录,如果判定为恶意后对其进行还原或改回。\n[0053] 具体备份是调用关键函数时,由于关键函数被hook,不执行关键函数的代码,执行hook代码。而hook代码对关键函数作处理,备份数据、记录修改等。\n[0054] S205:关键函数权值提交。\n[0055] 当被hook的函数被调用时将发送相应的信息到权值处理部分,以供权值处理部分对当前监控的程序进行判定。其中提交的信息包括被执行的函数,以及函数对应的参数。\n[0056] S206:其他相关信息获取。\n[0057] 判断进程是否已经结束,如果进程结束需要提交进程映像文件是否依然存在,相同目录下的文件是否被修改过等信息到权值处理部分。\n[0058] S207:权值处理部分。根据输入结果和计算方法进行计算,并得到结果。\n[0059] 权值输入列表如图4所示。\n[0060] 权值计算公式如图5所示。\n[0061] 其中,N1、N2、N3……为权值修正值,意义在于当两个不同的输出状态同时出现时,其权值将会被放大,不再是原来的两个个权值的和,而比这个数值要大,所以使用了修正值N。\n[0062] S208:结果输出。\n[0063] 根据权值处理部分提供的数值,以及约定好的数值范围约定,向用户提供不同的提示信息。权值处理部分提供的数值范围可以约定如下:\n[0064] 范围1:不是感染式恶意代码的进程,不提示用户。\n[0065] 范围2:可能是感染式恶意代码的进程,提醒用户。\n[0066] 范围3:确定是感染式恶意代码的进程,还原被感染程序的状态,提醒用户对恶意代码进行处理。\n[0067] S209:状态判定\n[0068] 根据S206中被监控程序退出与否的判定,如果被监控程序尚未退出,转到S205 。\n[0069] S210:退出监控\n[0070] 退出对被监控程序的监控,释放系统资源。\n[0071] 如图3所示,为本发明装置结构示意图,包括:\n[0072] 进程单元101,用于遍历当前系统的所有进程以及监视系统新创建的进程;\n[0073] 过滤单元102,用于获取系统中所有进程信息,对运行中的进程进行过滤;\n[0074] hook单元103,用于对安全策略中的函数进行hook处理,记录或备份所述函数调用前的相关文件信息;\n[0075] 监视单元104,用于监视过滤后的进程,若所述进程调用已被hook的函数,则记录所述函数信息,当所监视的进程结束时,记录与所述进程相关的文件信息;\n[0076] 权值单元105,用于对所述函数信息和文件信息进行权值处理;\n[0077] 判定单元106,用于对权值单元处理后的函数信息和文件信息的权值计算和值,按照安全策略中的约定数值范围,输出所述和值相应的感染式恶意代码的进程的判定结果。\n[0078] 进一步的,与本发明的方法相应,本发明的装置实施时候还可以包括修正单元,用于对所述进程的函数信息和文件信息的权值计算和值之后,根据所述函数信息和文件信息确定修正值,计算所述和值与修正值的修正和值,按照安全策略中的约定数值范围,输出所述修正和值相应的感染式恶意代码的进程的判定结果;因此判定结果更为精准。\n[0079] 装置实施例还可以包括报警单元,用于对判断结果进行提示,例如:不是感染式恶意代码的进程,不提示;可能是感染式恶意代码的进程,进行提示;确定是感染式恶意代码的进程,还原被感染程序的状态,提示对恶意代码进行处理。\n[0080] 本说明书中方法的实施例采用递进的方式描述,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。\n[0081] 虽然通过实施例描绘了本发明,本领域普通技术人员知道,本发明有许多变形和变化而不脱离本发明的精神,希望所附的权利要求包括这些变形和变化而不脱离本发明的精神。
法律信息
- 2018-09-14
专利权质押合同登记的生效
IPC(主分类): G06F 21/56
专利号: ZL 201210559448.8
申请日: 2012.12.21
授权公告日: 2016.09.07
登记号: 2018990000700
登记生效日: 2018.08.17
出质人: 北京安天网络安全技术有限公司
质权人: 中信银行股份有限公司哈尔滨分行
发明名称: 一种防范感染式病毒感染的方法和装置
- 2018-09-11
专利权质押合同登记的注销
IPC(主分类): G06F 21/56
专利号: ZL 201210559448.8
申请日: 2012.12.21
授权公告日: 2016.09.07
登记号: 2017990000776
解除日: 2018.08.17
出质人: 北京安天网络安全技术有限公司
质权人: 中信银行股份有限公司哈尔滨分行
- 2017-09-15
专利权质押合同登记的生效
IPC(主分类): G06F 21/56
专利号: ZL 201210559448.8
申请日: 2012.12.21
授权公告日: 2016.09.07
登记号: 2017990000776
登记生效日: 2017.08.21
出质人: 北京安天网络安全技术有限公司
质权人: 中信银行股份有限公司哈尔滨分行
发明名称: 一种防范感染式病毒感染的方法和装置
- 2017-05-10
专利权人的姓名或者名称、地址的变更
专利权人由北京安天电子设备有限公司变更为北京安天网络安全技术有限公司
地址由100080 北京市海淀区中关村大街1号海龙大厦14层1415室变更为100080 北京市海淀区闵庄路3号清华科技园玉泉慧谷一期1号楼
- 2016-09-07
- 2013-11-13
实质审查的生效
IPC(主分类): G06F 21/56
专利申请号: 201210559448.8
申请日: 2012.12.21
- 2013-10-16
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2009-02-25
|
2008-05-12
| | |
2
| |
2008-12-24
|
2008-07-24
| | |
3
| |
2012-08-22
|
2012-04-09
| | |
4
| |
2008-07-23
|
2007-09-05
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |