著录项信息
专利名称 | 拦截捆绑软件的方法和装置 |
申请号 | CN201510982443.X | 申请日期 | 2015-12-23 |
法律状态 | 授权 | 申报国家 | 暂无 |
公开/公告日 | 2016-05-04 | 公开/公告号 | CN105550573A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06F21/51 | IPC分类号 | G;0;6;F;2;1;/;5;1查看分类表>
|
申请人 | 北京奇虎科技有限公司;奇智软件(北京)有限公司 | 申请人地址 | 北京市西城区新街口外大街28号D座112室(德胜园区)
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 北京奇虎科技有限公司,奇智软件(北京)有限公司 | 当前权利人 | 北京奇虎科技有限公司,奇智软件(北京)有限公司 |
发明人 | 王亮;何博 |
代理机构 | 北京路浩知识产权代理有限公司 | 代理人 | 李相雨 |
摘要
本发明提供了一种拦截捆绑软件的方法和装置,其中的装置包括:获取单元,用于在安装程序在硬盘中创建文件后获取被创建的文件的特征信息;识别单元,用于根据所述获取单元得到的特征信息识别所述安装程序所要安装的软件;判断单元,用于判断所述识别单元得到的安装程序所要安装的软件是否为捆绑软件;执行单元,用于在所述判断单元判定所述安装程序所要安装的软件为捆绑软件之后,执行相应的拦截策略。基于此,本发明可以解决现有技术中捆绑软件采用隐藏或替换安装包的特征信息的方式绕过捆绑拦截的问题,大大提升拦截捆绑软件的有效性,并可以在一定程度上防止捆绑软件通过伪装或隐藏特征信息绕过识别,进一步保障用户终端的使用安全。
1.一种拦截捆绑软件的装置,其特征在于,包括:
获取单元,用于若通过监控指定的文件读写函数的调用情况或监控文件目录中的文件项目判断得知安装程序在硬盘中进行了文件创建,在安装程序在硬盘中创建文件后获取被创建的文件的特征信息;
识别单元,用于根据所述获取单元得到的特征信息识别所述安装程序所要安装的软件;
判断单元,用于判断所述识别单元得到的安装程序所要安装的软件是否为捆绑软件;
执行单元,用于在所述判断单元判定所述安装程序所要安装的软件为捆绑软件之后,执行相应的拦截策略。
2.根据权利要求1所述的装置,其特征在于,下述的任意一项或者多项存储在网络服务器中:
用于确定所述被创建的文件的特征信息的具体类型的第一策略;
用于根据所述特征信息识别所述安装程序所要安装的软件的数据库;
用于判断所述安装程序所要安装的软件是否为捆绑软件的第二策略;
所述拦截策略。
3.根据权利要求1所述的装置,其特征在于,所述执行单元包括:
监测模块,用于监测所述安装程序,以得到所述安装程序的当前行为的描述信息;
匹配模块,用于将所述监测模块得到的安装程序的当前行为的描述信息与所述拦截策略进行匹配;
处理模块,用于根据所述匹配模块得到的匹配结果对安装程序的当前行为进行拦截或者放行。
4.根据权利要求1所述的装置,其特征在于,所述拦截策略中对应于放行处理的描述信息,包括下述的任意一种或多种:
由用户主导执行的操作行为的描述信息;
已被用户添加至信任列表的进程的行为的描述信息;
向用户发送消息的行为的描述信息。
5.根据权利要求1所述的装置,其特征在于,所述特征信息包括下述的任意一项或者多项:文件名;拓展名;文件大小;文件路径;时间戳;文件签名;文件特征码。
6.一种拦截捆绑软件的方法,其特征在于,包括:
若通过监控指定的文件读写函数的调用情况或监控文件目录中的文件项目判断得知安装程序在硬盘中进行了文件创建,当安装程序在硬盘中创建文件后,获取被创建的文件的特征信息;
根据所述特征信息识别所述安装程序所要安装的软件;
判断所述安装程序所要安装的软件是否为捆绑软件;
在判定所述安装程序所要安装的软件为捆绑软件之后,执行相应的拦截策略。
7.根据权利要求6所述的方法,其特征在于,下述的任意一项或者多项存储在网络服务器中:
用于确定所述被创建的文件的特征信息的具体类型的第一策略;
用于根据所述特征信息识别所述安装程序所要安装的软件的数据库;
用于判断所述安装程序所要安装的软件是否为捆绑软件的第二策略;
所述拦截策略。
8.根据权利要求6所述的方法,其特征在于,所述在判定所述安装程序所要安装的软件为捆绑软件之后,执行相应的拦截策略,包括:
监测所述安装程序,以得到所述安装程序的当前行为的描述信息;
将安装程序的当前行为的描述信息与所述拦截策略进行匹配;
根据匹配结果对安装程序的当前行为进行拦截或者放行。
9.根据权利要求6所述的方法,其特征在于,所述拦截策略中对应于放行处理的描述信息,包括下述的任意一种或多种:
由用户主导执行的操作行为的描述信息;
已被用户添加至信任列表的进程的行为的描述信息;
向用户发送消息的行为的描述信息。
10.根据权利要求6所述的方法,其特征在于,所述特征信息包括下述的任意一项或者多项:文件名;拓展名;文件大小;文件路径;时间戳;文件签名;文件特征码。
拦截捆绑软件的方法和装置\n技术领域\n[0001] 本发明涉及计算机技术领域,具体涉及一种拦截捆绑软件的方法和装置。\n背景技术\n[0002] 现今,以捆绑方式推广软件已经成为一种潮流,而被捆绑的应用程序几乎涉及了电脑日常使用的方方面面,比如即时通讯、网络浏览、网络搜索、病毒查杀、影音播放、英汉词典、文字处理、图像处理等等。虽然一些捆绑软件以提示消息推荐用户安装的方式还可以被一些用户所接受,但是还有很多捆绑软件都是以默认插件安装和不可预见的强制性安装进行的,这不仅会出现重复安装的情况,更可能会因为大量的捆绑软件在用户无法选择甚至不知情的情况下安装进用户终端,而导致存储资源和运行资源被大量消耗,严重降低用户终端的性能。更危险的是,有些捆绑软件本身就是恶意程序,其会在用户无法选择甚至不知情的情况下进行安装,造成用户终端的系统瘫痪或者用户的个人信息的泄露,给用户带来难以预计的经济损失。\n[0003] 对此,现有的某些安全防护软件可以通过对软件的安装包的特征识别来对捆绑软件的安装进行拦截,但是目前越来越多的捆绑软件会采隐藏或替换安装包的特征信息的方式来绕过安全防护软件的这一检测。比如,针对安全防护软件会根据安装包中的软件名称来识别捆绑软件的特性,某些捆绑软件会抹去安装包中的软件名称,或者冒用其他受信任软件的软件名称来进行安装,而使得安全防护软件由于不能识别出捆绑软件而对捆绑软件的安装行为进行放行处理。\n发明内容\n[0004] 针对现有技术中的缺陷,本发明提供一种拦截捆绑软件的方法和装置,可以解决捆绑软件采用隐藏或替换安装包的特征信息的方式绕过捆绑拦截的问题。\n[0005] 第一方面,本发明提供了一种拦截捆绑软件的装置,包括:\n[0006] 获取单元,用于在安装程序在硬盘中创建文件后获取被创建的文件的特征信息;\n[0007] 识别单元,用于根据所述获取单元得到的特征信息识别所述安装程序所要安装的软件;\n[0008] 判断单元,用于判断所述识别单元得到的安装程序所要安装的软件是否为捆绑软件;\n[0009] 执行单元,用于在所述判断单元判定所述安装程序所要安装的软件为捆绑软件之后,执行相应的拦截策略。\n[0010] 可选地,下述的任意一项或者多项存储在网络服务器中:\n[0011] 用于确定所述被创建的文件的特征信息的具体类型的第一策略;\n[0012] 用于根据所述特征信息识别所述安装程序所要安装的软件的数据库;\n[0013] 用于判断所述安装程序所要安装的软件是否为捆绑软件的第二策略;\n[0014] 所述拦截策略。\n[0015] 可选地,所述执行单元包括:\n[0016] 监测模块,用于监测所述安装程序,以得到所述安装程序的当前行为的描述信息;\n[0017] 匹配模块,用于将所述监测模块得到的安装程序的当前行为的描述信息与所述拦截策略进行匹配;\n[0018] 处理模块,用于根据所述匹配模块得到的匹配结果对安装程序的当前行为进行拦截或者放行。\n[0019] 可选地,所述拦截策略中对应于放行处理的所述描述信息,包括下述的任意一种或多种:\n[0020] 由用户主导执行的操作行为的描述信息;\n[0021] 已被用户添加至信任列表的进程的行为的描述信息;\n[0022] 向用户发送消息的行为的描述信息。\n[0023] 可选地,所述特征信息包括下述的任意一项或者多项:文件名;拓展名;文件大小;\n文件路径;时间戳;文件签名;文件特征码。\n[0024] 第二方面,本发明还提供了一种拦截捆绑软件的方法,包括:\n[0025] 当安装程序在硬盘中创建文件后,获取被创建的文件的特征信息;\n[0026] 根据所述特征信息识别所述安装程序所要安装的软件;\n[0027] 判断所述安装程序所要安装的软件是否为捆绑软件;\n[0028] 在判定所述安装程序所要安装的软件为捆绑软件之后,执行相应的拦截策略。\n[0029] 可选地,下述的任意一项或者多项存储在网络服务器中:\n[0030] 用于确定所述被创建的文件的特征信息的具体类型的第一策略;\n[0031] 用于根据所述特征信息识别所述安装程序所要安装的软件的数据库;\n[0032] 用于判断所述安装程序所要安装的软件是否为捆绑软件的第二策略;\n[0033] 所述拦截策略。\n[0034] 可选地,所述在判定所述安装程序所要安装的软件为捆绑软件之后,执行相应的拦截策略,包括:\n[0035] 监测所述安装程序,以得到所述安装程序的当前行为的描述信息;\n[0036] 将安装程序的当前行为的描述信息与所述拦截策略进行匹配;\n[0037] 根据匹配结果对安装程序的当前行为进行拦截或者放行。\n[0038] 可选地,所述拦截策略中对应于放行处理的所述描述信息,包括下述的任意一种或多种:\n[0039] 由用户主导执行的操作行为的描述信息;\n[0040] 已被用户添加至信任列表的进程的行为的描述信息;\n[0041] 向用户发送消息的行为的描述信息。\n[0042] 可选地,所述特征信息包括下述的任意一项或者多项:文件名;拓展名;文件大小;\n文件路径;时间戳;文件签名;文件特征码。\n[0043] 由上述技术方案可知,本发明采用安装程序在磁盘中创建的文件的特征信息来判断安装程序实际上正在安装或者准备安装的软件。由此,无论软件安装包的特征信息如何被隐藏或者替换,本发明均可以准确地识别出捆绑软件,解决现有技术中捆绑软件采用隐藏或替换安装包的特征信息的方式绕过捆绑拦截的问题。\n[0044] 相比于现有技术中使用的安装包的特征,本发明所采用的文件的特征信息通常具有足够高的稳定性,即捆绑软件很难在推广过程中改变其文件的特征信息,例如文件目录名称、主程序名称、用户界面相关文件、所需要加载的关键资源文件等等。可以看出,本发明可以针对捆绑软件的推广特性大大提升拦截捆绑软件的有效性,并可以在一定程度上防止捆绑软件通过伪装或隐藏特征信息绕过识别,进一步保障用户终端的使用安全。\n附图说明\n[0045] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单的介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。\n[0046] 图1是本发明一个实施例中一种拦截捆绑软件的方法的步骤流程示意图;\n[0047] 图2是本发明一个实施例中执行拦截策略的步骤流程示意图;\n[0048] 图3是本发明一个实施例中一种拦截捆绑软件的装置的结构框图。\n具体实施方式\n[0049] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。\n[0050] 图1是本发明一个实施例中一种拦截捆绑软件的方法的步骤流程示意图。参见图\n1,该方法包括:\n[0051] 步骤101:当安装程序在硬盘中创建文件后,获取被创建的文件的特征信息;\n[0052] 步骤102:根据所述特征信息识别所述安装程序所要安装的软件;\n[0053] 步骤103:判断所述安装程序所要安装的软件是否为捆绑软件;\n[0054] 步骤104:在判定所述安装程序所要安装的软件为捆绑软件之后,执行相应的拦截策略。\n[0055] 其中可以理解的是,本发明的拦截捆绑软件的方法可以执行于任意一种终端设备上,例如个人计算机(如台式机、笔记本电脑、平板电脑、一体机)、智能手机、电子书、智能电视、数码相框、智能导航仪等任意一种可以安装软件的设备。\n[0056] 还可以理解的是,上述安装程序是执行在终端设备的操作系统中的应用程序,其可以是指定了目标软件的安装程序(例如某播放器软件的安装程序),也可以是例如软件管家一类的涉及软件安装功能的应用程序,还可以是任意一种由用户指定或者预设安全策略指定的可能有捆绑软件风险的应用程序,本发明对此不做限制。\n[0057] 可以看出的是,本发明实施例采用安装程序在磁盘中创建的文件的特征信息来判断安装程序实际上正在安装或者准备安装的软件。由此,无论软件安装包的特征信息如何被隐藏或者替换,本发明实施例均可以准确地识别出捆绑软件,解决现有技术中捆绑软件采用隐藏或替换安装包的特征信息的方式绕过捆绑拦截的问题。\n[0058] 相比于现有技术中使用的安装包的特征,本发明实施例所采用的文件的特征信息通常具有足够高的稳定性,即捆绑软件很难在推广过程中改变其文件的特征信息,例如文件目录名称、主程序名称、用户界面相关文件、所需要加载的关键资源文件等等。可以看出,本发明实施例可以针对捆绑软件的推广特性大大提升拦截捆绑软件的有效性,并可以在一定程度上防止捆绑软件通过伪装或隐藏特征信息绕过识别,进一步保障用户终端的使用安全。\n[0059] 参见图1,本发明实施例的拦截捆绑软件的方法的步骤流程中:\n[0060] 上述步骤101中,“在硬盘中创建文件”可以主要涉及硬盘(属于终端设备的外存储器)上的文件读写操作,因此该条件的判定可以通过例如监控指定的文件读写函数的调用情况来实现。当然,也可以采用监控文件目录中的文件项目或其等同方式来确定安装程序是否在硬盘中创建文件,本发明对此不做限制。当安装程序在硬盘中创建文件后,针对安装程序的这一操作可以获取到被创建的文件的特征信息。其中,本文所称的文件的特征信息可以包括:文件名、拓展名、文件大小、文件路径、时间戳、文件签名、文件特征码或者其他任意一种能够区别不同文件的属性。而在具体确定特征信息所涵盖的范围之后,可以直接或者间接地获取到所需要的特征信息。比如,其可以包括直接读取文件的文件名和拓展名,也可以包括调用相应工具计算该文件的MD5值作为其特征码。当然,由于特征信息主要用于识别所述安装程序所要安装的软件,所以可以适应于识别的需要来具体确定所要获取的特征信息的范围。\n[0061] 上述步骤102中可以理解的是,该步骤主要是基于步骤101得到的文件的特征信息,得到上述安装程序所要安装的软件的过程。比如,每一软件的安装过程以及安装后创建的文件的特征信息可以在预先建立的数据库中与所要安装的软件对应记录,而识别过程可以通过文件的特征信息在该数据库中的查找匹配来实现。再如,可以根据文件的特征信息按照文件类型提取出例如版权信息、数字签名一类的数据,从而由该数据得到该文件所用于安装的软件的信息。对此,本发明实施例对识别的具体手段不做限制。而其中需要说明的是,软件的识别结果可以是任意一种可以区分不同软件的信息,可以包括各种形式下的软件名称、发布公司名称、主程序文件名、签名者等等。当然,识别结果可以是单一的软件也可以是一类软件,并可以适应于捆绑软件的判定需要来调整具体的形式。\n[0062] 作为一种更具体的示例,上述识别过程可以根据文件类型和文件目录分类处理,并且允许存在不能识别的情形。举例来说,一般软件安装流程的文件系统操作流程主要包括:在缓存目录下写入准备文件;创建软件的安装目录;在软件的安装目录下写入软件的主体文件。从而,针对安装程序在缓存目录下写入文件(即特征信息中的文件路径符合缓存文件夹的特征)的情形,可以在数据库的准备文件的范围内查找匹配以缩小查找范围,也可以在文件的文件类型为动态链接库时(即被创建的文件的文件类型为动态链接库)直接根据文件的数字签名进行安装程序所要安装的软件的识别。针对软件的安装目录下写入文件(即特征信息中的文件路径符合软件的安装目录的特征)的情形,可以在数据库的主体文件的范围内查找匹配以缩小查找范围,也可以在文件符合主程序文件的特征时直接根据文件的文件名称进行安装程序所要安装的软件的识别。当然,可能存在被创建文件的特征信息过少而无法用于识别的情形,此时可以直接跳过该文件,或者加入至特征信息集合中,等待更多的文件的特征信息加入后一并用于识别。\n[0063] 上述步骤103中,对于所述安装程序所要安装的软件是否为捆绑软件的判断可以按照预设的策略来进行。该策略主要用于根据步骤102得到的识别结果对安装程序所要安装的软件是否为捆绑软件进行判定,可以来自于用户设置、本地存储的默认策略,或者网络服务器的下发。举例来说,按照该策略,终端设备可以获取对于安装程序而言已被用户知悉并许可安装的软件的信息,并与步骤102得到的识别结果进行比较,来确定安装程序所要安装的软件是否为捆绑软件。当然,该策略还可以包含针对不同应用场景设置的判断条件,以根据所述安装程序的环境信息来进行其是否为捆绑软件的判定。对于判定为不属于捆绑软件的情形,可以不予处理。\n[0064] 上述步骤104中,可以参照现有的捆绑软件的应对方式,对已经被判定的捆绑软件根据相应的拦截策略进行拦截。比如,如果步骤102和步骤103中确定了安装程序所安装的媒体播放器属于捆绑软件,那么可以获取该媒体播放器的拦截策略,并依照该拦截策略对安装程序与该媒体播放器相关联的操作进行拦截,对已经安装的部分进行清理。或者,依照通用的拦截策略,对安装程序在该媒体播放器的安装目录内的文件写入的行为进行拦截,并在安装完成后进行垃圾文件的清理。\n[0065] 作为一种具体的示例,上述步骤104:在判定所述安装程序所要安装的软件为捆绑软件之后,执行相应的拦截策略,可以具体包括如图2所示的下述步骤:\n[0066] 步骤104a:监测安装程序,以得到安装程序的当前行为的描述信息;\n[0067] 步骤104b:将安装程序的当前行为的描述信息与拦截策略进行匹配;\n[0068] 步骤104c:根据匹配结果对安装程序的当前行为进行拦截或者放行。\n[0069] 举例来说,在安装程序创建安装进程时,创建安装进程即为安装程序的当前行为,此时步骤104a可以挂钩接口(hook api)可以捕捉到创建安装进程的函数creatproces,从而获取到该安装进程的版本号、安装文件的发布公司名称、产品名称、内部名称、签名人、签名日期、安装文件大小、安装范围、安装文件的时间戳、命令行信息中的任意一项或多项。从而,在步骤104b中可以将获取得到的描述信息与拦截策略中的相应信息进行比较,以得知该安装进程是否符合步骤102和步骤103中确定的捆绑软件的特征。如果符合,那么步骤\n104c可以包括对创建安装进程这一行为的拦截操作;如果不符合,那么步骤104c可以包括对创建安装进程这一行为的放行操作。可以理解的是,因为步骤102与步骤103已经确定了具体的捆绑软件,因此可以直接以黑名单模式来对该捆绑软件的安装进行拦截,可以有效降低拦截捆绑软件的资源消耗、并提高拦截的准确程度。\n[0070] 然而,上述针对捆绑软件的拦截操作有时会影响到用户的使用。对此,可以使上述拦截策略中对应于放行处理的所述描述信息,包括下述的任意一种或多种:\n[0071] 由用户主导执行的操作行为的描述信息;\n[0072] 已被用户添加至信任列表的进程的行为的描述信息;\n[0073] 向用户发送消息的行为的描述信息。\n[0074] 基于此,由用户主导执行的操作行为、已被用户添加至信任列表的进程的行为,以及向用户发送消息的行为都可以不做特别的拦截处理,以避免影响用户的正常使用。\n[0075] 此外,在上述步骤101至步骤104的流程中,下述的任意一项或者多项可以存储在网络服务器中:用于确定所述被创建的文件的特征信息的具体类型的第一策略;用于根据所述特征信息识别所述安装程序所要安装的软件的数据库;用于判断所述安装程序所要安装的软件是否为捆绑软件的第二策略;所述拦截策略。\n[0076] 可以理解的是,上述第一策略、数据库、第二策略以及拦截策略均可以通过云服务的方式在网络服务器中建立和维护,其不仅可以降低对终端设备的资源的占用量,还可以利用网络服务器强大的信息收集和计算能力来保障上述方法的执行效果。\n[0077] 举例来说,上述第一策略可以在网络服务器中根据不同运行环境下获取文件的特征信息对操作系统的负荷,来调整特征信息的具体范围和获取的频率,使得特征信息的采集可以适应于终端设备的使用需要。上述数据库可以在网络服务器中不断采集和更新已知软件的安装过程中使用的文件的特征信息,从而可以更快速准确地根据文件的特征信息识别出安装程序所要安装的软件。\n[0078] 图3是本发明一个实施例中一种拦截捆绑软件的装置的结构框图。参见图3,该拦截捆绑软件的装置包括:\n[0079] 获取单元31,用于在安装程序在硬盘中创建文件后获取被创建的文件的特征信息;\n[0080] 识别单元32,用于根据所述获取单元31得到的特征信息识别所述安装程序所要安装的软件;\n[0081] 判断单元33,用于判断所述识别单元32得到的安装程序所要安装的软件是否为捆绑软件;\n[0082] 执行单元34,用于在所述判断单元33判定所述安装程序所要安装的软件为捆绑软件之后,执行相应的拦截策略。\n[0083] 其中可以理解的是,本发明的拦截捆绑软件的装置可以应用于任意一种终端设备,例如个人计算机(如台式机、笔记本电脑、平板电脑、一体机)、智能手机、电子书、智能电视、数码相框、智能导航仪等任意一种可以安装软件的设备。\n[0084] 还可以理解的是,上述安装程序是执行在终端设备的操作系统中的应用程序,其可以是指定了目标软件的安装程序(例如某播放器软件的安装程序),也可以是例如软件管家一类的涉及软件安装功能的应用程序,还可以是任意一种由用户指定或者预设安全策略指定的可能有捆绑软件风险的应用程序,本发明对此不做限制。\n[0085] 可以看出的是,本发明实施例采用安装程序在磁盘中创建的文件的特征信息来判断安装程序实际上正在安装或者准备安装的软件。由此,无论软件安装包的特征信息如何被隐藏或者替换,本发明实施例均可以准确地识别出捆绑软件,解决现有技术中捆绑软件采用隐藏或替换安装包的特征信息的方式绕过捆绑拦截的问题。\n[0086] 相比于现有技术中使用的安装包的特征,本发明实施例所采用的文件的特征信息通常具有足够高的稳定性,即捆绑软件很难在推广过程中改变其文件的特征信息,例如文件目录名称、主程序名称、用户界面相关文件、所需要加载的关键资源文件等等。可以看出,本发明实施例可以针对捆绑软件的推广特性大大提升拦截捆绑软件的有效性,并可以在一定程度上防止捆绑软件通过伪装或隐藏特征信息绕过识别,进一步保障用户终端的使用安全。\n[0087] 关于上述获取单元31:“在硬盘中创建文件”可以主要涉及硬盘(属于终端设备的外存储器)上的文件读写操作,因此该条件的判定可以通过例如监控指定的文件读写函数的调用情况来实现。当然,也可以采用监控文件目录中的文件项目或其等同方式来确定安装程序是否在硬盘中创建文件,本发明对此不做限制。当安装程序在硬盘中创建文件后,针对安装程序的这一操作可以获取到被创建的文件的特征信息。其中,本文所称的文件的特征信息可以包括:文件名、拓展名、文件大小、文件路径、时间戳、文件签名、文件特征码或者其他任意一种能够区别不同文件的属性。而在具体确定特征信息所涵盖的范围之后,可以直接或者间接地获取到所需要的特征信息。比如,其可以包括直接读取文件的文件名和拓展名,也可以包括调用相应工具计算该文件的MD5值作为其特征码。当然,由于特征信息主要用于识别所述安装程序所要安装的软件,所以可以适应于识别的需要来具体确定所要获取的特征信息的范围。\n[0088] 关于上述识别单元32:该单元的主要功能是基于获取单元31得到的文件的特征信息,得到上述安装程序所要安装的软件。比如,每一软件的安装过程以及安装后创建的文件的特征信息可以在预先建立的数据库中与所要安装的软件对应记录,而识别过程可以通过文件的特征信息在该数据库中的查找匹配来实现。再如,可以根据文件的特征信息按照文件类型提取出例如版权信息、数字签名一类的数据,从而由该数据得到该文件所用于安装的软件的信息。对此,本发明实施例对识别的具体手段不做限制。而其中需要说明的是,软件的识别结果可以是任意一种可以区分不同软件的信息,可以包括各种形式下的软件名称、发布公司名称、主程序文件名、签名者等等。当然,识别结果可以是单一的软件也可以是一类软件,并可以适应于捆绑软件的判定需要来调整具体的形式。\n[0089] 作为一种更具体的示例,上述识别过程可以根据文件类型和文件目录分类处理,并且允许存在不能识别的情形。举例来说,一般软件安装流程的文件系统操作流程主要包括:在缓存目录下写入准备文件;创建软件的安装目录;在软件的安装目录下写入软件的主体文件。从而,针对安装程序在缓存目录下写入文件(即特征信息中的文件路径符合缓存文件夹的特征)的情形,可以在数据库的准备文件的范围内查找匹配以缩小查找范围,也可以在文件的文件类型为动态链接库时(即被创建的文件的文件类型为动态链接库)直接根据文件的数字签名进行安装程序所要安装的软件的识别。针对软件的安装目录下写入文件(即特征信息中的文件路径符合软件的安装目录的特征)的情形,可以在数据库的主体文件的范围内查找匹配以缩小查找范围,也可以在文件符合主程序文件的特征时直接根据文件的文件名称进行安装程序所要安装的软件的识别。当然,可能存在被创建文件的特征信息过少而无法用于识别的情形,此时可以直接跳过该文件,或者加入至特征信息集合中,等待更多的文件的特征信息加入后一并用于识别。\n[0090] 关于判断单元33:对于所述安装程序所要安装的软件是否为捆绑软件的判断可以按照预设的策略来进行。该策略主要用于根据识别单元32得到的识别结果对安装程序所要安装的软件是否为捆绑软件进行判定,可以来自于用户设置、本地存储的默认策略,或者网络服务器的下发。举例来说,按照该策略,终端设备可以获取对于安装程序而言已被用户知悉并许可安装的软件的信息,并与识别单元32得到的识别结果进行比较,来确定安装程序所要安装的软件是否为捆绑软件。当然,该策略还可以包含针对不同应用场景设置的判断条件,以根据所述安装程序的环境信息来进行其是否为捆绑软件的判定。对于判定为不属于捆绑软件的情形,可以不予处理。\n[0091] 关于执行单元34:具体地,执行单元34可以参照现有的捆绑软件的应对方式,对已经被判定的捆绑软件根据相应的拦截策略进行拦截。比如,如果识别单元32和判断单元33确定了安装程序所安装的媒体播放器属于捆绑软件,那么可以获取该媒体播放器的拦截策略,并依照该拦截策略对安装程序与该媒体播放器相关联的操作进行拦截,对已经安装的部分进行清理。或者,依照通用的拦截策略,对安装程序在该媒体播放器的安装目录内的文件写入的行为进行拦截,并在安装完成后进行垃圾文件的清理。\n[0092] 作为一种具体的示例,所述执行单元34可以具体包括未予图示的下述结构:\n[0093] 监测模块,用于监测所述安装程序,以得到所述安装程序的当前行为的描述信息;\n[0094] 匹配模块,用于将所述监测模块得到的安装程序的当前行为的描述信息与所述拦截策略进行匹配;\n[0095] 处理模块,用于根据所述匹配模块得到的匹配结果对安装程序的当前行为进行拦截或者放行。\n[0096] 举例来说,在安装程序创建安装进程时,创建安装进程即为安装程序的当前行为,此时监测模块可以挂钩接口(hook api)可以捕捉到创建安装进程的函数creatproces,从而获取到该安装进程的版本号、安装文件的发布公司名称、产品名称、内部名称、签名人、签名日期、安装文件大小、安装范围、安装文件的时间戳、命令行信息中的任意一项或多项。从而,匹配模块可以将获取得到的描述信息与拦截策略中的相应信息进行比较,以得知该安装进程是否符合识别单元32和判断单元33确定的捆绑软件的特征。如果符合,那么处理模块可以执行对创建安装进程这一行为的拦截操作;如果不符合,那么处理模块可以执行对创建安装进程这一行为的放行操作。可以理解的是,因为识别单元32和判断单元33已经确定了具体的捆绑软件,因此可以直接以黑名单模式来对该捆绑软件的安装进行拦截,可以有效降低拦截捆绑软件的资源消耗、并提高拦截的准确程度。\n[0097] 然而,上述针对捆绑软件的拦截操作有时会影响到用户的使用。对此,可以使上述拦截策略中对应于放行处理的所述描述信息,包括下述的任意一种或多种:\n[0098] 由用户主导执行的操作行为的描述信息;\n[0099] 已被用户添加至信任列表的进程的行为的描述信息;\n[0100] 向用户发送消息的行为的描述信息。\n[0101] 基于此,由用户主导执行的操作行为、已被用户添加至信任列表的进程的行为,以及向用户发送消息的行为都可以不做特别的拦截处理,以避免影响用户的正常使用。\n[0102] 此外,在上述步骤101至步骤104的流程中,下述的任意一项或者多项可以存储在网络服务器中:用于确定所述被创建的文件的特征信息的具体类型的第一策略;用于根据所述特征信息识别所述安装程序所要安装的软件的数据库;用于判断所述安装程序所要安装的软件是否为捆绑软件的第二策略;所述拦截策略。\n[0103] 可以理解的是,上述第一策略、数据库、第二策略以及拦截策略均可以通过云服务的方式在网络服务器中建立和维护,其不仅可以降低对终端设备的资源的占用量,还可以利用网络服务器强大的信息收集和计算能力来保障上述方法的执行效果。\n[0104] 举例来说,上述第一策略可以在网络服务器中根据不同运行环境下获取文件的特征信息对操作系统的负荷,来调整特征信息的具体范围和获取的频率,使得特征信息的采集可以适应于终端设备的使用需要。上述数据库可以在网络服务器中不断采集和更新已知软件的安装过程中使用的文件的特征信息,从而可以更快速准确地根据文件的特征信息识别出安装程序所要安装的软件。\n[0105] 本发明的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。\n[0106] 类似地,应当理解,为了精简本发明公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释呈反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。\n因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。\n[0107] 本领域技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在于该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是互相排斥之处,可以采用任何组合对本说明书(包括伴随的权利要求和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。\n[0108] 此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。\n[0109] 本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的一种拦截捆绑软件的装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。\n[0110] 应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。\n[0111] 最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。
法律信息
- 2022-04-12
专利权的转移
登记生效日: 2022.03.30
专利权人由北京奇虎科技有限公司变更为三六零数字安全科技集团有限公司
地址由100088 北京市西城区新街口外大街28号D座112室(德胜园区)变更为100016 北京市朝阳区酒仙桥路甲10号3号楼15层17层1773
专利权人由北京奇智商务咨询有限公司 变更为空
- 2022-04-12
专利权人的姓名或者名称、地址的变更
专利权人由北京奇虎科技有限公司变更为北京奇虎科技有限公司
地址由100088 北京市西城区新街口外大街28号D座112室(德胜园区)变更为100088 北京市西城区新街口外大街28号D座112室(德胜园区)
专利权人由奇智软件(北京)有限公司 变更为北京奇智商务咨询有限公司
- 2019-01-15
- 2016-06-01
实质审查的生效
IPC(主分类): G06F 21/51
专利申请号: 201510982443.X
申请日: 2015.12.23
- 2016-05-04
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2014-10-29
|
2014-07-02
| | |
2
| |
2014-03-19
|
2013-12-20
| | |
3
| |
2015-05-27
|
2015-03-05
| | |
4
| |
2015-08-19
|
2015-06-04
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |