著录项信息
专利名称 | 未知病毒程序的识别及清除方法 |
申请号 | CN200610007610.X | 申请日期 | 2006-02-15 |
法律状态 | 权利终止 | 申报国家 | 暂无 |
公开/公告日 | 2007-03-28 | 公开/公告号 | CN1936910 |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06F21/00 | IPC分类号 | G;0;6;F;2;1;/;0;0;;;G;0;6;F;1;/;0;0查看分类表>
|
申请人 | 白杰;李薇;鲁征宇 | 申请人地址 |
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 鲁征宇,光子(北京)国际信息工程技术研究有限公司 | 当前权利人 | 鲁征宇,光子(北京)国际信息工程技术研究有限公司 |
发明人 | 白杰;鲁征宇;李薇 |
代理机构 | 北京集佳知识产权代理有限公司 | 代理人 | 逯长明 |
摘要
本发明公开了一种未知病毒程序的识别方法,包括:建立经验库,用于存储病毒程序从行为到结果的过程表达式,所述过程表达式包括病毒程序的行为数据、结果数据、以及结果数据的各种排列组合的集合;获取待检测程序的行为数据;将获得的所述待检测程序的行为数据与所述经验库中的行为数据进行比较,得到所述行为数据导致的操作结果数据;以及,将所述操作结果数据与所述经验库中的结果数据、以及结果数据的各种排列组合的集合进行比较,判断所述待检测程序是否为病毒程序。本发明还提供了一种未知病毒程序的清除方法,不仅可以清除病毒程序,并且可以根据所述病毒程序的行为,实现对被病毒程序破坏的数据的恢复。
1、一种未知病毒程序的识别方法,其特征在于,包括:
建立经验库,用于存储病毒程序从行为到结果的过程表达式,所述过程表 达式包括病毒程序的行为数据或行为数据集合、结果数据、从行为到结果的对 应关系数据以及结果数据的各种排列组合的集合;
获取待检测程序的行为数据;
将获得的所述待检测程序的行为数据或行为数据集合与所述经验库中的 行为数据或行为数据集合进行比较,得到所述行为数据或者行为数据集合导致 的操作结果数据;以及,
将所述操作结果数据与所述经验库中的结果数据、以及结果数据的各种排 列组合的集合进行比较,判断所述待检测程序是否为病毒程序;
所述行为数据或行为数据集合包括攻击操作行为和有害操作行为。
2、如权利要求1所述的未知病毒程序的识别方法,其特征在于,还包括: 对所述待检测程序进行特征码识别,判断所述待检测程序是否为病毒程序。
3、如权利要求2所述的未知病毒程序的识别方法,其特征在于,包括: 将获得的所述待检测程序的行为数据或行为数据集合按照经验库中行为数据 或者行为数据集合的顺序进行排列。
4、如权利要求1、2或3所述的未知病毒程序的识别方法,其特征在于, 按照下述步骤获取待检测程序的行为数据:
获得已知病毒程序的破坏性行为数据;
根据所述破坏性行为数据设置对应的控制处理程序;
使控制处理程序获得对所述破坏性行为数据操作的控制权;
待检测程序的破坏性行为数据调用相应的控制处理程序,由所述控制处理 程序记录所述待检测程序的行为数据。
5、如权利要求1、2或3所述的未知病毒程序的识别方法,其特征在于, 还包括:如果所述待检测程序被判定为病毒程序,则将所述待检测程序的行为 数据存储至所述经验库中的行为信息中,将所述待检测程序行为对应的结果数 据存储至所述经验库中的结果信息中,并建立所述待检测程序的行为数据和结 果数据之间的对应关系。
6、如权利要求1、2或3所述的未知病毒程序的识别方法,其特征在于, 还包括:如果所述待检测程序被判定为病毒程序,则将所述待检测程序的行为 数据或者行为数据集合存储为病毒程序的行为数据或者行为数据集合。
7、如权利要求6所述的未知病毒程序的识别方法,其特征在于,还包括: 如果所述待检测程序被判定为病毒程序,存储病毒程序的破坏性操作结果数据 或破坏性操作结果数据排列组合后的数据集合。
8、如权利要求1所述的未知病毒程序的识别方法,其特征在于,还包括:
建立有害行为库,用于存储病毒程序的行为数据或者行为数据集合。
9、一种未知病毒程序的清除方法,其特征在于,包括:
建立经验库,用于存储病毒程序从行为到结果的过程表达式,所述过程表 达式包括病毒程序的行为数据或行为数据集合、结果数据、从行为到结果的对 应关系数据以及结果数据的各种排列组合的集合;
获取待检测程序的行为数据;
将获得的所述待检测程序的行为数据或行为数据集合与所述经验库中的 行为数据或行为数据集合进行比较,得到所述行为数据或者行为数据集合导致 的操作结果数据;以及,
将所述操作结果数据与所述经验库中的结果数据、以及结果数据的各种排 列组合的集合进行比较,判断所述待检测程序是否为病毒程序;
如果判定所述待检测程序是病毒程序,则清除所述待检测程序;
所述行为数据或行为数据集合包括攻击操作行为和有害操作行为。
10、如权利要求9所述的未知病毒程序的清除方法,其特征在于还包括:
如果判定所述待检测程序是病毒程序,根据获得的所述待检测程序的行为 数据或行为数据集合,建立对应的逆行为操作步骤;
执行所述逆行为操作步骤。
技术领域\n本发明涉及一种未知病毒程序的识别及清除方法,特别是涉及一种对于未 知病毒程序的识别方法以及清除该病毒程序的方法。\n背景技术\n通常的反病毒程序中,对于病毒程序的识别通常采用特征代码扫描技术。 反病毒程序由两部分组成:一部分是病毒程序代码库,含有经过特别选定的各 种计算机病毒程序的特征代码串;另一部分是利用该代码库对待检测程序进行 扫描的扫描程序和清除程序。通过查找待检测程序中是否存在病毒程序代码库 中的特征代码串来判断待检测程序是否为病毒程序。病毒程序扫描程序能识别 的计算机病毒程序的数目完全取决于病毒程序代码库内所含病毒程序的特征 代码串的数量有多少。显而易见,所述病毒程序代码库中病毒程序代码特征代 码串的数量越多,扫描程序能识别出的病毒程序就越多。特征码查毒方案实际 上是人工查毒经验的简单表述,它再现了人工辨识病毒程序的一般方法,采用 了“同一病毒程序或同类病毒程序的某一部分代码相同”的原理,也就是说, 如果病毒程序及其变种、变形病毒程序具有同一性,则可以对这种同一性进行 描述,并通过对程序体与描述结果(亦即“特征码”)进行比较来查找病毒程 序。但是并非所有病毒程序都可以描述其特征码,很多病毒程序都难以描述, 甚至无法用特征码进行描述。并且特征码识别方法需要技术人员预先分析得出 病毒程序的特征码,所以实际上只能识别已知病毒程序,对未知病毒程序不能 进行有效的识别和清除。\n申请号为01117726.8号的中国发明专利公开了一种采用病毒程序行为感 染实验法诊断病毒程序的方法。该方法是指:先运行待检测程序,再运行足够 多的确切知道不带毒的正常程序作为诱饵,然后观察这些正常程序的长度和校 验和,如果发现有的程序长度增长,或者校验和发生变化等情况,就可以判断 出该待检测程序是否为病毒程序。当然,为了保证本计算机系统的安全,一般 都会利用程序模拟一个CPU,它可以像真正CPU一样取值,译码,执行,以及 模拟一段代码在真正CPU上运行得到的结果。但是由于所述的病毒程序行为感 染分析法需要模拟一个CPU,甚至整个操作系统,以及需要采用足够多的诱饵 诱发待检测程序,所以会导致所述方法占用较大的系统空间以及识别病毒程序 的效率低下。\n发明内容\n鉴于上述问题,本发明要解决的技术问题是提供一种不仅仅能识别已知病 毒程序,也可以识别未知病毒程序的未知病毒程序的识别方法以及清除方法。\n为解决上述技术问题,一种未知病毒程序的识别方法,包括:\n建立经验库,用于存储病毒程序从行为到结果的过程表达式,所述过程表 达式包括病毒程序的行为数据或行为数据集合、结果数据、从行为到结果的对 应关系数据以及结果数据的各种排列组合的集合;\n获取待检测程序的行为数据;\n将获得的所述待检测程序的行为数据或行为数据集合与所述经验库中的 行为数据或行为数据集合进行比较,得到所述行为数据或者行为数据集合导致 的操作结果数据;以及,\n将所述操作结果数据与所述经验库中的结果数据、以及结果数据的各种排 列组合的集合进行比较,判断所述待检测程序是否为病毒程序;\n所述行为数据或行为数据集合包括攻击操作行为和有害操作行为。\n所述方法还包括:对所述待检测程序进行特征码识别,判断所述待检测程 序是否为病毒程序。\n所述方法还包括:将获得的所述待检测程序的行为数据或行为数据集合按 照经验库中行为数据或者行为数据集合的顺序进行排列。\n按照下述步骤获取待检测程序的行为数据:\n获得已知病毒程序的破坏性行为数据;\n根据所述破坏性行为数据设置对应的控制处理程序;\n使控制处理程序获得对所述破坏性行为数据操作的控制权;\n待检测程序的破坏性行为数据调用相应的控制处理程序,由所述控制处理 程序记录所述待检测程序的行为数据。\n所述方法还包括:如果所述待检测程序被判定为病毒程序,则将所述待检 测程序的行为数据存储至所述经验库中的行为信息中,将所述待检测程序行为 对应的结果数据存储至所述经验库中的结果信息中,并建立所述待检测程序的 行为数据和结果数据之间的对应关系。\n所述方法还包括:如果所述待检测程序被判定为病毒程序,则将所述待检 测程序的行为数据或者行为数据集合存储为病毒程序的行为数据或者行为数 据集合。\n所述方法还包括:如果所述待检测程序被判定为病毒程序,存储病毒程序 的破坏性操作结果数据或破坏性操作结果数据排列组合后的数据集合。\n所述方法还包括:\n建立有害行为库,用于存储病毒程序的行为数据或者行为数据集合。\n本发明提供的未知病毒程序的清除方法,包括:\n建立经验库,用于存储病毒程序从行为到结果的过程表达式,所述过程表 达式包括病毒程序的行为数据或行为数据集合、结果数据、从行为到结果的对 应关系数据以及结果数据的各种排列组合的集合;\n获取待检测程序的行为数据;\n将获得的所述待检测程序的行为数据或行为数据集合与所述经验库中的 行为数据或行为数据集合进行比较,得到所述行为数据或者行为数据集合导致 的操作结果数据;以及,\n将所述操作结果数据与所述经验库中的结果数据、以及结果数据的各种排 列组合的集合进行比较,判断所述待检测程序是否为病毒程序;\n如果判定所述待检测程序是病毒程序,则清除所述待检测程序;\n所述行为数据或行为数据集合包括攻击操作行为和有害操作行为。\n所述未知病毒程序的清除方法,还包括:\n如果判定所述待检测程序是病毒程序,根据获得的所述待检测程序的行为 数据或行为数据集合,建立对应的逆行为操作步骤;\n执行所述逆行为操作步骤。\n与现有技术相比,本发明具有至少以下的优点:\n本发明通过实践中总结,得出一些典型病毒程序的典型行为,获取待检测 程序的行为数据,进行行为的比较,从而判断所述待检测程序是否为病毒程序。 所以本专利不仅仅能识别已知病毒程序,也可以相当准确的识别多数的未知病 毒程序。\n本发明通过经验库或者原则库存储病毒程序的一些信息,通过一定的比较 或者逻辑分析过程,即同时考虑所述待检测程序的行为和结果,故可以实现未 知病毒程序的精确识别,提高未知病毒程序识别的准确度和效率。并且所述的 经验库和原则库还可以在识别未知病毒程序的过程中进行自动完善,故可以提 高未知病毒程序识别的准确度和效率。\n本发明还提供了一种未知病毒程序的清除方法,不仅可以清除病毒程序, 并且可以根据所述病毒程序的行为,建立并执行所述病毒程序的逆行为操作, 故可以实现对被病毒程序破坏的数据的恢复,以解决虽然清除了病毒程序却不 能恢复被破坏的数据的问题。\n附图说明\n下面结合附图和具体实施方式对本发明作进一步详细的说明。\n图1是本发明所述未知病毒程序识别方法的第一实施例的步骤流程图;\n图2是本发明所述未知病毒程序识别方法的第二实施例的步骤流程图;\n图3是本发明所述未知病毒程序识别方法中的获取待检测程序的行为数 据的步骤流程图;\n图4是本发明所述未知病毒程序识别及清除方法的步骤流程图;\n图5是系统功能调用表的结构示意图;\n图6是系统功能调用程序实际存储区的示意图;\n图7是图5所示的系统功能调用表存储有相应的控制处理程序时的结构示 意图;\n图8是图7所示存储实例的功能调用程序实际存储区的示意图;\n图9是存储有所述控制处理程序的一个独立的操作行为调用表的结构示 意图;\n图10是将所有控制处理程序存储为另一个独立的操作行为调用表的结构 示意图。\n具体实施方式\n本发明的核心思想在于:获取待检测程序的行为数据,并与已经获得的病 毒程序的特殊行为数据,即与破坏性操作有关的行为数据进行比较,从而判断 所述待检测程序是否为病毒程序。所以本发明方法不仅仅能识别已知病毒程 序,通过行为数据的比较,也可以识别出多数的未知病毒程序。\n参照图1,是本发明所述未知病毒程序识别方法的第一实施例的流程图。 图1所述的方法包括以下步骤:\n步骤s1,获取待检测程序的行为数据。所述待检测程序的行为数据,其 实质就是一系列能够完成特定功能或结果的源代码序列块,即能够完成特定功 能或结果的程序操作指令或以及程序操作指令和操作参数或具体的程序操作 指令的集合或程序操作指令以及操作参数的集合。所述的序列块可以由反病毒 技术人员人工和借助辅助程序分析得出,采用一般分析病毒程序的方式对该待 检测程序进行分析即可。所述分析过程除了反病毒技术人员之外,还需要 DEBUG、PROVIEW等分析用工具程序和专用的试验用计算机。因为所述待检测 程序为病毒程序,有可能在被分析阶段继续传染甚至发作,把软盘、硬盘内的 数据完全破坏,这就要求分析操作必须在专门设立的试验用PC机上进行,以 免带来不必要的损失。\n通常的分析病毒程序的步骤可以分为动态和静态两种。所述动态分析则是 指利用DEBUG等程序调试工具在内存加载病毒程序的情况下,对病毒程序做动 态跟踪,观察病毒程序的具体工作过程,以理解病毒程序工作的原理。在病毒 程序编码比较简单时,动态分析不是必须的。但当病毒程序采用了较多的技术 手段时,则必须使用动、静态相结合的分析方法才能完成整个分析过程。例如 F_lip病毒程序采用随机加密的手段,利用对病毒程序解密程序的动态分析才 能完成解密工作,从而进行下一步的静态分析。所述静态分析是指利用DEBUG 等反汇编程序将病毒程序代码形成反汇编后的程序清单进行分析,看病毒程序 可以分为哪些模块,使用了哪些系统调用功能程序,采用了哪些技巧,如何将 病毒程序感染文件的过程转化为清除病毒程序、修复文件的过程,哪些代码可 被用做特征码以及如何防御这种病毒程序导致的破坏等。\n现有技术中,如果进行上述分析,能够获得病毒程序的特征码,存入病毒 程序特征码库中,以后即可根据特征码实现病毒程序的识别。由于特征码识别 法只能识别已知的病毒程序,因此,为识别出未知病毒程序,在本实施方式中 需要分析得出所述待检测程序的行为操作数据,即一系列完成特定功能或结果 的源代码序列块,根据所述源代码序列块判断所述待检测程序是否为病毒程 序。当然,所述获取待检测程序行为数据的步骤也可以由计算机自行完成,该 部分的实施例在后面进行详述。\n步骤s2,根据获得的所述待检测程序的行为数据或行为数据集合以及预 置的病毒程序的行为数据或者行为数据集合,判断所述待检测程序是否为病毒 程序。\n所述预置的病毒程序的行为数据或者行为数据集合可以采用数据库的方 式进行存储,以方便存储和调用。所述病毒程序的行为数据可以通过上述的人 工分析过程或者计算机分析过程得出,也可以直接采用现有的对病毒程序的行 为分析结果。所述病毒程序的行为数据也就是符合一定条件的源代码序列块。\n将获得的所述待检测程序的行为数据或行为数据集合,与预置的病毒程序 的行为数据或者行为数据集合进行比较,就可以判断出所述待检测程序是否为 病毒程序。当然,也可以采用其他本领域技术人员熟悉的分析方法,达到判断 所述待检测程序是否为病毒程序之目的。所述判断采用的规则可以是本领域技 术人员根据经验得出的,可能存在相当的差异,当然,这些规则都可以给出所 述待检测程序是病毒程序或者不是病毒程序的判断结果,只不过判断的准确度 有一些差异而已。而且由于采用的分析方法的不同肯定会导致判断采用的规则 有所不同,所以本文在此不对采用的分析方法和判断的规则作一定的限制,只 要利用了本发明所述的行为数据比较的方式就在本发明的构思之内。以下以一 种判断规则为例进行说明。\n可以通过步骤s1中的人工或者计算机分析的过程,对已知的病毒程序进 行分析,得出已知病毒程序的行为数据或者行为数据的集合(下文统一称为行 为数据),并可以将所述行为数据存储到数据库中,本文将该数据库称为有害 行为数据库。所述有害行为数据库中存储的是各种病毒程序的一系列行为操作 数据,所述病毒程序的行为操作数据还可以是经过技术人员依一定规则选出 的,例如:选择病毒程序要实施破坏时经常执行的操作行为数据。例如采用 13H中断写磁盘的操作,是病毒程序的共同行为,而且比较特殊。经过操作行 为数据的选择,有害行为数据库可以存储较少的用于判断未知程序的数据量, 从而提高病毒程序行为数据的比较速率。当然,也可以通过计算机对已知病毒 程序进行自动分析,记录所述病毒程序的所有行为数据,或者通过计算机按照 预定义的规则对所述病毒程序的行为数据进行筛选记录。\n这样,将所述待检测程序的行为数据和有害行为数据库中的行为数据进行 比较,就能够判断出所述待检测程序是否为病毒程序。\n判断情况A:当所述待检测程序的行为数据与所述有害行为库中存储的病 毒程序行为数据相同或者相似,就可以得出待检测程序就是已知病毒程序类型 或者已知病毒程序类型的一个变种的结论。所述的相同或者相似,可以预定义 一个或者多个参数,当所述待检测程序的行为数据和所述典型行为数据的匹配 或者包括程度达到或者超过所述参数时,可以认为相同或者相似。\n具体的,在一个实施例中,某待检测程序的行为数据为:行为1、行为2、 行为3、行为4、行为5、行为6、行为7、行为8。\n在有害行为库中存储的某病毒程序的系列行为数据为:行为2、行为3、 行为4、行为5、行为6。\n将上述行为数据比较之后得出:所述待检测程序行为完全包含了该病毒程 序的行为特征,则可直接判断此待检测程序是该病毒程序的一个变种。\n判断情况B:当所述待检测程序的行为数据与所述有害行为库中的病毒程 序行为数据中的任何一条都不符合,则判定所述待检测程序为合法程序。\n具体的,在一个实施例中,某待检测程序的行为数据为:行为-1、行为 -2、行为-3;\n在所述有害行为库中的有害行为数据包括:行为1、行为2、行为3、行 为4、行为5、行为6......行为n(n为自然数);\n将上述行为数据比较之后得出:所述待检测程序行为不包含有害行为库中 存储的任何一个行为,认为所述待检测程序合法。\n判断情况C:当所述待检测程序的行为数据与所述有害行为库中存储的病 毒程序行为数据比较之后,不属于上述判断情况A、B中的任何一个,则需要 进行进一步识别。当然这样进一步识别的步骤流程,只是为了增加未知病毒程 序识别的准确度,也可以判断情况只有两个分支:是或者否。\n具体的,在一个实施例中,一个待检测程序程序的行为数据为:行为1、 行为2、行为3、行为4;\n在所述有害行为库中某病毒程序的系列行为包括:行为2、行为3、行为 4、行为5、行为6;\n比较之后得出:所述待检测程序行为只具有某种病毒程序的系列行为的一 部分,则不能直接判断待检测程序的性质,需要对所述待检测程序作进一步判 断。当然,也可以直接给出结论,将该待检测程序视为不是病毒程序或者是病 毒程序,但是这样的结论是不够精确的。为了提高病毒程序的识别程度,需要 对所述待检测程序作进一步判断,以下步骤是对所述待检测程序的继续识别过 程。\n步骤s3,建立经验库,所述经验库存储病毒程序的行为数据或者行为数 据的集合,以及存储从行为数据到结果数据的过程表达式,所述过程表达式包 括行为数据和结果数据以及从行为数据到结果数据的对应关系数据;还可以建 立一个原则库,所述原则库用于存储病毒程序的破坏性操作结果数据。\n所述经验库用来存储病毒程序的“一个行为导致的结果”或“多个行为按 照先后顺序依次完成后导致的结果”的“行为逻辑推理表达式”或“离散数学 表达式”的集合。无论采用哪种表达式进行表达,实际上都是说明了所述病 毒程序从行为到结果的过程,每一个表达式都是经验库中的一个存储元素,经 验库中存储的所有表达式构成了一个完整的集合。\n具体的,在一个实施例中:\n行为逻辑推理表达式:(行为A)与(行为B)导致(结果AB)\n以实际程序举例说明:\n病毒程序:“自动查找a.exe文件的文件位置,然后将a.exe文件的文件 位置添加到注册表相应的启动项里,让操作系统启动后自动运行a.exe文件。”\n(行为A)等同于“自动查找a.exe文件的文件位置”。\n(行为B)等同于“将a.exe文件的文件位置添加到注册表相应的启动项 里”。\n(结果AB)等同于“操作系统启动后自动运行a.exe文件”。\n所述原则库存储病毒程序的破坏性操作结果,所述破坏性操作结果一般可 以包括对计算机操作系统被病毒程序破坏后的恶性结果,例如:非常规读写操 作、删除某系统文件、导致内存冲突、破坏硬盘分区表等等。所述的一个破坏 性操作结果就是所述原则库的一个存储元素。当然,所述破坏性操作结果也可 以包括可能破坏系统的操作结果,因为病毒程序进行的一些操作单独看来并不 一定是具有破坏性的,合法程序也进行这样的操作。在经验库中的每个行为都 可以有相对应的结果,行为的组合也可以有相对应的结果。\n步骤s4,将获得的所述待检测程序的行为数据进行顺序排列,如:<(行 为A)与(行为B)....与(行为N)>,并与所述经验库中的行为数据进行比 较。这里所述的顺序可以是病毒程序的行为数据在病毒程序中的排列顺序,也 可以是经验库中存储的病毒程序的行为数据的顺序排列。所述经验库中的行为 数据是指行为逻辑推理表达式中“导致”字段前的信息。所述待检测程序的行 为数据按照经验库中行为数据的顺序进行排列,即可以得到一系列的行为序 列,依次与所述经验库中存储的行为数据进行比较。如果所述经验库中存在相 匹配的行为信息,则执行步骤s5;如果所述经验库中不存在任何相匹配的行 为信息,则可以判定所述待检测程序为合法程序。所述将获得的所述待检测程 序的行为数据按照顺序进行排列之目的是在于提高比较操作的效率和准确度, 当然也可以不排列待检测程序的行为数据直接进行比较。\n步骤s5,根据所述经验库中匹配的行为数据所对应的结果数据以及所述 原则库中的破坏性操作结果,即比较行为数据或者行为数据集合导致的操作结 果数据以及所述原则库中的破坏性操作结果数据,判断所述待检测程序是否为 病毒程序。\n所述匹配是指步骤s4中比较后的一种结果。所述经验库中匹配的行为数 据所对应的结果数据是指行为逻辑推理表达式中“导致”字段后的数据。所述 判断所采用的规则可以是本领域技术人员根据经验得出的,可以存在相当的差 异,当然,这些规则都可以给出所述待检测程序是病毒程序或者不是病毒程序 的判断结果,只不过判断的准确度有一些差异而已。\n本实施方式采用将所述经验库中匹配的行为数据所对应的结果数据和所 述原则库中的破坏性操作结果进行比较的分析方法,如果比较之后所述原则库 中的任何一个存储元素被匹配,则可以判定所述待检测程序为未知的病毒程 序;否则,可以判定所述待检测程序为合法程序。\n当然,所述步骤s4、s5还可以涉及比较、逻辑分析或者逻辑判断的过程, 这些分析方法的加入,都可以完善本实施方式识别未知病毒程序的准确度以及 效率。这些分析方法对于本领域一般技术人员来说是熟知的,在此就不再赘述。\n对于图1中的步骤s4、步骤s5,参照以下具体例子进行说明。例:\n假设某一个病毒程序的行为是:“自动查找a.exe文件的文件位置,然后 将a.exe文件的文件位置添加到注册表相应的启动项里,让操作系统启动后自 动运行a.exe文件。”\n那么:“自动查找a.exe文件的文件位置”(此为:行为A)导致“获取了 a.exe文件的文件位置”(此为:结果A),“将a.exe文件的文件位置添加到注 册表相应的启动项里”(此为:行为B)导致“让操作系统启动后自动运行a.exe 文件”(此为:结果B)\n假设下述的“行为逻辑推理表达式1”和“行为逻辑推理表达式2”都是 经验库中的存储元素,并且假设(结果B)是原则库中的一个存储元素,则:\n行为逻辑推理表达式1:(行为A)导致(结果A);\n行为逻辑推理表达式2:(行为B)导致(结果B);\n步骤s4,将所述病毒程序的“行为”数据与所述经验库里的存储元素进 行比较的过程如下:\n<(行为A)>等同或者匹配于<行为逻辑推理表达式1的行为信息,即指 “行为逻辑推理表达式1”里“导致”字段前的信息>。\n<(行为B)>等同或者匹配于<行为逻辑推理表达式2的行为信息,即指 “行为逻辑推理表达式2”里“导致”字段前的信息>。\n步骤s5,将所述经验库中匹配的行为信息对应的结果数据,即指“行为 逻辑推理表达式”里“导致”字段后的数据,与“原则库”里的存储元素进行 比较的过程如下:\n<(结果A)不等同或者匹配于“原则库”中的任何一个存储元素>;\n<(结果B)等同或者匹配于“原则库”中的其中一个存储元素>;\n分析处理的过程情况2:\n(结果A)不是“原则库”中的任何一个存储元素。\n(结果B)是“原则库”中的其中一个存储元素。\n(结果A)是(结果B)成立的前提条件。所述前提条件的判定可以根据 数据读写操作、获取、调用等操作之间的逻辑关系,通过计算机进行判定。\n判断结论:是病毒程序。\n上述的判定规则中,不仅要求(结果B)是“原则库”中的其中一个存储 元素,而且要求(结果A)对(结果B)有贡献,满足这两个条件,才能判断 所述待检测程序是病毒程序。\n当然,所述的判定规则也可以只要求满足:(结果A)或者(结果B),其 中任何一个是“原则库”中的其中一个存储元素;就可以判定所述待检测程序 是病毒程序。由于采用的判定规则的不同,可能会导致判定结果的准确度有所 差异,但是只要采用了行为以及结果的共同比较过程,则就属于本发明的构思 之一。\n另外,也可以仅建立经验库,用于存储病毒程序从行为到结果的过程表达 式,这里,所述过程表达式包括病毒程序的行为数据或行为数据集合、结果数 据、从行为到结果的对应关系数据以及结果数据的各种排列组合的集合;这样, 就可以将获得的所述待检测程序的行为数据或行为数据集合与所述经验库中 的行为数据或行为数据集合进行比较,得到所述行为数据或者行为数据集合导 致的操作结果数据,进一步将所述操作结果数据与所述经验库中的结果数据、 以及结果数据的各种排列组合的集合进行比较,也可以判断出所述待检测程序 是否为病毒程序。\n具体参照图2,是本发明所述未知病毒程序识别方法的第二实施例的步骤 流程图,包括以下步骤:\n步骤21,获取待检测程序的行为数据。所述待检测程序的行为数据,其 实质就是一系列能够完成特定功能或结果的源代码序列块,所述的序列块可以 预先分析得出,当然,所述获取待检测程序的行为数据的步骤也可以由计算机 自行完成,该部分的实施例在后面进行详述。\n步骤22,根据获得的所述待检测程序的行为数据以及预置的病毒程序的 行为数据,判断所述待检测程序是否为病毒程序。所述预置的病毒程序的行为 数据可以采用数据库的方式进行存储,以方便存储和调用。所述病毒程序的行 为数据可以通过分析过程得出,也可以直接采用现有的对病毒程序的行为分析 结果。所述的病毒程序的行为数据也就是符合一定条件的源代码序列块。\n图2所示方法中的大部分步骤和图1所示方法中的步骤相类似,在此不再 赘述。图2所示识别方法与图1所示识别方法的主要区别在于提高未知病毒程 序识别准确度的步骤23、24、25有所不同,以下对此部分进行说明,未详尽 信息请参见图1所示方法的说明。\n步骤23,建立经验库,所述经验库用于存储病毒程序从行为到结果的过 程表达式,包括行为数据和结果数据以及从行为到结果的对应关系数据;并将 所述的结果数据进行排列组合,形成结果数据的排列组合的集合。\n步骤24,将获得的所述待检测程序的行为数据按照一定的顺序进行排列 如:<(行为A)与(行为B)....与(行为N)>,并与所述经验库中存储的 行为信息进行比较。所述经验库中的行为数据是指行为逻辑推理表达式中“导 致”字段前的信息。所述待检测程序的行为数据按照一定的顺序进行排列后, 即可以得到一系列的行为序列,依次与所述经验库中的行为数据进行比较。如 果所述经验库中存在相匹配的行为数据,则执行步骤25;如果所述经验库中 不存在任何相匹配的行为信息,则可以判定所述待检测程序为合法程序。\n步骤25,将所述经验库中匹配的行为数据所对应的结果数据按照一定的 顺序进行排列,并与所述经验库中的结果数据排列组合的集合进行比较,就可 以判断出所述待检测程序是否为病毒程序。\n所述按照一定的顺序还可以是指按照结果产生的顺序,<如:(结果A)与 (结果B)....与(结果N)>。所述经验库中匹配的行为数据所对应的结果数 据是指行为逻辑推理表达式中“导致”字段后的数据。同样,所述判断采用的 规则可以是本领域技术人员根据经验得出的,可以存在相当的差异,这些规则 都可以给出所述待检测程序是病毒程序或者不是病毒程序的判断结果,只不过 判断的准确度有一些差异而已。所述经验库中的结果数据排列组合的集合可以 是所有的或者经过初步筛选的结果数据的排列组合;这样可以大大减小集合中 排列组合的数量以及提高匹配效率。\n所述将获得的所述待检测程序的行为数据按照一定的顺序进行排列,以及 将所述经验库中匹配的行为信息所对应的结果信息按照其顺序进行排列,在于 提高比较的效率和准确度,当然也可以不经过排列直接进行对比。\n本实施方式可以采用将所述经验库中匹配的行为数据对应的结果数据按 照一定的顺序进行排列,并与所述经验库中存储的结果数据的排列组合的集合 进行比较,如果比较之后符合所述经验库中的结果数据排列组合的集合里的任 何一个子集,则可以判定所述待检测程序为未知的病毒程序;否则,可以判定 所述待检测程序为合法程序。\n当然,所述步骤24、25还可以涉及比较、逻辑分析或者逻辑判断的过程, 这些分析方法的加入,都可以完善本专利识别未知病毒程序的准确度以及效 率。这些分析方法对于本领域一般技术人员来说是熟知的,在此就不再赘述。\n对于步骤24、步骤25,参照以下具体例子进行说明。例:\n假设一个病毒程序的行为:“自动查找a.exe文件的文件位置,然后将 a.exe文件的文件位置添加到注册表相应的启动项里,让操作系统启动后自动 运行a.exe文件。”\n那么:“自动查找a.exe文件的文件位置”(此为:行为A)导致“获取了 a.exe文件的文件位置”(此为:结果A),“将a.exe文件的文件位置添加到注 册表相应的启动项里”(此为:行为B)导致“让操作系统启动后自动运行a.exe 文件”(此为:结果B)\n假设“行为逻辑推理表达式1”和“行为逻辑推理表达式2”都是经验库 中的存储元素,假设(结果A)与(结果B)的组合排列是“结果数据排列组 合的集合”里的其中一个子集。所述“(结果A)与(结果B)”中的“与”是 逻辑上的用语“和”,即“and”。\n行为逻辑推理表达式1:(行为A)导致(结果A);\n行为逻辑推理表达式2:(行为B)导致(结果B);\n那么,步骤24“行为”与“经验库”里的存储元素进行比较的过程中,<(行 为A)>等同或者匹配于行为逻辑推理表达式1中的行为数据,即指“行为逻 辑推理表达式1”里“导致”字段前的信息。\n<(行为B)>等同或者匹配于行为逻辑推理表达式2的行为数据,即指“行 为逻辑推理表达式2”里“导致”字段前的信息。\n步骤25中,所述经验库中匹配的行为数据对应的结果数据,即指“行为 逻辑推理表达式”中“导致”字段后的信息,将所述结果数据进行组合排列得 到:(结果A)与(结果B)。所述“(结果A)与(结果B)”中的“与”是逻辑 上的用语。\n分析处理的结果是:(结果A)与(结果B)的组合排列是“结果数据排列 组合的集合”中的一个子集。\n进一步得到判断结果:该待检测程序是病毒程序。\n图1和图2示出的两种实施方式,提高识别未知病毒准确度和效率的方法, 当然,还可以采用本领域技术人员熟悉的其他方法,但是由于篇幅有限,在此 就不再赘述。当然,也可以将图1和图2示出的两种实施方式的有益部分合并 在一起使用。所述的核心步骤是指图1和图2示出的步骤s1、s2和步骤21、 22。\n本实施方式所述的未知病毒程序的识别方法,还可以包括:对所述待检测 程序进行特征码识别,判断所述待检测程序是否为病毒程序。因为遇到待检测 程序的时候,无法得知是已知病毒程序、合法程序或者未知病毒程序,所以可 以先经过特征码识别步骤,已减轻本实施方式所述未知病毒程序的识别步骤的 计算量。如果对比之后,所述已知的病毒程序特征码能够被所述待检测程序完 全匹配,则说明所述待检测程序为已知病毒程序,这样就可以免除对已知病毒 程序进行继续的行为判断,以提高检测效率。一般情况下,病毒程序特征码是 连续的若干个字节组成的代码串,在病毒程序特征码中还可以包含有一个或几 个“模糊”字节。当与这种类型的病毒程序特征码进行比较时,只要除“模糊”字 节之外的字符串都能完好匹配,则说明该待检测程序为病毒程序。\n如果所述待检测程序被判定为病毒程序,则将所述待检测程序的行为数据 存储至所述经验库中的行为信息中,将所述待检测程序行为对应的结果数据存 储至所述经验库中的结果信息中,并建立所述待检测程序的行为数据和结果数 据之间的对应关系。这样,就可以实时的完善和增加所述经验库的数据。所述 原则库中的存储元素一般可以不进行自动增加或者完善,因为对于计算机系统 的破坏性操作结果基本是稳定不变的。\n如果所述待检测程序被判定为病毒程序,则将所述待检测程序的行为数据 存储为一类病毒程序的行为数据;用于完善预置的所述典型病毒程序的行为数 据。\n当然,所述获取待检测程序的行为数据的步骤也可以由计算机自行完成, 参照图3,示出了一个由计算机自动完成获取待检测程序的行为数据的实施 例。\n步骤31,获取和分解已知病毒程序的破坏性操作行为。通过对病毒程序 多年的观察、研究,发现病毒程序有一些行为,是病毒程序的共同行为,而且 比较特殊。所述已知病毒程序的破坏性操作行为的获取和分解可以通过人工完 成也可以通过计算机实现。所述的破坏性操作行为一般可以包括对计算机系统 的非常规操作或者易造成恶性结果的操作。例如:非常规读写操作、删除某系 统文件、导致内存冲突、破坏硬盘分区表等等。下面列举一些具体的可以作为 监测病毒程序的行为:占用INT13H、修改DOS系统数据区的内存总量、对COM 和EXE文件做写入动作、病毒程序与宿主程序的切换特征等。除了上述较为明 显的破坏性操作行为,病毒程序一般还会包括较为正常的操作行为,如果单独 或者组合起来有可能产生破坏数据的危险操作,则也属于本发明所述病毒程序 的破坏性操作行为的范围内。\n通常,一个病毒程序的破坏行为可以由一系列的执行破坏性操作的指令或 指令集以及操作参数构成的,每一个所述的指令或指令集至少产生一个独立的 破坏性操作行为。因此,分解现有病毒程序的破坏性操作行为,即是将已经存 在的病毒程序中包含的独立的破坏性操作行为涉及的指令或指令集提取出来。 例如,假设13H中断的03H或05H号功能调用涉及可能的破坏数据的危险操作, 则13H中断的03H或05H号功能调用对应的指令就可以被看作是产生一个独立 的破坏性操作行为的指令。假设,10H中断的02H号功能调用和11H的06H号 功能调用组合在一起涉及可能的破坏数据的危险操作,则10H中断的02H号功 能调用和11H的06H号功能调用对应的指令集合就可以被看作是产生一个独立 的破坏性操作行为的指令集。如果一个被检测的程序具有这样的指令代码,就 可以得知该被检测程序存在一个可能破坏性其他程序或数据的可疑操作行为, 将这些行为收集起来,就可以通过程序的行为集合判断一个程序是否为病毒程 序以及如何最大限度地恢复相应的病毒程序破坏的数据。\n获取已知病毒程序的破坏性操作行为,也可以通过计算机辅助完成。例如 采用申请号为01117726.8、名称为“检测和清除已知及未知计算机病毒的方 法、系统和介质”的中国发明专利介绍的,以提供用于诱发病毒感染的感染对 象来检测病毒的方法,就可以获得已知和未知病毒程序的破坏性操作行为。由 于申请号为01117726.8的发明已经公开,在此不在赘述。\n步骤32,根据所述破坏性操作行为设置或编制该操作行为对应的控制处 理程序。\n为此,当将现有病毒程序的破坏性操作行为分解出来以后,就可以根据所 述破坏性操作行为编制该行为对应的控制处理程序,所述控制处理程序用于响 应待检测程序的破坏性操作行为涉及的指令和参数,并反馈所述破坏性操作行 为成功的信息以诱导该程序的下一个行为,同时记录所述待检测程序的该项破 坏性操作行为。\n假设,一个程序中的破坏性操作行为涉及的指令和参数为:DEL(参数1; 参数2;参数3),其中,DEL表示删除,参数1表示被删除的盘号,参数2表 示被删除的簇号,参数3表示接受删除是否成功的变量,则该破坏性操作行为 对应的控制处理程序可以是:\n(1)WRITE(FILE1,“DEL(参数1;参数2;参数3)”);\n(2)WRITE(DEL(参数1;参数2;参数3),0,0,0);\n其中,第(1)行的指令表示将破坏性指令“DEL(参数1;参数2;参数 3)”作为字符串记录进文件FILE1中;第(2)行的指令表示向将破坏性指令 DEL(参数1;参数2;参数3)反馈操作成功的标志“0”。\n步骤33,将所述控制处理程序嵌入操作系统,使控制处理程序获得对所 述破坏性操作行为的控制权,这种控制权可以通过使控制处理程序获得优于操 作系统的系统控制权而获得。\n为了能够自动快速地检测并记录程序中可能出现的破坏性操作行为,以甄 别该程序是否为病毒程序,需要所述控制处理程序获得对被检测程序出现的破 坏性操作行为的控制权,以获得被检测程序中出现的破坏性操作行为,为此, 采用将所述控制处理程序嵌入到操作系统中的办法使控制处理程序获得相应 的破坏性操作行为的控制权;当然,也可以通过其他方式使控制处理程序获得 系统的监控权从而检测并记录待检测程序的破坏性操作行为。如果采用将所述 控制处理程序嵌入到操作系统中的方式,即可以通过将控制处理程序嵌入到操 作系统的功能调用表实现;也可以将控制处理程序存储到一个独立的操作行为 调用表,使其具有比操作系统的功能调用表更高级的优先权实现。例如:任何 操作系统中都会存在一个系统功能调用表,系统功能调用表根据需要可以有不 同的结构。参考图5,图5所示的系统功能调用表包括两个字段,一个是编号 字段,用于存储系统功能调用程序的编号;一个是功能调用地址字段,用于存 储系统功能调用程序指针,即地址,该地址通常对应系统功能调用程序的首地 址。图6是系统功能调用程序实际存储区的示意图,当需要某个操作系统提供 的功能时,例如需要13H中断处理程序提供的写磁盘操作,就需要从图5所示 的系统功能调用表中提取出13H中断处理程序的地址,再到图6所示的存储区 中的相应地址处读取相应的程序到内存中执行即可获得操作结果。如果将所述 控制处理程序嵌入到操作系统中,方法之一就是将相应的控制处理程序存储到 系统功能调用表中。假设现在有100H(H:表示16进制)个破坏性操作行为 被分解出来,而且已经编制好100H个对应的控制处理程序,则,将这100H 个控制处理程序的存储地址存入到图5所示表中,存储结果参考图7,图8示 出了图7存储实例的功能调用程序实际存储区的示意图。所述控制处理程序的 存储地址依次存储到系统功能调用程序地址的后面。\n实际中,将所述控制处理程序嵌入到操作系统中的方法实际中不限于图7 所示的存储方式,也可以采用图9所示的将所述控制处理程序直接存储为一个 独立的操作行为调用表的方式,并使所述控制处理程序获得优于系统功能调用 程序的优先权,该步骤的实现方式是:将图5中的系统功能调用指针,即功能 调用地址字段的系统功能调用程序的地址修改为相应控制处理程序的地址即 可。以图7为例,假设编号为0A00的A控制处理程序地址与编号为0003的 05H中断相对应,就需要将“功能调用地址”字段存储的“05H中断地址”修 改为“A控制处理程序地址”,从而在所述破坏性操作行为涉及的指令调用“05H 中断地址”对应的程序时,实际上调用的是“A控制处理程序地址”,从而使 “A控制处理程序”获得了优于“05H中断”的系统控制权。继续推广这种思 想,就可以将所述控制处理程序嵌入操作系统。\n在另外的实施例中,还可以使所述破坏性操作行为对应的系统功能调用程 序将其控制权移交给相应的控制处理程序,从而使控制处理程序获得对所述破 坏性操作行为的控制权。以图10这种存储方式为例,所有的控制处理程序在 系统中形成了另外一张系统功能调用表,只要使该表具有比系统原有的系统功 能调用表具有更高的优先级,就可以使控制处理程序获得对所述破坏性操作行 为的控制权。例如,在待检测程序调用所述控制处理程序调用系统功能调用程 序时,首先调用图10所述的表中的控制处理程序,如果在图10所述的表中不 存在被调用的控制处理程序,再去调用图2所述的表中的真正的系统功能调用 程序。\n由于通过步骤33,已经使控制处理程序获得对所述破坏性操作行为的控 制权,因此待检测程序在步骤34,待检测程序调用所述控制处理程序时,就 可以由所述控制处理程序对其进行应答并记录所述待检测程序的操作行为。 即,所述待检测程序执行时,一旦其中存在的实现破坏性操作行为的指令被执 行,即调用相应的系统功能调用程序,就会首先调用相应的控制处理程序,由 所述控制处理程序对其进行应答并记录所述待检测程序的破坏性操作行为。\n通常的病毒程序需要获得一条破坏性的行为操作结果,在得到成功操作的 结果时,才继续后续的操作,因此为了对待检测程序进行进一步的判断,还可 以通过所述的控制处理程序对所述待检测程序的调用返回成功应答的信息,从 而诱导所述待检测程序继续进行下一行为,而实际上,操作系统的控制权由于 在步骤33已由控制处理程序接管,所述待检测程序并没有得到实际运行的效 果,其收到的信息是控制处理程序传回的信息,其获得的信息相对于其需求来 说是虚假信息,因此待检测程序并没有在操作系统的环境下实际运行,而是在 控制处理程序构成主控制权的环境中虚拟运行,从而可以检测和记录所述待检 测程序的一系列行为操作,并且不会对系统造成损害。上述的获得病毒程序的 可执行的行为操作的方法可以理解为:在现实的操作系统内通过软件实现的方 法虚拟一个运行环境。这个环境的数据与运行结果与真实的操作系统完全隔 离,但是文件或进程的执行过程和结果与在真实的操作系统中运行是完全相同 的。\n实际中,所述步骤33是一个可选择的步骤,无论所述控制处理程序是否 嵌入操作系统,只要其在程序操作行为涉及的指令运行时具有优于操作系统的 控制权,即可形成诱发待检测程序行为的虚拟运行环境,从而检测到所述待检 测程序的操作行为。\n步骤35,所述待检测程序运行结束后,将记录的所述待检测程序的一系 列行为数据一并发送输出。\n参照图4,是本发明所述未知病毒程序的清除方法的步骤流程图,所述的 未知病毒程序识别方法可以采用图1或者图2所示的任一流程。图4所示的清 未知病毒程序除方法中在图1或者图2所示检测未知病毒程序方法的基础上还 包括:如果判定所述待检测程序是病毒程序,则清除所述待检测程序。\n图4所示的清除方法在清除病毒程序的基础上,还可以附加恢复被病毒程 序破坏的数据的恢复方法,包括以下步骤:\n步骤41、如果判定所述待检测程序是病毒程序,则根据获得的所述待检 测程序的行为数据,建立对应的逆行为操作步骤。\n由于已经获得病毒程序的可执行的行为操作步骤,因此可以根据所述行为 操作步骤建立所述行为操作步骤对应的逆行为操作步骤;例如,建立行为操作 步骤1、2、...、N对应的逆操作步骤1、2、...、N。假设行为操作步骤1用于 转移存储数据,则对应的逆行为操作步骤1则用于对应的逆行为操作,以恢复 数据;如果行为操作步骤2用于删除数据,则对应的逆行为操作步骤2用于完 成对应的逆操作,以恢复被删除的数据(例如以冗余校验的方式恢复数据)。 所述建立对应的逆行为操作步骤,即生成一个程序源代码指令的集合,所述指 令集合相对应的操作步骤与所述行为操作步骤所执行的操作相反。\n步骤42、执行所述逆行为操作步骤。\n由于所述逆行为操作步骤就是程序源代码指令的集合,所以对所述逆行为 操作步骤的执行实际上就是对所述程序源代码指令进行依次分别的调用的过 程。根据每个程序源代码指令进行相应的执行操作,从而完成被病毒程序破坏 的数据的恢复操作。例如,建立一个执行逆行为操作步骤功能的一个主功能函 数,在这个主功能函数里实际上是将所述程序源代码指令进行依次分别调用的 过程。\n所述的逆行为操作步骤,即程序源代码指令的集合,可以以数据库的方式 进行存储或者以大型数据存储表的方式进行存储。例如,将所述的逆行为操作 步骤以数据库列表的方式进行存储,则某一个病毒程序的逆行为操作步骤就是 该数据库中的一个存储元素(子集)。该数据库可以采用如下的数据结构存储 所述的某一个存储元素,即某一个病毒程序的逆行为操作步骤:\n(病毒程序名称)、(逆行为操作步骤1,逆行为操作步骤2,......逆行为 操作步骤N)、(附加信息段,删除病毒程序体);\n其中,所述的1、2......N表示了清除病毒程序步骤的顺序,所述的逆行为 操作步骤包括源代码序列块,所述源代码序列块用以完成所述病毒程序行为操 作步骤对应的逆操作。上述的逆行为操作步骤信息中还可以包括相关操作参数 等。上述的数据结构还可以采用其他方式,例如:\n(病毒程序名称)、(逆行为操作步骤1,逆行为操作步骤2,......逆行为 操作步骤N,附加信息段)、(删除病毒程序体);\n实际上,上述的存储方式以及存储的数据结构只是为了说明本发明的技术 思想而举出的一个具体实施例而已,可以采用其他可行的存储方式和数据结构 进行替代,只要能够实现所述逆行为操作步骤的存储和调用即可。\n由所述行为操作步骤得出对应的逆行为操作步骤,可以通过一对应表来实 现:预置数据列表,表中对应列出了各种行为操作步骤以及相对应的逆行为操 作步骤;当所述病毒程序进行了某个行为操作步骤,则从所述预置的数据列表 中比较得出相对应的逆行为操作步骤,例如:添加和删除;依次完成所述病毒 程序的所有行为操作步骤向逆行为操作步骤的转换。\n以上对本发明所提供的一种未知病毒程序的识别及清除方法进行了详细 介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实 施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域 的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改 变之处,综上所述,本说明书内容不应理解为对本发明的限制。
法律信息
- 2016-04-06
未缴年费专利权终止
IPC(主分类): G06F 21/00
专利号: ZL 200610007610.X
申请日: 2006.02.15
授权公告日: 2008.11.26
- 2011-06-01
专利权的转移
登记生效日: 2011.04.21
专利权人由白杰变更为北京博新元科技有限公司
地址由100089 北京市海淀区小南庄16号楼一单元203变更为100102 北京市朝阳区利泽中一路1号4层公寓3A19
专利权人由李薇 鲁征宇变更为空
- 2008-11-26
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2006-07-12
|
2004-12-31
| | |
2
| |
2006-08-16
|
2005-02-07
| | |
3
| |
2006-07-12
|
2004-12-31
| | |
4
| |
2005-06-08
|
2003-12-05
| | |
5
| |
2007-01-03
|
2005-06-29
| | |
6
| |
2005-01-19
|
2004-03-29
| | |
7
| |
2005-12-14
|
2004-06-10
| | |
8
| |
2001-09-26
|
2001-04-29
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |