首页 / 专利库 / 人工智能 / 关联性分析 / 计算机反病毒防护系统和方法

计算机反病毒防护系统和方法

阅读:34发布:2021-09-19

专利汇可以提供计算机反病毒防护系统和方法专利检索,专利查询,专利分析的服务。并且本 发明 涉及一种计算机反病毒防护系统和方法,采用基于程序行为分析的计算机防护系统和方法。其特征在于包括如下部分:程序判断部:用于识别出用户计算机中存在的程序,并将这些程序分成正常程序和异常程序;程序监控部:监控、记录程序动作行为; 关联性分析 部:创建关联树,并通过该关联树对程序动作行为进行关联性分析;所述关联树包括加载关联树和创建关联树;病毒识别 知识库 :包括程序行为知识库和攻击识别规则库;病毒防护识别部:将捕获的动作行为与病毒识别知识库中的信息进行比较,对该程序是否为病毒程序做出判断。利用本发明的方法不但提高了效率,避免了病毒代码更新的滞后性,可以有效的对未知的病毒、木 马 进行拦截。,下面是计算机反病毒防护系统和方法专利的具体信息内容。

1、一种计算机反病毒防护系统其特征在于,包括如下部分:
程序判断部:用于识别出用户计算机中存在的程序,并将这些程 序分成正常程序和异常程序;
程序监控部:监控、记录程序动作行为;
关联性分析部:创建关联树,并通过该关联树对程序动作行为进 行关联性分析;所述关联树包括加载关联树和创建关联树;
病毒识别知识库:包括程序行为知识库和攻击识别规则库;
病毒防护识别部:接收前述程序监控部程序捕获的动作行为,结 合前述程序判断部的信息,将捕获的动作行为与病毒识别知识库中的 信息进行比较,并在需要时调用关联性分析部对该程序是否为病毒程 序做出判断。
2、按照权利要求1所述计算机反病毒防护系统,其特征在于:所 述程序监控部通过勾挂程序系统API函数调用捕获程序动作行为,并 进行记录。
3、按照权利要求1所述计算机反病毒防护系统,其特征在于,
所述正常程序包括:将计算机中的程序与已知程序知识库进行比 对,识别出的所有的已知程序;计算机桌面上有图标的程序;出现在 程序组中的程序以及由安装程序安装的程序;
所述异常程序为,上述正常程序以外的程序。
4、按照权利要求3所述计算机反病毒防护系统,其特征在于:所 述安装程序的判断依据为,该程序运行时有窗口,创建程序组或创建 桌面图标,并且该安装程序创建反安装项。
5、按照权利要求1所述计算机反病毒防护系统,其特征在于:所 述加载关联树中,每个节点代表一个进程,保存该进程运行时的动作 行为信息及其在创建关联树中的索引信息;并且每个节点的父节点是 其父进程
6、按照权利要求5所述计算机反病毒防护系统,其特征在于,所 述加载关联树中每个节点所保存的信息包括:
PE文件的全路径、加载者全路径、文件有无描述、是否自启动、 谁创建的自启动项、自身其他特征、是否被创建者启动、是否自己创 建启动项、是否有窗口或托盘图标、父进程pid号、修改注册表项链表、 网络动作链表。
7、按照权利要求6所述计算机反病毒防护系统,其特征在于:所 述注册表链表包括如下结构:入口列表、键名、值名、值。
8、按照权利要求6所述计算机反病毒防护系统,其特征在于:所 述网络动作链表包括如下结构:类型、本地端口、本地IP地址、远程 端口、远程IP地址、使用协议。
9、按照权利要求1所述计算机反病毒防护系统,其特征在于:所 述创建关联树中,每个节点代表一个程序,保存有该程序文件创建时 的相关信息及其在加载关联树中索引信息;并且每个节点的父节点是 其创建者。
10、按照权利要求9所述计算机反病毒防护系统,其特征在于, 所述创建关联树中每个节点所保存的信息包括:
PE文件全路径、创建者的全路径、创建者的特性、创建者有无窗 口、与创建者是否同一文件、拷贝自身。
11、按照权利要求10所述计算机反病毒防护系统,其特征在于: 所述创建者特性为对系统中所有程序的分类,包括未知程序、邮件系 统、网络浏览器、网络交流系统、其他已知程序。
12、按照权利要求1所述计算机反病毒防护系统,其特征在于: 所述程序行为知识库为,通过勾挂计算机系统的API函数,逐一对合 法的已知程序所执行的动作行为进行分析列表,并将所述分析列表进 行存储的数据库
所述攻击识别规则库为,通过勾挂计算机系统的API函数,记录 了计算机病毒、木及有害程序的攻击动作行为特征的数据库,每一 记录对应一类病毒,每一类病毒对应一个动作集,该动作集包括一系 列动作及其之间的关联关系。
13、按照权利要求12所述计算机反病毒防护系统,其特征在于, 所述攻击识别规则库包括,网络病毒规则:
h)如果一个异常程序运行时,其所有关联程序均没有窗口,且该 异常程序复制自身,修改注册表,使自己或自身的备份具有系统自启 动功能,并且执行了包括发送数据包、创建监听端口、将一个线程植 入到其他进程中、创建全局钩子、发送邮件的动作。
14、按照权利要求12所述计算机反病毒防护系统,其特征在于, 所述攻击识别规则库包括,蠕虫病毒规则:
i)一个异常程序,该程序文件是由邮件系统或即时通讯软件接收 到的,并且该程序运行后,指挥键盘鼠标,并模拟用户的动作通过 邮件系统自动发送邮件或通过即时通讯软件自动发送文件。
15、按照权利要求12所述计算机反病毒防护系统,其特征在于, 所述攻击识别规则库包括,蠕虫病毒规则:
j)一个异常的程序,该程序运行时无窗口,它创建10个以上相同 的线程,在1秒钟内,每个线程均有发送数据包的动作。
16、按照权利要求1所述计算机反病毒防护系统,其特征在于: 所述病毒防护识别部,分别对已知程序和未知程序进行判断;
对已知程序所执行的危险动作,与记录在上述程序行为知识库中 的动作行为进行比对,判断其是否为合法动作;
对未知程序所执行的危险动作,与记录在上述攻击识别规则库中 的病毒规则进行比对,判断是否为有害动作行为。
17、一种按照权利要求1所述计算机反病毒防护方法,其特征在 于,包括如下步骤:
17.1)计算机程序启动后,勾挂该程序的系统API函数调用;
17.2)监控将该程序的动作,并将该程序的动作记录到加载关联树 中;
17.3)判断该动作是否为创建程序的动作;
17.4)如果该程序执行了创建程序的动作,则将程序创建信息添加 到创建关联树中,判断被创建程序是否为正常程序,并进行记录;
如果该程序没有执行创建程序的动作,则判断该动作是否为危险 动作;
17.5)如果该动作不是危险动作,则返回步骤17.2);如果该程序 执行了危险动作,则通过病毒防护识别部判断该动作行为是否为有害 程序行为;
17.6)如果判断结果不是有害程序行为,则返回步骤17.2);如果 判断结果是害程序行为,则由病毒防护识别部对该程序作相应的处理。
18、按照权利要求17所述计算机反病毒防护方法,其特征在于: 所述步骤17.5)中,分别对已知程序和未知程序进行判断。
19、按照权利要求17或18所述计算机反病毒防护方法,其特征 在于:对于已知程序将其执行的危险动作与记录在程序行为知识库中 的合法动作行为进行比较,判断其是否受到攻击;
如果比较结果为合法动作行为则返回步骤17.2);如果比较结果为 否,则证明该已知程序已经受到病毒攻击,终止该程序继续运行。
20、按照权利要求19所述计算机反病毒防护方法,其特征在于, 对已知程序是否受到攻击的判断,包括如下步骤:
20.1)监控并捕获该已知程序执行的危险动作;
20.2)将捕获的危险动作与程序行为知识库中的信息比较,判断是 否为合法行为;
20.3)如果判断结果为是,则返回步骤20.1);如果判断结果为否, 则根据程序行为知识库的定义,判断是否结束进程;
20.4)如果判断结果为是,则调用系统API结束该已知程序的当前 进程;如果判断结果为否,则调用系统API结束该已知程序的当前线 程。
21、按照权利要求20所述计算机反病毒防护方法,其特征在于: 所述步骤20.3)中,知识库的定义为,当系统进程被溢出时,调用系 统API结束当前线程。
22、按照权利要求17或18所述计算机反病毒防护方法,其特征 在于:对于未知程序,将其执行的危险动作与所述攻击识别规则库中 所记录的病毒规则进行比对,并判断该程序是否为有害程序;
如果判断为是,则终止该程序运行;如果判断结果为否,则返回 步骤17.2)。
23、按照权利要求18所述计算机反病毒防护方法,其特征在于, 对未知程序是否为有害程序的判断,包括如下步骤:
23.1)监控并捕获该未知程序执行的危险动作;
23.2)判断是否为正常程序;
23.3)如果是正常程序,则将监控到的动作行为记录到程序行为知 识库,并返回步骤23.1);如果不是正常程序,则与攻击识别规则库中 的规则进行比对,判断是否为有害程序行为;
23.4)如果判断结果为否,则返回步骤23.1);如果判断结果为有 害程序行为,则由用户确认是否允许当前动作;
23.5)如果用户确认允许当前动作,则将该程序标识为正常程序, 将该动作行为记录到程序行为知识库,并返回步骤23.1);如果用户不 允许该动作,则调用系统API函数结束该未知程序的当前进程。
24、按照权利要求23所述计算机反病毒防护方法,其特征在于: 在所述步骤23.5)中根据用户的需要,采用直接调用系统API结束该 未知程序的当前进程的。

说明书全文

技术领域

发明涉及一种计算机防护系统和方法,与现有技术相比较不同 的是,不采用病毒特征代码进行比对,而是以程序的动作行为为特征, 是基于程序行为分析的计算机反病毒防护系统和方法

背景技术

一直以来,对计算机病毒的入侵和反入侵的斗争都在激烈地进行 着,随着计算机越来越广泛地使用,这种斗争的激烈程度也上升到一 个新的高度。经过长期的斗争实践,人们总结出许多的具体方法来防 止对计算机病毒的入侵,研制出许多相应的防范产品。这些产品大体 上可以分为两类,一类是对入侵病毒进行隔离,例如防火墙,通过对 通讯端口、协议等进行限制来防止入侵病毒的进入;另一类是对可能 形成入侵的染病毒文件进行搜寻,例如现有的杀毒软件,利用可能形 成入侵感染病毒文件的代码特征,通过扫描发现并清除有害染病毒文 件。这两类产品虽然在反病毒入侵的斗争中起了不少的作用,但都具 有一些无法克服的缺点,它们分别是:
(一)防火墙虽然能够阻断一些非法病毒或黑客的入侵,但防火 墙的监控对象为主要端口和协议,需要由用户自己设置要么允许通过、 要么不允许通过。其主要缺陷,1.要求用户对系统非常熟悉,才能对它 进行有效设置;2.由于监控颗粒太大,对于网络应用中必须用到的端口 和协议基本无法设置,如果允许通过,则可能导致病毒或黑客入侵发 生;若不允许通过,则可能又直接影响网络的正常运行。
(二)利用病毒特征码的杀毒软件将永远滞后于病毒的发展,因 为只有捕获到病毒样本后,才能提取到病毒的特征码,这使得这种杀 毒软件对新出现的未知病毒入侵无法防范,用户即使装备了杀毒软件, 也会再次受到该病毒的攻击伤害,只有通过升级、更新病毒数据库才 可以解决,而这种解决是滞后于病毒发生的。
除上述各种被动防护系统以外,本发明的发明人还提供了一种基 于程序行为分析的计算机病毒防护方法,请参见题目为《基于程序行 为分析的计算机防护方法》的专利申请,申请号为200510007682.X, 在该申请中提出了一种崭新的病毒防护方法,通过对程序的动作行为 进行分析,从而判断计算机中的程序是否是有害程序或受到病毒攻击, 可以克服前述被动防护系统的不足之处。

发明内容

本发明正是为了解决现有技术的缺点而产生,并且更进一步地完 善了基于程序行为分析地计算机防护方法,并为之提供了更有系统 解决方案,通过对程序或程序间的关联动作组成有意义的逻辑行为进 行分析的方法,解决了现有杀毒软件、防火墙不能对未知病毒以及木 进行有效的防护的弊病。其目的在于提供一种计算机反病毒防护系 统,能够主动有效的对新出现的病毒、木马的攻击进行拦截,保证计 算机的安全。
本发明反病毒防护系统从与现有技术完全不同的途径,通过程序 动作行为来定义计算机病毒概念,因此根据程序的行为是否符合病毒 定义可以判断出病毒;并且通过人工分析程序行为是目前判断新病毒 的唯一有效方法;因此,本发明提出了一种采用动态仿真方式的反病 毒防护系统,依据程序行为识别病毒的一种新思路和它的实现方法。
本发明的计算机反病毒防护系统包括:程序判断部、程序监控部、 关联性分析部、病毒识别知识库以及病毒防护识别部。
所述程序判断部:用于识别出用户计算机中存在的程序,并将这 些程序分成正常程序和异常程序。
其中,所述正常程序包括:将计算机中的程序与后述已知程序知 识库进行比对,识别出的所有的已知程序;计算机桌面上有图标的程 序;出现在程序组中的程序以及由安装程序安装的程序;
其中,所述安装程序为,运行时有窗口,创建程序组或创建桌面 图标,并且创建反安装项的程序。
所述异常程序为,上述正常程序以外的程序。正常程序,多数为 已知程序,以及有确定来源的程序,因此其可靠性较高;但是异常程 序,由于其来源不明,因此需要对其进行重点监控。
区分正常程序和异常程序其目的在于,模拟一个程序对计算机中 的不同类型程序的影响。对于已知程序来说,由于其已经记录在本发 明的计算机反病毒防护系统中的病毒识别知识库中,因此其可靠性非 常高;而且对于由本发明所定义的安装程序创建的未知程序,由于其 有可靠的来源,并且符合通常的程序安装过程,因此也可以认为该程 序是正常程序。但是,对于其他的未知程序来说,由于可靠性无法估 计,因此应该作为本发明重点监控的对象,即认为该程序有可能是有 害程序,尤其是对于例如木马程序,一个木马程序一旦进入到安装有 本发明的计算机反病毒识别系统的计算机中,或开始运行,即可被捕 获,并根据本发明的区分正常程序和异常程序的方法被判断为异常程 序,从而可以对其进行重点监控,同样蠕虫在进行远程攻击时,通常 要攻击一个已知程序,一旦攻击成功,将生成一个程序,该程序也可 以根据本发明被判断为异常程序;因此,区分正常程序和异常程序是 本发明的一个重要组成部分。
所述程序监控部:监控、记录程序动作行为。该部分通过勾挂程 序系统API(Application Programming Interface:应用编程接口)函数 调用对程序进行监控、记录。在现有的操作系统中,程序执行时通常 需要进行系统提供的API的调用,因此,只需要通过勾挂程序的系统 API调用,即可对程序所执行的动作行为进行监控。
进行监控、记录动作行为包括:监控动作和危险动作。
所述监控动作,该动作可能影响计算机安全、需要对其进行实时 监控;并且所述监控动作是计算机程序所执行的常见的动作,是多数 的正常程序也必须执行的动作;所述监控动作,包括:文件操作;网 络操作;创建进程、创建线程;注册表操作;窗口、托盘操作;堆栈 溢出;注入线程;拦截系统API调用以及访问修改和创建用户帐号。
所述危险动作,该动作首先是一个监控动作,在程序运行中,该 动作可能威胁计算机安全;并且所述危险动作为少数正常程序会执行 的动作,并且多数的病毒程序或木马程序需要执行的动作,因此执行 这样的动作的程序具有危害性会更大,例如,程序自行改变运行层级, 在微软Windows操作系统中,某程序自动从应用级(RING3)提升系 统级(RING0)执行,只有少数的正常程序才具有这一特征,但是却 是很多具有攻击性的病毒程序所共同具有的特征。
所述危险动作包括:调用SHELL程序;修改程序文件或写程序文 件;调用FTP或TFTP;创建FTP或TFTP服务;发送邮件;浏览器或 邮件系统自动运行其他程序;创建大量相同线程;修改和创建用户怅 号;危险网络操作;向系统注册表添加启动项;修改系统启动文件; 向其他进程注入线程;堆栈溢出;应用级进程自动提升为系统级进程 操作;拦截系统API调用。
此外,还包括非监控动作,即不影响计算机安全无需进行监控的 动作。
所述关联性分析部:创建关联树,并通过该关联树对程序动作行 为进行关联性分析;
所述关联树包括加载关联树和创建关联树,其中:
所述加载关联树中,每个节点代表一个进程,保存该进程运行时 的动作行为信息及其在创建关联树中的索引信息;并且每个节点的父 节点是其父进程。所述加载关联树中每个节点所保存的信息包括:
PE文件的全路径、加载者全路径、文件有无描述、是否自启动、 谁创建的自启动项、自身其他特征、是否被创建者启动、是否自己创 建启动项、是否有窗口或托盘图标、父进程pid号、修改注册表项链表、 网络动作链表。其中,所述注册表链表包括如下结构:
入口列表、键名、值名、值;所述网络动作链表包括如下结构: 类型、本地端口、本地IP地址、远程端口、远程IP地址、使用协议。
所述创建关联树中,每个节点代表一个程序,保存有该程序文件 创建时的相关信息及其在加载关联树中索引信息;并且每个节点的父 节点是其创建者。本发明的计算机反病毒防护系统,其中,所述创建 关联树中每个节点所保存的信息包括:
PE文件全路径、创建者的全路径、创建者的特性、创建者有无窗 口、与创建者是否同一文件、拷贝自身。
其中,所述创建者特性为对系统中所有程序的分类,包括未知程 序、其它已知程序、邮件系统、网络浏览器、网络交流系统,每个程 序一定属于上述分类中的一种且仅属于上述分类中的一种。
由于计算机中的程序并不是仅仅通过一个程序的一个动作完成特 定的功能,而是通过一个程序的一系列动作所组成的行为或是多个程 序的一系列的动作所组成的行为才能实现,因此,基于这一特点,在 本发明的计算机反病毒防护系统中,也需要根据前后相关联的多个进 程的前后多个相关联的动作所组成的动作行为进行分析、判断。因此, 本发明中建立了关联性分析部,以此对程序之间关联关系和程序的动 作行为进行综合的分析判断。
所述病毒识别知识库:包括程序行为知识库和攻击识别规则库; 其中,所述程序行为知识库为,通过前述程序监控部,逐一对合法的 已知程序所执行的动作行为进行分析列表,并将所述分析列表进行存 储的数据库。其结构描述包括:
程序ID、程序类型、程序运行层级、写PE文件权限、调用系统 SHELL权限、网络行为和注册表操作。并且所述程序类型为程序分类 枚举类型,分为可被缓冲区溢出攻击的程序和普通应用程序。其网络 行为,其结构描述包括:
网络连接动作类型、使用端口数量以及连接描述;其中连接描述 包括:本地端口、本地地址、远程端口、远程地址以及使用协议。其 注册表操作,其结构描述包括:
该程序所操作的注册表项数、每项操作的键值。
并且,所述程序行为知识库,通过对本地计算机使用软件进行检 查,添加与用户已经使用的已知程序相对应的已知程序行为的记录, 作为本地计算机的程序行为知识库,并按照用户需要对用户将要使用 的已知程序进行补充。
所述攻击识别规则库为,总结反病毒分析识别的规则,记录了计 算机病毒、木马等有害程序的攻击行为特征的数据库,每一记录对应 一类病毒,每一类病毒对应一个动作集,该动作集包括一系列动作及 其之间特定的关联关系,该关联关系包括前后动作之间的时间关系及 调用和被调用关系。
所述攻击识别规则库,其结构包括:可执行PE文件的全路径、创 建者全路径、创建者的特性、创建者有无窗口、与创建者是否同一文 件、是否拷贝自身、文件有无描述、是否自启动、谁创建的自启动项、 是否被创建者启动、是否自己创建自启动项、是否有窗口或托盘图标、 修改注册表项链表和网络动作链表;所述修改注册表项链表的子数据 结构,包括:入口列表、键名、值名和值;所述网络动作链表的子数 据结构,包括:类型、本地端口、本地地址、远程端口、远程地址和 使用协议。
其中,所述攻击识别规则库,包括:
病毒规则一,
a)运行于用户层RING3的程序,转入系统核心层RING0运行;
病毒规则二,
b)该程序且不是杀毒软件,无窗口,并执行修改其他与该程序无 关的程序文件的操作;
远程攻击规则一,
c)该程序通过监听端口接受数据后,立即调用SHELL程序;
远程攻击规则二,
d)该程序通过监听端口接收数据后,发生缓冲区溢出;
远程攻击规则三,
e)该程序通过监听端口接收数据后,立即调用一般文件传输协议 TFTP程序;
邮件蠕虫规则一,
f)该程序由邮件系统自动生成,且该程序运行时修改注册表的自 启动项,该程序无窗口、无托盘,并且立即开始发送邮件;
可疑木马规则一,
g)该程序由邮件系统自动生成,且该程序运行时修改注册表的自 启动项,该程序无窗口、无托盘,并且立即开始创建监听端口;
网络病毒规则
h)如果一个异常程序运行时,其所有关联程序均没有窗口,且该 异常程序复制自身,修改注册表,使自己或自身的备份具有系统自启 动功能,并且执行了包括发送数据包、创建监听端口、将一个线程植 入到其他进程中、创建全局钩子、发送邮件的动作。
蠕虫病毒规则
i)一个异常程序,该程序文件是由邮件系统或即时通讯软件接收 到的,并且该程序运行后,指挥键盘鼠标,并模拟用户的动作通过 邮件系统自动发送邮件或通过即时通讯软件自动发送文件。
蠕虫病毒规则
j)一个异常的程序,该程序运行时无窗口,它创建10个以上相同 的线程,在1秒钟内,每个线程均有发送数据包的动作。
如上所述,由于本发明的计算机反病毒防护系统在程序启动后对 程序进行监控的同时,通过对程序进行了关联性分析,并建立了加载 关联树和创建关联树,因此可以在以后在程序行为知识库和攻击规则 识别库中进行比对的时候方便的进行相关信息的查询。
所述病毒防护识别部:接收前述程序监控部捕获的程序动作行为, 结合前述程序判断部的信息,将捕获的动作行为与程序行为知识库或 攻击识别规则库中的信息进行比较,并调用关联性分析部对该程序是 否为病毒程序做出判断。
因此,如上所述本发明的计算机反病毒防护系统,可以根据其各 部分的不同功能,进行相互间的通信,从而使病毒防护识别部对程序 是否是病毒等有害程序作出准确的判断。
本发明的计算机反病毒防护方法,包括如下步骤:
17.1)计算机程序启动后,勾挂该程序的系统API函数调用;
17.2)监控将该程序的动作,并将该程序的动作记录到加载关联树 中;
17.3)判断该动作是否为创建程序的动作;
17.4)如果该程序执行了创建程序的动作,则将程序创建信息添加 到创建关联树中,判断被创建程序是否为正常程序,并进行记录;
如果该程序没有执行创建程序的动作,则判断该动作是否为危险 动作;
17.5)如果该动作不是危险动作,则返回步骤17.2);如果该程序 执行了危险动作,则通过病毒防护识别部判断该动作行为是否为有害 程序行为;
17.6)如果判断结果不是有害程序行为,则返回步骤17.2);如果 判断结果是害程序行为,则由病毒防护识别部对该程序作相应的处理。
本发明的计算机反病毒防护方法,所述步骤17.5)中,分别对已 知程序和未知程序进行判断。
一方面,对于已知程序将其执行的危险动作与记录在程序行为知 识库中的合法动作行为进行比较,判断其是否受到攻击;如果比较结 果为合法程序则返回步骤17.2);如果比较结果为否,则证明该程序已 经受到病毒攻击,并终止该程序继续运行。
另一方面,对于未知程序,将其执行的危险动作与病毒识别知识 库的攻击识别规则库中所记录的规则相比对,并判断该程序是否为有 害程序;
如果判断为是,则终止该程序运行;如果判断结果为否,则返回 步骤17.2)。本发明的计算机反病毒防护方法,其中所述已知程序为记 录在前述程序行为知识库中的程序,所述未知程序为除已知程序以外 的其他程序。
本发明的计算机反病毒防护方法中,对已知程序是否受到攻击的 判断,包括如下步骤:
20.1)监控并捕获该已知程序执行的危险动作;
20.2)将捕获的危险动作与程序行为知识库中的信息比较,判断是 否为合法行为;
20.3)如果判断结果为是,则返回步骤20.1);如果判断结果为否, 则根据程序行为知识库的定义,判断是否结束进程;
20.4)如果判断结果为是,则调用系统API结束该已知程序的当前 进程;如果判断结果为否,则调用系统API结束该已知程序的当前线 程。
其中,所述步骤20.3)中,知识库可以定义为,当系统进程被溢 出时,调用系统API结束当前线程。为了保证系统的安全,通常需要 将受到攻击的程序进程结束,但是在系统进程受到攻击时,则需要将 当前线程结束以保证系统的稳定性
本发明的计算机防病毒防护系统中,对未知程序是否为有害程序 的判断,包括如下步骤:
23.1)监控并捕获该未知程序执行的危险动作;
23.2)判断是否为正常程序;
23.3)如果是正常程序,则将监控到的动作行为记录到程序行为知 识库,并返回步骤23.1);如果不是正常程序,则与攻击识别规则库中 的规则进行比对,判断是否为有害程序行为;
23.4)如果判断结果为否,则返回步骤23.1);如果判断结果为有 害程序行为,则由用户确认是否允许当前动作;
23.5)如果用户确认允许当前动作,则将该程序标识为正常程序, 将该动作行为记录到程序行为知识库,并返回步骤23.1);如果用户不 允许该动作,则调用系统API函数结束该未知程序的当前进程。
另外,在步骤23.5)中,也可以根据用户的需要,选择直接调用 系统API结束该未知程序的当前进程。
如上所述,为本发明的计算机反病毒防护系统的各组成部分及工 作原理。
需要注意的是,本发明的计算机反病毒防护系统在分析有害程序 行为时,并非仅仅依据程序的一个动作就作出判断,他要依据程序的 来源、程序或程序组的一系列动作构成有意义的行为,才能做出判断 是否是病毒。而这些信息早在程序开始运行或创建的当时就已经被关 联性分析部记录到了加载树或创建树中,例如,一个木马,它为了在 一台计算机中长期存在,它通常将自身拷到系统目录中,即它可能有 两个以上的副本程序,这些程序运行时,互相配合工作,对于单个副 本程序而言,可能很难判断出它是病毒行为,但是,如果结合其整体 的加载和创建关系来判断,就很容易判定是病毒。程序关联性分析是 本发明的一个重要组成部分。
附图说明
图1为本发明的计算机反病毒防护系统的结构方框图
图2为本发明的计算机反病毒防护系统的加载关联树示意图;
图3为本发明的计算机反病毒防护系统的创建关联树示意图;
图4为本发明的计算机反病毒防护方法的流程图
图5为本发明的计算机反病毒防护系统的判断已知程序是否受到 攻击的流程图;
图6为本发明的计算机反病毒防护系统的判断未知程序是否为有 害程序的流程图;

具体实施方式

下面结合具体实施例对本发明的计算机反病毒防护系统和方法进 行详细说明,为了理解方便理解本发明的内容,实施例中将以常用的 微软Windows操作系统为例进行说明,但是本发明不仅仅局限于此。
本发明的计算机反病毒防护系统的方框图,如图1所示,包括: 程序判断部、监控部、关联性分析部、病毒识别知识库、病毒防护识 别部,每个部分都有其特定的功能。下面分别对各个部分进行详细的 说明。
所述程序判断部,用于识别出用户计算机中存在的程序,并将这 些程序分成正常程序和异常程序。其中正常程序包括:将计算机中的 程序与后述程序行为知识库进行比对识别出的所有的已知程序,计算 机桌面上有图标的程序,出现在程序组中的程序以及由安装程序安装 的程序,经用户确认为正常的程序。其中所述安装程序为,运行时有 窗口,创建程序组或创建桌面图标,并且创建反安装项的程序。所述 异常程序,即,除前述正常程序以外的全部程序。
如上所述正常程序既是安全性较好的、可靠性较高的程序,因此, 对于正常程序和异常程序的区分,可以为系统安全性的判断提供依据。
程序监控部:监控、记录程序动作行为。该部分通过勾挂程序系 统API(Application Programming Interface:应用编程接口)函数调用 对程序进行监控、记录。现有的操作系统,程序执行时通常需要进行 系统提供的API的调用,因此,只需要通过勾挂程序的系统API调用, 即可对程序所执行的动作行为进行监控。
计算机程序所执行的动作行为分为:监控动作、危险动作和非监 控动作。
所述监控动作为,可能影响计算机安全,需要对其进行实时监控 的动作;并且所述监控动作,是计算机程序所执行的常见的动作,是 多数的正常程序也必须执行的动作。
并且所述监控动作包括:文件操作;网络操作;创建进程、创建 线程;注册表操作;窗口、托盘操作;堆栈溢出;注入线程;拦截系 统API调用以及访问、修改和创建用户帐号。
所述危险动作,该动作首先是一个监控动作,在程序运行中,该 动作可能成胁计算机安全;并且所述危险动作为少数正常程序会执行 的动作,但多数的病毒程序或木马程序需要执行的动作,因此执行这 样的动作的程序具有危害性会更大,例如,程序自行改变运行层级, 在微软Windows操作系统中,某程序自动从应用级(RING3)提升系 统级(RING0)执行,只有少数的正常程序才具有这一特征,但是却 是很多具有攻击性的病毒程序所共同具有的特征。
并且所述危险动作包括:调用SHELL程序;修改程序文件或写程 序文件;调用FTP或TFTP;创建FTP或TFTP服务;发送邮件;浏览 器或邮件系统自动运行其他程序;创建大量相同线程;修改和创建用 户帐号;危险网络操作;向系统注册表添加启动项;修改系统启动文 件;向其他进程注入线程;堆栈溢出;应用级进程时自动提升为系统 级进程操作;拦截系统API调用。
关联性分析部:创建关联树,并通过该关联树对程序动作行为进 行关联性分析。其中,关联树包括加载关联树和创建关联树。
加载关联树中,树中每个节点代表一个进程,保存该进程运行时 的动作行为信息及其在创建关联树中的索引信息;并且每个节点的父 节点是其父进程;其节点的实体结构为:
struct RuntimePEFileInMem
{
Char FileName[MAX_PATH];//PE文件全路径
Char LoaderFileName[MAX_PATH];//加载者全路径
Char LoaderDescription;//文件有无描述
CharAutoRun;//是否自启动
Char WhoWriteAutoRun;//谁创建的自启动项,
               0未知;
               1自己;
               创建者;
Char CharacterOfSelf;//自身其他特性
BOOLEAN RunByCreator;//是否被创建者启动
BOOLEAN RunBySelf;//是否自己创建启动项
BOOLEAN CreateWindow;//是否有窗口或托盘图标
UNIT ppid;//父进程pid
LIST_ENTRY RegList;//修改注册表项链表
LIST_NET ListNetAction;//网络动作链表
}
其中RegList结构如下
struct REG_DATA
{
  :LIST_ENTRY List;
  char Key[];
  char ValueName[];
  char Value[];
}
struct LIST_NET
{
  int type;
  short lport;
  IPADDR lipaddr;
  short dport;
  IPADDR dipaddr;
  short protocol;
};
并且,如图2所示,以微软Windows操作系统中加载MSN和ICQ 软件为例,对所述加载关联树的结构进行详细说明。
如图所示,显示了系统进程加载的关联关系,对于本技术领域的 工作人员可以清楚掌握各个进程的加载关系,并且可以理解,从计算 机启动开始首先加载system进程然后逐步到各个用户的软件,因此, 加载关联树是随着系统各个时间的不同在不断变化更新的。建立该加 载关联树可以方便了解计算机中的各个进程的运行状态,并且方便进 程的管理。
所述创建关联树中,树中每个节点代表一个程序,保存有该程序 文件创建时的相关信息及其在加载关联树中索引信息;并且每个节点 的父节点是其创建者。
其中,所述创建关联树中每个节点所保存的信息包括:
PE文件全路径、创建者的全路径、创建者的特性、创建者有无窗 口、与创建者是否同一文件、拷贝自身。
其中,所述创建者特性为,包括未知程序、其它已知程序、邮件 系统、网络浏览器、网络交流系统在内的一种。其实体结构如下:
struct StaticPEFileInMem
{
    Char FileName[MAX_PATH];//PE文件的全路径
    Char CreatorName[MAX_PATH];//创建者全路径
    Char CharacterOfCreator;//创建者特性:
              -1未知程序;
              0其他已知程序;
              1邮件程序;
              2网络浏览器;
              3网络交流系统(如MSN、ICQ)
    Char NoWindowOfCreator;//创建者有无窗口
    Char SameAsCreator;//与创建者是同一个文件
    Char CopySelf;//拷贝自身
}
并且,如图3所示,以微软Windows操作系统为例,对所述创建 关联树的结构进行详细说明。
如图所示,显示了系统程序创建的关联关系,对于本领域工作人 员可以清楚掌握各个程序的创建关系,并且可以理解,该MSN以及 OUTLOOK程序是由misexec程序创建的,该创建关系记录了程序创建 最初的父子关系,因此创建关联树一旦创建,即作为系统的日志被保 存下来供以后使用,因此所述创建关联树在计算机运行过程中是不变 的。
病毒识别知识库:包括程序行为知识库和攻击识别规则库。
其中,所述程序行为知识库为,通过前述程序监控部,逐一对合 法的已知程序所执行的动作行为进行分析列表,并将所述分析列表进 行存储的数据库。
其结构描述包括:程序ID、程序类型、程序运行层级、写PE文 件权限、调用系统SHELL权限、网络行为和注册表操作。并且所述程 序类型为程序分类枚举类型,分为可被缓冲区溢出攻击的程序和普通 应用程序。其网络行为,其结构描述包括:网络连接动作类型、使用 端口数量以及连接描述;其中连接描述包括:本地端口、本地地址、 远程端口、远程地址以及使用协议。其注册表操作,其结构描述包括: 该程序所操作的注册表项数、每项操作的键值。
所述程序行为知识库结构实体描述如下:
struct Know
{
  DWORD type1;//程序分类枚举类型,目前暂时分为可被缓冲区
       溢出攻击的程序和普通应用程序两类,描述为,
       enum KnowType{OVERFLOW,NORMAL}
BOOL bAllowedWriteFile;//该程序是否可以写可执行PE文件
BOOL bCreateShell;//该程序是否可以调用系统shell
DWORD NetOffset;//在知识库文件中偏移多少的位置为对该程
     序网络行为的描述
DWORD RegOffset;//在知识库文件中偏移多少的位置为对该
     程序注册表操作行为的描述
};
在程序行为知识库中使用以下分结构描述该程序的网络动作行为 的结构实体描述为:
struct Net
{
   short type2;//网络连接的动作类型,分为两类,监听和连接,描
            述为,
            enum NetType{Listen,Connect}
   int num;//涉及到的端口数量
   ListenPort port[];
};
其中,ListenPort,针对每一个连接的具体描述,使用如下结构表 示,
struct ListenPort
{
   short lport;//使用的本地端口
   IPADDR lipaddr;//使用的本地地址
   short dport;//所连接的远程端口
   IPADDR dipaddr;//所连接的远程地址
   short protocol;//所使用的协议,使用TCP/IP协议定义
};
在程序行为知识库中使用以下分结构描述该程序的注册表操作动 作行为的结构实体描述为:
struct Reg
{
   int num;//操作的注册表项数
   char fullregname[];//每一项操作的键值
};
并且,所述程序行为知识库,通过对本地计算机使用软件进行检 查,添加与用户已经使用的已知程序相对应的已知程序行为的记录, 作为本地计算机的程序行为知识库,并按照用户需要对用户将要使用 的已知程序进行补充,从而可以节省系统资源的占用。
所述攻击识别规则库为,总结反病毒分析识别的规则,记录了计 算机病毒、木马及有害程序的攻击行为特征的数据库,每一记录对应 一类病毒,每一类病毒对应一个动作集,该动作集包括一系列动作及 其之间特定的关联关系,该关联关系包括前后动作之间的时间关系及 调用和被调用关系。
所述攻击识别规则库,其结构包括:可执行PE文件的全路径、创 建者全路径、创建者的特性、创建者有无窗口、与创建者是否同一文 件、是否拷贝自身、文件有无描述、是否自启动、谁创建的自启动项、 是否被创建者启动、是否自己创建自启动项、是否有窗口或托盘图标、 修改注册表项链表和网络动作链表;所述修改注册表项链表的子数据 结构,包括:入口列表、键名、值名和值;所述网络动作链表的子数 据结构,包括:类型、本地端口、本地地址、远程端口、远程地址和 使用协议。
其中,每一记录的数据结构实体为:
  struct UnknowPEFileInMem   {
  Char WeighofDanger;//危险权值
  Char FileName[MAX_PATH];//新创建的PE文件的全路径
  Char CreatorName[MAX_PATH];//创建者的全路径
  Char CharacterOfCreator;//创建者的特性
  Char NoWindowOfCreator;//创建者有无窗口
  Char SameAsCreator;//与创建者是同一个文件
  Char CopySelf;//拷贝自身,对于创建者是CopySelf,对于被复
            制的文件是SameAsCreator,以此来区分两者
  Char FileDescription;//文件有无描述
  Char AutoRun;//是否自启动
  Char WhoWriteAutoRun;//谁创建的自启动项
  BOOLEAN RunByCreator;//是否被创建者启动
  BOOLEAN RunBySelf;//是否自己创建启动项
  BOOLEAN bCreateWindow;//是否有窗口或托盘图标
  LIST_ENTRY RegList;//修改注册表项链表
  LIST_NET  ListNetAction;//网络动作链表
}
上述创建者的特性“CharacterOfCreator”的具体数据记录及描述是:
-1:未知程序;
0:其它已知程序;
1:邮件系统;
2:网络浏览器;
3:网络交流系统(如QQ、MSN等);
上述谁创建的自启动项“WhoWriteAutoRun”的具体数据记录及描 述是:
0:未知;
1:自己;
2:创建者;
3:自己,创建者都会写
其中修改注册表项链表的子数据结构实体为。
    struct REG_DATA
  {
    LIST_ENTRY List;//入口列表
    char Key[];//键名
    char ValueName[];//值名
    char Value[];//值
  }
其中网络动作链表的子数据结构实体为:
      struct LIST_NET
    {
      int type;//类型
      short lport;//本地端口
      IPADDR lipaddr;//本地IP地址
      short dport;//远程端口
      IPADDR dipaddr;//远程IP地址
      short protocol;//使用协议
};
其中,所述攻击识别规则库,包括:
病毒规则一,
a)运行于用户层RING3的程序,转入系统核心层RING0运行;
病毒规则二,
b)该程序且不是杀毒软件,无窗口,并执行修改其他与该程序无 关的程序文件的操作;
远程攻击规则一,
c)该程序通过监听端口接受数据后,立即调用SHELL程序;
远程攻击规则二,
d)该程序通过监听端口接收数据后,发生缓冲区溢出;
远程攻击规则三,
e)该程序通过监听端口接收数据后,立即调用一般文件传输协议 TFTP程序;
邮件蠕虫规则一,
f)该程序由邮件系统自动生成,且该程序运行时修改注册表的自 启动项,该程序无窗口、无托盘,并且立即开始发送邮件;
可疑木马规则一,
g)该程序由邮件系统自动生成,且该程序运行时修改注册表的自 启动项,该程序无窗口、无托盘,并且立即开始创建监听端口;
网络病毒规则
h)如果一个异常程序运行时,其所有关联程序均没有窗口,且该 异常程序复制自身,修改注册表,使自己或自身的备份具有系统自启 动功能,并且执行了包括发送数据包、创建监听端口、将一个线程植 入到其他进程中、创建全局钩子、发送邮件的动作。
蠕虫病毒规则
i)一个异常程序,该程序文件是由邮件系统或即时通讯软件接收 到的,并且该程序运行后,指挥键盘或鼠标,并模拟用户的动作通过 邮件系统自动发送邮件或通过即时通讯软件自动发送文件。
蠕虫病毒规则
j)一个异常的程序,该程序运行时无窗口,它创建10个以上相同 的线程,在1秒钟内,每个线程均有发送数据包的动作。
病毒防护识别部:接收前述程序监控部程序捕获的动作行为,结 合前述程序判断部的信息,将捕获的程序动作行为与病毒识别知识库 中的信息进行比较,并在需要时调用关联性分析部对该程序是否为病 毒程序做出判断。
值得注意的是,本发明的计算机反病毒防护系统是对程序动作行 为进行分析,从而判断该程序是否是有害程序,因此,在病毒识别知 识库中进行查找时,并不仅仅对该程序当前动作进行查找,同时还需 要结合该程序前一动作,对程序整个的行为进行分析判断。
下面以病毒攻击为例,对本发明的实施例作详细说明。
对于一个已知程序,如果程序行为描述为不能修改程序文件,当 该程序运行时,却修改了其他程序文件,上述危险动作被系统监控, 然后与程序行为知识库中存储的该已知程序的合法动作行为相比较, 产生不同的动作,因此可以判断该已知程序一定是被病毒感染。利用 这一方法可以发现CIH等病毒,对于被CIH等病毒感染的已知程序运 行时,该已知程序就会试图感染其他PE文件,因此可以在对病毒并不 了解的情况下,将其阻止,从而避免了由于病毒代码更新的滞后性而 使新生的病毒有机可乘。
下面利用拦截震荡波病毒,对本发明的实施例作以说明:震荡波 蠕虫病毒与其他蠕虫病毒不同,并不发送邮件,其工作原理为,在本 地开辟后。监听TCP 5554端口,做为FTP服务器等待远程控制命令。 病毒以FTP的形式提供文件传送。黑客可以通过这个端口偷窃用户机 器的文件和其他信息。病毒开辟128个扫描线程,以本地IP地址为基 础,取随机IP地址,疯狂的试探连接445端口,试图利用windows操 作系统中的LSASS中存在一个缓冲区溢出漏洞进行攻击,一旦攻击成 功会导致对方机器感染此病毒并进行下一轮的传播。
当感染了震荡波病毒的的计算机发出攻击包至使用了本发明的防 护系统时,本地计算机的LSASS进程溢出,溢出代码会调用 GetProcAddress,就会被本发明的监控机制捕获,判断为缓冲区溢出, 而且在溢出前,LSASS进程会从系统的139,445端口接收数据,这与 上述d)规则所提供的规则相符;因此本发明可以准确判断出该远程攻 击,于是系统调用ExitThread,将这个线程结束,从而使震荡波蠕虫无 法进入下一步的动作,有效保护了本地计算机。
下面再利用截获著名的反弹行木马黑洞对本发明的实施例作以说 明:由于其属于未知程序,该进程启动即被本发明的监控系统捕获, 同时该程序没有创建应用程序窗口及系统托盘区图标;并且该程序启 动后会修改注册表启动项,以保证自己可以在下次用户登录时自动启 动,此动作行为也是危险动作,因此也被本发明的监控系统捕获,该 进程继续执行将会连接远端web服务器以获得客户端服务的地址、端 口信息,以便与其建立连接进行信息传输,此连网动作被捕获后,将 上述动作一同与攻击识别规则库中的规则比较,符合攻击识别规则库 中的规则g),便可判断为可疑木马,并向用户报警,同时说明该非法 程序的属性为可疑木马,以便用户更准确的了解信息,避免了现有防 火墙系统只要发生网络动作便报警,而且需要用户对报警动作安全性 做出判断,避免了计算机知识较少的用户在使用防护系统时产生麻烦。
网络神偷系木马软件,通过邮件等形式进入用户计算机系统。它 首次运行时,会将自己拷贝到系统目录下,并设置隐含属性。然后将 其系统目录下的副本启动,自己就退出了。其副本运行时发现在自己 在系统目录下,则不做拷贝动作,直接修改注册表启动项,把自己设 置为自启动,然后根据自身携带的远端服务器信息,连接远端服务器, 提供当前计算机信息,并接受远程控制。当此副本试图将本机信息传 送到远程服务器时,触发本发明的反病毒防护系统对此程序的判断, 首先它是异常程序,通过创建关系发现其创建者也是异常程序,并且 创建此副本时没有窗口,且拷贝自身。通过进程关联树发现其加载者 与创建者是同一个程序,且此副本设置了自启动项,那么我们可以知 道这是该程序首次运行,如果不是首次运行,则其加载者应为Explorer, 同时其尝试向一个远程地址发送数据包,则可准确判断该病毒是与规 则h)相符合,并且可以根据此病毒的创建关系,知道该病毒的来源, 比如来自邮件系统,则可根据这个信息进一步查找肇事者。
MSN性感鸡病毒,此病毒模拟联系人向用户发送自身,用户误操 作将其保存并运行,该病毒的创建者即为MSN,其通过指挥键盘或鼠 标,模拟用户向MSN联系人发送自身,完成病毒传播。因此该病毒符 合规则i),可以确定为有害程序。
并且,由于本发明的计算机反病毒防护系统在程序启动后对程序 进行监控的同时,通过对程序进行了关联性分析,并建立了加载关联 树和创建关联树,因此可以方便的在对程序行为进行分析时对相关信 息进行调用,实现在病毒识别知识库中进行高效的查找,也节省了系 统开销。
由于病毒的多样性,但是作为有害程序,该病毒程序的破坏方法 每一类病毒都有其共同点,因此只要掌握一类病毒程序其破坏的动作 行为的共同点,就可以有效的发现并在其破坏计算机系统之前将其停 止。本发明正是根据病毒程序的这一特点而产生的,不但具有与现有 杀毒软件相比更高的执行效率更少的系统开销,而且最重要的是可以 有效地保护计算机系统不被那些新产生的病毒、木马等有害程序破坏。
为了使本发明的实现方法更加清晰,现对本发明的计算机防护方 法进行详细说明。
如图1所示本发明的计算机反病毒防护系统的方框图。如图所示, 程序监控部将捕获的程序监控动作和危险动作发送至关联性分析部以 建立加载树和创建树;同时通过危险动作触发病毒防护识别部对程序 行为进行分析;在分析过程中,病毒防护识别部还需要调用程序判断 部、病毒识别规则库和关联性分析部中的信息完成对程序动作行为是 否有害的判断。
如图4所示,本发明的计算机反病毒防护系统的方法包括如下步 骤:
17.1)计算机程序启动后,勾挂该程序的系统API函数调用;
17.2)监控将该程序的动作,并将该程序的动作记录到加载关联树 中;
17.3)判断该动作是否为创建程序的动作;
17.4)如果该程序执行了创建程序的动作,则将程序创建信息添加 到创建关联树中,判断被创建程序是否为正常程序,并进行记录;
如果该程序没有执行创建程序的动作,则判断该动作是否为危险 动作;
17.5)如果该动作不是危险动作,则返回步骤17.2);如果该程序 执行了危险动作,则通过病毒防护识别部判断该动作行为是否为有害 程序行为;
17.6)如果判断结果不是有害程序行为,则返回步骤17.2);如果 判断结果是害程序行为,则由病毒防护识别部对该程序作相应的处理。
本发明的计算机反病毒防护方法中,所述步骤17.5)采用,对已 知程序和未知程序分别进行判断的方法,对于已知程序,将该程序的 动作行为与程序行为知识库记录的已知程序的合法动作行为进行比 对;对于未知程序,将该程序的动作行为与攻击识别规则库中记录的 规则进行比对;从而可以分别判断出已知程序是否受到病毒攻击以及 未知程序是否为有害程序。下面将对病毒防护识别部中对已知程序和 未知程序进行判断以及处理的步骤进行详细说明。
如图5所示,判断已知程序是否受到攻击,包括如下步骤:
20.1)监控并捕获该已知程序执行的危险动作;
20.2)将捕获的危险动作与程序行为知识库中的信息比较,判断是 否为合法行为;
20.3)如果判断结果为是,则返回步骤20.1);如果判断结果为否, 则根据程序行为知识库的定义,判断是否结束进程;
20.4)如果判断结果为是,则调用系统API结束该已知程序的当前 进程;如果判断结果为否,则调用系统API结束该已知程序的当前线 程。
其中,所述步骤20.3)中,知识库的定义为,当系统进程被溢出 时,调用系统API结束当前线程。
由于在已知程序中,有相当一部分程序其功能是系统的底层服务, 如果直接将这些程序结束,会使系统重启,以致系统瘫痪。因此,在 本发明中,对于程序行为知识库中的程序进行了定义,仅当那些系统 程序被溢出攻击的时候才结束其当前线程。如上所述,即保证系统的 安全,又可以不影响系统的工作,使系统稳定运行,避免了现有的病 毒防火墙工具,由于对系统中的重要服务的程序病毒进行检查时,杀 灭病毒的同时,使系统中重要的程序文件造成损坏,影响系统的稳定 性。例如微软Windows操作系统中,Lsass.exe为系统服务程序,如果 该程序可能受到溢出攻击,则不能将其进程结束,这样会使系统重启 造成系统不稳定;因此,按照本发明的方法及程序行为知识库中对其 定义,将该程序发生溢出攻击的线程结束,这样,即可以保证系统安 全,又能够组织有害程序对系统的侵害;又如微软Word文字编辑软件, 也存在溢出攻击的危险,但是由于其不是系统服务软件,因此根据本 发明的方法及程序行为知识库的定义,可以将整个Word进程结束,以 此保护了系统的安全。
如图6所示,判断未知程序是否为有害程序,包括如下步骤:
23.1)监控并捕获该未知程序执行的危险动作;
23.2)判断该未知程序是否为正常程序;
23.3)如果是正常程序,则将监控到的动作行为记录到程序行为知 识库,并返回步骤23.1);如果不是正常程序,则与攻击识别规则库中 的规则进行比对,判断是否为有害程序行为;
23.4)如果判断结果为否,则返回步骤23.1);如果判断结果为有 害程序行为,则由用户确认是否允许当前动作;
23.5)如果用户确认允许当前动作,则将该程序标识为正常程序, 将该动作行为记录到程序行为知识库,并返回步骤23.1);如果用户不 允许该动作,则调用系统API函数结束该未知程序的当前进程。
另外,在步骤23.5)中,也可以根据用户的需要,选择直接调用 系统API结束该未知程序的当前进程。这样,更方便了那些计算机知 识较少的用户的使用。
如上所述,本发明的计算机反病毒防护系统,不但可以有效的对 已知的病毒程序进行拦截,同样可以主动检测出未知的病毒、木马等 有害程序的存在并将其拦截,从而保证计算机系统的安全。
并且,本发明的计算机反病毒防护系统从根本上避免了现有的杀 毒软件只能识别出已有病毒,且对于病毒库更新永远落后于新病毒产 生的弊端,建立崭新的计算机反病毒防护体系,对于计算机安全领域 具有划时代的意义。
通过上述的说明内容,本发明领域相关工作人员完全可以在不偏 离本项发明技术思想的范围内,进行多样的变更以及修改。因此,本 项发明的技术性范围并不局限于说明书上的内容,必须要根据权利范 围来确定其技术性范围。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈