服务器侧审核加载的扩展和/或插件的方法及服务器与流程

文档序号:12846010阅读:287来源:国知局
服务器侧审核加载的扩展和/或插件的方法及服务器与流程
本发明涉及计算机技术领域,尤其涉及一种服务器侧审核加载的扩展和/或插件的方法及服务器。

背景技术:
对于提供在浏览器中的扩展组件,目前主要是三类:第一类、浏览器开发方提供的扩展(即官方扩展);第二类、浏览器的合作伙伴开发的扩展;第三类、第三方提供到浏览器的扩展中心平台上的扩展组件。目前对于由第三方提供的扩展组件主要是通过运维人员进行审核:对于JavaScript类型的扩展组件,主要是通过运维人员对于JavaScript的源码进行分析,或者通过源码分析工具进行自动判断;对于已经编译好的DLL形式的扩展,一般会获取其源码进行分析,或者在虚拟环境中进行测试运行,获取该扩展组件的行为参数从而确定其是否有风险(例如修改系统注册表,修改系统的启动项,非法对系统文件进行写操作);主要还是运维人员审核过后,才放入浏览器的扩展中心上线给浏览器用户进行下载安装。由于现有技术中需要运维人员对扩展组件进行审核,导致安全性审核效率低下。

技术实现要素:
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种服务器侧审核浏览侧加载的扩展和/或插件的方法及服务器,有效提高浏览器扩展和/或插件的安全性审核的效率。依据本发明的一个方面,提供了一种服务器侧审核浏览侧加载的扩展和/或插件的方法,包括:接收浏览器上传的浏览器在加载扩展和/或插件时产生的异常或者崩溃信息,或者请求浏览器上传浏览器在加载扩展和/或插件时产生的异常或者崩溃信息;接收浏览器上传的当前浏览器侧使用的扩展和/或插件安全配置文件或者扩展和/或插件安全配置文件的版本号,其中所述扩展和/或插件安全配置文件包括浏览器扩展和/或插件的安全描述信息;根据所述浏览器侧产生的异常或者崩溃信息以及当前浏览器侧使用的扩展和/或插件安全配置文件或者其版本号进行分析,确定导致所述异常或者崩溃的分析结果;将所述分析结果存储在服务器侧的配置文件库中;以及根据所述服务器侧的配置文件库更新所述浏览器侧扩展和/或插件安全配置文件。可选地,在本发明的实施例中,所述根据服务器侧的配置文件库中的分析结果更新所述浏览器侧扩展和/或插件安全配置文件的步骤包括:在浏览器启动时或者定期地将服务器侧的配置文件库与浏览器侧的扩展和/或插件安全配置文件进行同步。可选地,在本发明的实施例中,所述根据服务器侧的配置文件库中的分析结果更新所述浏览器侧扩展和/或插件安全配置文件的步骤之前还包括:对服务器侧的配置文件库中的数据进行加密。依据本发明的另一个方面,还提供了一种服务器,包括:接收模块,其适于接收浏览器上传的浏览器在加载扩展和/或插件时产生的异常或者崩溃信息,或者请求浏览器上传浏览器在加载扩展和/或插件时产生的异常或者崩溃信息;以及接收浏览器上传的当前浏览器侧使用的扩展和/或插件安全配置文件或者其版本号,其中,所述扩展和/或插件安全配置文件包括浏览器扩展和/或插件的安全描述信息;分析模块,其适于根据所述浏览器侧产生的异常或者崩溃信息以及当前浏览器侧使用的扩展和/或插件安全配置文件或者其版本号进行分析,确定导致所述异常或者崩溃的分析结果;存储模块,其适于将所述分析结果存储在服务器侧的配置文件库中;以及更新模块,其适于根据所述服务器侧的配置文件库更新所述浏览器侧扩展和/或插件安全配置文件。可选地,在本发明的实施例中,所述更新模块包括:同步单元,其适于在浏览器启动时或者定期地将服务器侧的配置文件库与浏览器侧的扩展和/或插件安全配置文件进行同步。可选地,在本发明的实施例中,所述更新单元还包括:加密单元,其适于对服务器侧的配置文件库中的数据进行加密。在本发明的实施例中,在浏览器主程序中设置扩展和/或插件安全配置文件,在浏览器侧加载扩展和/或插件时,调用扩展和/或插件安全配置文件,并依据扩展和/或插件的安全描述信息判断所述要被加载的扩展和/或插件的安全性;将判断为安全的扩展和/或插件在浏览器侧进行加载,便于浏览器对于数量越来越多的浏览器扩展和/或插件的安全审核和控制管理,有效提高浏览器扩展和/或插件的安全性审核的效率。在服务器侧,通过对浏览器上传的异常和崩溃信息进行分析,以判断浏览器加载的扩展和/或插件的安全性,并用得到的分析结果更新浏览器侧的扩展和/或插件安全配置文件,从而提高浏览器主程序判断要被加载的扩展和/或插件的安全性的准确度。另外,由于服务器侧可以收集上传的大量的浏览器侧的异常或崩溃信息,并进行分析,然后将综合后的分析结果形成了一个更新的配置库文件,再发送给浏览器侧,从而可以将全网用户对于第三方插件或者扩展的安全性进行更加准确的判断。上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。附图说明通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1示出了根据本发明的实施例的服务器侧审核浏览侧加载的扩展和/或插件的方法的流程图;图2示出了浏览器要加载的一个插件的例子;图3示出了根据本发明的浏览器侧与服务器侧之间相互关系的图示;以及图4示出了根据本发明的实施例的服务器的结构方框图。具体实施方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。图1示出了根据本发明的实施例中服务器侧审核扩展和/或插件的方法100的流程图。如图1所示,该方法100始于步骤S110,在步骤S110,接收浏览器上传的浏览器在加载扩展和/或插件时产生的异常或者崩溃信息,或者请求浏览器上传浏览器在加载扩展和/或插件时产生的异常或者崩溃信息。在本发明的实施例中,上述浏览器可以是火狐浏览器(Firefox)、谷歌浏览器(GoogleChrome)、360安全浏览器等,当然可以理解的是,在本发明的实施例中并不限定浏览器的具体类型。在本发明的实施例中,插件(Plugins)的功能就是将第三方提供的功能通过embed、object标签在页面中应用起来,比如Flash插件,Silvetltght插件,Quicktime插件。扩展(Extensions)是能够给浏览器增加一些新功能的附加软件。在浏览器中,比如微薄扩展程序、邮件扩展程序、云盘扩展程序、游戏扩展程序等,这些扩展程序可以通过增加一些浏览器上的窗口或者按钮,来扩展浏览器的功能。在实际应用中,导致浏览器出现异常或者崩溃的原因很多,本发明实施例中的浏览器异常或者崩溃可以包括由Flash(Flash是一种动画创作与应用程序开发于一身的创作软件)、第三方安全组件或浏览器内部组件为第三方软件、LSP(LayeredServiceProvider,分层服务提供程序)、插件、扩展、GPU加速中的任意一个或多个引起的异常或者崩溃。当然,还可以包括引起的异常或者崩溃的其他原因,本发明实施例对此并不加以限制。其中,异常或者崩溃信息可以包括引发异常或者崩溃的组件信息及其运行环境信息。所述引发异常或者崩溃的组件信息可以包括:所述组件的名称、所述组件的版本和所述组件的MD5值等;所述引发异常或者崩溃的组件的运行环境信息可以包括:所述组件运行时的操作系统版本和所述组件运行时的浏览器内核版本。这里的组件可以包括扩展、插件等。其中,操作系统版本可以为windows95、windows2000、windowsME、windowsXP、windows2003、windowsvista、windows7、Linux、Unix,等等;浏览器内核版本可以为IE7、IE8等等。需要说明的是,所述异常或者崩溃信息还可以包括,异常或者崩溃的类型以及异常参数值,其中,异常或者崩溃的类型可以包括访问违例EXCEPTION_ACCESS_VIOLATION、除零错误、内存耗尽、以及调试断点,等等。在异常或者崩溃的类型为访问违例时,异常参数值可以包括内存地址偏移量。访问违例是指在加载某个组件时发生了内存地址的偏移,即调入至内存中的代码组件在内存地址上发生偏移。浏览器程序中有很多组件,如调用一个插件时,首先需要将其读入内存,即用CPU(CentralProcessingUnit,中央处理器)去调入内存,而在调入内存时出现异常,如溢出,则会表现在内存地址上的偏移。例如,一种异常或崩溃信息可以包括:引发异常的组件的名称为极品五笔、版本为4.0.0.950、MD5值为x,该组件运行时的操作系统版本为windowsXP,浏览器内核版本为IE7,该异常的类型为EXCEPTION_ACCESS_VIOLATION,异常参数值(即内存地址偏移量)为20。因此,需要对这些异常或崩溃信息进行收集、分析,以找出原因和相应的解决办法,从而保证浏览器的稳定和正常运行。本发明尤其关注是否是由于浏览器侧加载的扩展和/或插件导致浏览器出现异常或者崩溃。如图3所示,其示出了根据本发明的浏览器侧和服务器侧之间的相互关系。服务器接收浏览器上传的浏览器侧产生的异常或者崩溃信息,或者请求浏览器上传浏览器侧产生的异常或者崩溃信息,其中所述被上传的异常或者崩溃信息通常包括崩溃发生后用户手动填写的崩溃原因以及崩溃时操作系统获取的浏览器的崩溃数据包(dump数据包)等等。这里,该崩溃数据包包含某个插件和/或扩展的异常或崩溃现场数据,浏览器或者浏览器的操作系统可以通过对所述异常或者崩溃信息进行初步分析,分析出崩溃的插件和/或扩展后上报给服务器,也可以直接将所述异常或者崩溃信息上传到服务器,由服务器侧来分析是哪个插件和/或扩展发生崩溃。这里的扩展和/或插件通常是第三方所提供的。接下来,在步骤S120,接收浏览器上传的当前浏览器侧使用的扩展和/或插件安全配置文件或者扩展和/或插件安全配置文件版本号,其中,所述扩展和/或插件安全配置文件包括浏览器扩展和/或插件的安全描述信息。由于扩展和/或插件安全配置文件是基于服务器侧的配置库文件进行更新的,所以上传了扩展和/或插件安全配置文件版本号之后,可以依据该版本号而查找到配置库文件的版本号,从而获得相应的信息,这在后续会有所描述。为了对在浏览器侧要被加载的扩展和/或插件在被加载前对其安全性进行审核,浏览器的主程序基于在浏览器侧设置的扩展和/或插件安全配置文件进行审核判断。所述扩展和/或插件安全配置文件所包含的扩展和/或插件的安全描述信息可以包括:扩展和/或插件的自身信息以及扩展和/或插件的安全级别的信息。其中,上述扩展和/或插件的自身信息可以包括:扩展和/或插件的名称、扩展和/或插件的版本信息、扩展和/或插件的来源、扩展和/或插件的ID号、扩展和/或插件的描述信息、以及扩展和/或插件的发布日期。如图2所示,其给出了360安全浏览器上的一个插件“360邮件通”的示图,其中示出了插件的名称是“360邮件通”,该插件的版本号“2.2.1.1125”,插件的发布日期(即上传时间)是2011年6月3日,插件的来源是360CN,插件的描述信息包括左上角的图片以及文字描述“有新邮件时及时提醒,支持163、126、Gmail、Sina、Sohu等由箱”。上述扩展和/或插件的安全级别的信息包括:黑名单、灰名单和白名单,其中,安全级别为黑名单的扩展和/或插件被确定为存在安全隐患;安全级别为灰名单的扩展和/或插件被确定为存在潜在的安全隐患;安全级别为白名单的扩展和/或插件被确定为没有风险的安全扩展和/或插件。举例说明,扩展和/或插件安全配置文件中可以记录有以下内容:上述扩展和/或插件安全配置文件记录了2个白名单的扩展/插件,1个灰名单的扩展/插件和1个黑名单的扩展/插件。浏览器主程序依据扩展和/或插件的安全配置文件判断所述要被加载的扩展和/或插件的安全性主要是通过将在浏览器侧要被加载的扩展和/或插件的自身信息与扩展和/或插件的安全描述信息中记载的该扩展和/或插件的自身信息进行匹配,并获取该扩展和/或插件的安全级别的信息,其中所述安全级别的信息标明了扩展和/或插件的安全级别,所以通过其可以初步地知晓要被加载的扩展和/或插件的安全性。浏览器主程序根据匹配所获得的结果和安全级别信息可以判断该要被加载的扩展和/或插件是否安全。可选地,可以根据扩展和/或插件安全配置文件中记载的要被加载的扩展和/或插件的来源判断要被加载的扩展和/或插件是否安全。其中,当扩展和/或插件安全配置文件中记载要被加载的扩展和/或插件的来源是浏览器的开发方时,则直接判断要被加载的扩展和/或插件是安全的。当扩展和/或插件安全配置文件中记载要被加载的扩展和/或插件的来源是非浏览器的开发方(例如是第三方)时,则执行将在浏览器侧要被加载的扩展和/或插件的自身信息与扩展和/或插件安全配置文件中记载的对应信息进行匹配并获取该扩展和/或插件的安全级别信息,根据匹配结果和安全级别信息判断该要被加载的扩展和/或插件是否安全。所述在浏览器侧要被加载的扩展和/或插件包括在浏览器启动时要加载的已经在当前浏览器中安装的扩展和/或插件、在浏览器的使用过程中用户通过浏览器的扩展中心发起安装的扩展和/或插件、在浏览器侧进行扩展和/或插件更新时加载的更新的扩展和/或插件、和对于登录了浏览器账号的用户在账号同步时的扩展和/或插件中的一个或多个。浏览器主程序依据扩展和/或插件的安全描述信息判断所述要被加载的扩展和/或插件的安全性。针对上述不同情形的在浏览器侧要被加载的扩展和/或插件,浏览器主程序进行安全性判断并给出不同的判断结果。情形一、对于在浏览器启动时要加载的已经在当前浏览器中安装的扩展和/插件在浏览器启动时,对同时加载的扩展和/或插件根据扩展和/或插件安全配置文件进行核实匹配(例如匹配版本信息、扩展/插件名称、安全等级信息等),对匹配的扩展和/或插件,则允许浏览器加载;对于存在不匹配的匹配项时,判定该扩展和/或插件为不安全的扩展和/或插件,不予加载。情形二、对于在浏览器的使用过程中用户通过浏览器的扩展中心发起安装的扩展和/或插件在浏览器的使用中,进行新扩展和/或新插件的安装时,浏览器主程序需要及时地根据扩展和/或插件安全配置文件对所述新扩展和/或新插件进行核实匹配,进行匹配的匹配项为前面所述的扩展和/或插件的自身信息以及扩展和/或插件的安全级别的信息。对于匹配的扩展和/或插件,判定为安全的扩展和/或插件,允许浏览器加载;对于存在不匹配的匹配项时,判定该扩展和/或插件为不安全的扩展和/或插件,不予加载。情形三、对于在浏览器侧进行扩展和/或插件更新时加载的更新的扩展和/或插件在浏览器启动扩展和/或插件的更新时,浏览器主程序对被更新的扩展和/或插件根据该更新的扩展和/或插件安全配置文件进行核实匹配,对于匹配的更新的扩展和/或插件,判定为安全的扩展和/或插件,允许浏览器加载更新;对于存在不匹配的匹配项时,判定该更新的扩展和/或插件为不安全的扩展和/或插件,不予加载。情形四、对于登录了浏览器账号的用户在账号同步时的扩展和/或插件对于登录了浏览器账号的用户,在账号同步时,存在一些在浏览器侧同步的扩展和/或插件,浏览器主程序对该在浏览器侧同步的扩展和/或插件根据该扩展和/或插件的安全配置文件进行核实匹配,对于匹配的扩展和/或插件,判定为安全的扩展和/或插件,允许在浏览器侧同步;对于存在不匹配的匹配项时,判定该扩展和/或插件为不安全的扩展和/或插件,则不在浏览器侧进行同步。可选地,对于上述任何一种情形,当浏览器主程序判定要在浏览器加载的扩展和/或插件为不安全的扩展和/或插件时,在浏览器启动后的扩展和/或插件管理界面中提示所述被判定为不安全的扩展和/或插件为不安全,例如将该不安全的扩展和/或插件的图标和描述文字设为灰色。另外,可选地,用红色文字明确提示该扩展和/或插件不安全,建议用户卸载。再可选地,将安全匹配的扩展和/或插件推荐给用户进行安装。上述功能可以通过浏览器主程序来实现,即,浏览器主程序可以具有对扩展和/或插件进行控制的功能,具体地,主要表现在:对于不安全的黑名单的扩展和/或插件,进行自动的禁用或卸载操作,并提示用户,例如弹出一个窗口,用提示消息进行提示。对于安全的白名单扩展和/或插件,则允许其安装和升级,并且允许其使用额外的扩展和/或插件接口功能。另外,对于经扩展和/或插件安全引擎审核没有风险的安全的扩展和/或插件,可将该扩展和/或插件放入白名单中;对于经审核确定有安全隐患的扩展和/或插件则放入黑名单中。另外,当浏览器主程序判断为不安全的扩展和/或插件是已经安装的扩展和/或插件,可以在浏览器侧的扩展和/或插件管理界面中将该扩展和/或插件的图标和描述的方案设为灰色,和/或用红色文字明确提示该扩展和/或插件不安全;还可以对其进行自动禁用或卸载操作,并进行提示消息的显示,例如提示消息可以是“不安全”等,提示用户该扩展和/或插件不安全。另外,当浏览器侧要加载的扩展和/或插件被判断为不安全的扩展和/或插件时,浏览器侧可以提供一个安全的扩展和/或插件的安装链接,例如通过一个弹出窗口显示出该安全的扩展和/或插件的安装链接。随后,在步骤S130中,根据所述浏览器侧产生的异常或者崩溃信息以及当前浏览器侧使用的扩展和/或插件安全配置文件或者其版本号进行分析,确定导致所述异常或者崩溃的分析结果。由前面所述,导致浏览器出现异常或者崩溃的原因有很多。而对于在浏览器侧加载的扩展和/或插件,虽然在浏览器侧设置了扩展和/或插件的安全配置文件,但是浏览器主程序基于扩展和/或插件的安全配置文件对要加载的扩展和/或插件所做出的安全性判断并不一定是绝对安全的,因为要加载的扩展和/或插件可能会更新或改变、或者由于扩展和/或插件开发方本身的技术或者人为因素而导致扩展和/或插件存在漏洞或者安全风险而导致浏览器出现崩溃或异常,因此,当一扩展和/或插件被加载时,浏览器有可能会出现异常或发生崩溃,而这些异常或者崩溃信息需要上传至服务器进行分析处理,并以此来更新浏览器侧的扩展和/或插件安全配置文件。服务器侧基于所述异常或者崩溃信息以及当时在浏览器侧使用的扩展和/或插件的安全配置文件,通过分析,可以得知是哪个插件和/或扩展导致浏览器出现异常或发生崩溃或者其它原因导致浏览器出现异常或发生崩溃,从而可以确定导致异常或者崩溃发生的原因,然后,根据所得到的异常或者崩溃发生的原因确定扩展和/或插件的安全级别,如果确定是由于某个扩展和/或插件存在漏洞而导致浏览器出现异常或发生崩溃,则更新该扩展和/或插件的安全级别,例如将其列为黑名单;如果确定是由于某个扩展和/或插件的版本不是最新版本,即由于加载的是旧版本的扩展和/或插件,而因为旧版本的扩展和/或插件存在着漏洞或者安全风险而导致的浏览器出现异常或发生崩溃,则更新该扩展和/或插件的版本号;如果确定是由于扩展和/或插件以外的原因导致的浏览器出现异常或发生崩溃,则保持扩展和/或插件的相关信息不变。另外,服务器侧产生的分析结果可以包括异常或者崩溃发生的原因、以及扩展和/或插件的安全级别和扩展和/或插件的版本号的修改等等。接下来,在步骤S140,将所述分析结果存储在服务器侧的配置文件库中。所述配置文件库可以包含如前面所述的扩展和/或插件的名称、ID号、版本号、描述信息、来源、发布日期、安全级别、以及出现异常或者发生崩溃的原因等。如图3所示,其给出了一个配置文件库的简单的例子,在该配置文件库中包含扩展和/或插件的名称和安全级别。接下来,在步骤S150,根据所述服务器侧的配置文件库更新所述浏览器侧扩展和/或插件安全配置文件,由此使得浏览器侧使用的扩展和/或插件安全配置文件能够得到更新,提高浏览器主程序基于扩展和/或插件安全配置文件对在浏览器侧要加载的扩展和/或插件的安全性的判断的准确性。可选地,在所述步骤S150中可以包括步骤S152,在步骤S152,在浏览器启动时或者定期地将服务器侧的配置文件库与浏览器侧的扩展和/或插件安全配置文件进行同步,从而使得浏览器侧的扩展和/或插件安全配置文件能够及时更新,提高对要在浏览器侧加载的扩展和/或插件的安全性判断的精确度。如图3所示,扩展和/或插件安全配置文件中,对于每个扩展和/或插件,包括扩展和/或插件的ID号、安全级别、描述信息等匹配项。在进行同步时,只是将服务器侧的配置文件库与浏览器侧的扩展和/或插件安全配置文件共有的记录项进行同步,而对于不是二者共有的记录项,无需同步,例如,在配置文件库中记录的出现异常或者发生崩溃的原因,只在配置文件库记载,在浏览器侧的扩展和/或插件安全配置文件中并没有该记录项,因此不需对该记录项进行同步。另外,在进行同步时可以只对不同版本间的差异部分进行同步。当配置文件库更新或者修改后,会生成一个新的版本,以与以前版本区分开,这时,可以用更新或者修改后的新版本来更新浏览器侧的安全配置文件的老版本,更新时只需更新二者之间的差异部分即可,二者共同的部分则不用再更新。另外,可选地,在步骤S152之前还可以执行步骤S151,在步骤S151,对服务器侧的配置文件库中的数据进行加密。在服务器侧的配置文件库与浏览器侧的扩展和/或插件安全配置文件进行同步之前,可以对服务器侧的配置文件库中的数据进行加密,以提高传输的安全性。具体地,例如可以用Base64(用于传输8Bit字节代码的编码方式之一)等对服务器侧的配置文件库中的数据进行加密。根据本发明的第二方面,本发明还提供了一种服务器400。图4示出了根据本发明的实施例的服务器400的结构示意图。如图4所示,该服务器400包括:接收模块410、分析模块430、存储模块450、以及更新模块470。在本发明的实施例中,接收模块410适于接收浏览器上传的浏览器在加载扩展和/或插件时产生的异常或者崩溃信息或者请求浏览器上传浏览器在加载扩展和/或插件时产生的异常或者崩溃信息;以及接收浏览器上传的当前浏览器侧使用的扩展和/或插件安全配置文件或者其版本号,其中,所述扩展和/或插件安全配置文件包括浏览器扩展和/或插件的安全描述信息。在实际应用中,导致浏览器出现异常或者崩溃的原因很多,本发明实施例中的浏览器异常或者崩溃可以包括由Flash(Flash是一种动画创作与应用程序开发于一身的创作软件)、第三方安全组件或浏览器内部组件为第三方软件、LSP(LayeredServiceProvider,分层服务提供程序)、插件、扩展、GPU加速中的任意一个或多个引起的异常或者崩溃。当然,还可以包括引起的异常或者崩溃的其他原因,本发明实施例对此并不加以限制。其中,异常或者崩溃信息可以包括引发异常或者崩溃的组件信息及其运行环境信息。所述引发异常或者崩溃的组件信息可以包括:所述组件的名称、所述组件的版本和所述组件的MD5值等;所述引发异常或者崩溃的组件的运行环境信息可以包括:所述组件运行时的操作系统版本和所述组件运行时的浏览器内核版本。这里的组件可以包括扩展、插件等。其中,操作系统版本可以为windows95、windows2000、windowsME、windowsXP、windows2003、windowsvista、windows7、Linux、Unix,等等;浏览器内核版本可以为IE7、IE8等等。需要说明的是,所述异常或者崩溃信息还可以包括,异常或者崩溃的类型以及异常参数值,其中,异常或者崩溃的类型可以包括访问违例EXCEPTION_ACCESS_VIOLATION、除零错误、内存耗尽、以及调试断点,等等。在异常或者崩溃的类型为访问违例时,异常参数值可以包括内存地址偏移量。访问违例是指在加载某个组件时发生了内存地址的偏移,即调入至内存中的代码组件在内存地址上发生偏移。浏览器程序中有很多组件,如调用一个插件时,首先需要将其读入内存,即用CPU(CentralProcessingUnit,中央处理器)去调入内存,而在调入内存时出现异常,如溢出,则会表现在内存地址上的偏移。因此,需要对这些异常或崩溃信息进行收集、分析,以找出原因和相应的解决办法,从而保证浏览器的稳定和正常运行。本发明尤其关注是否是由于浏览器侧加载的扩展和/或插件导致浏览器出现异常或者崩溃。如图3所示,其示出了根据本发明的浏览器侧和服务器侧之间的相互关系。服务器的接收单元410接收浏览器上传的浏览器侧产生的异常或者崩溃信息,或者请求浏览器上传浏览器侧产生的异常或者崩溃信息,其中所述被上传的异常或者崩溃信息通常包括崩溃发生后用户手动填写的崩溃原因以及崩溃时操作系统获取的浏览器的崩溃数据包(dump数据包)等等。这里,该崩溃数据包包含某个插件和/或扩展的异常或崩溃现场数据,浏览器或者浏览器的操作系统可以通过对所述异常或者崩溃信息进行初步分析,分析出崩溃的插件和/或扩展后上报给服务器,也可以直接将所述异常或者崩溃信息上传到服务器,由服务器侧来分析是哪个插件和/或扩展发生崩溃。这里的扩展和/或插件通常是第三方所提供的。在浏览器通常会加载很多扩展和/或插件,为了保证被加载的扩展和/或插件的安全性,在浏览器侧设置了扩展和/或插件安全配置文件。在浏览器侧加载扩展和/或插件时,浏览器主程序通过调用所述扩展和/或插件安全配置文件,并依据扩展和/或插件的安全描述信息判断所述要被加载的扩展和/或插件的安全性。所述扩展和/或插件安全配置文件所包含的扩展和/或插件的安全描述信息可以包括:扩展和/或插件的自身信息以及扩展和/或插件的安全级别的信息。其中,上述扩展和/或插件的自身信息可以包括:扩展和/或插件的名称、扩展和/或插件的版本信息、扩展和/或插件的来源、扩展和/或插件的ID号、扩展和/或插件的描述信息、以及扩展和/或插件的发布日期,参见前面图2所示出的一个例子,这里为了简洁,就不再重复描述。上述扩展和/或插件的安全级别的信息包括:黑名单、灰名单和白名单,其中,安全级别为黑名单的扩展和/或插件被确定为存在安全隐患;安全级别为灰名单的扩展和/或插件被确定为存在潜在的安全隐患;安全级别为白名单的扩展和/或插件被确定为没有风险的安全扩展和/或插件。浏览器主程序依据扩展和/或插件的安全配置文件判断所述要被加载的扩展和/或插件的安全性主要是通过将在浏览器侧要被加载的扩展和/或插件的自身信息与扩展和/或插件的安全描述信息中记载的该扩展和/或插件的自身信息进行匹配,并获取该扩展和/或插件的安全级别的信息,其中所述安全级别的信息标明了扩展和/或插件的安全级别,所以通过其可以初步地知晓要被加载的扩展和/或插件的安全性。浏览器主程序根据匹配所获得的结果和安全级别信息可以判断该要被加载的扩展和/或插件是否安全。可选地,可以根据扩展和/或插件安全配置文件中记载的要被加载的扩展和/或插件的来源判断要被加载的扩展和/或插件是否安全。其中,当扩展和/或插件安全配置文件中记载要被加载的扩展和/或插件的来源是浏览器的开发方时,则直接判断要被加载的扩展和/或插件是安全的。当扩展和/或插件安全配置文件中记载要被加载的扩展和/或插件的来源是非浏览器的开发方(例如是第三方)时,则执行将在浏览器侧要被加载的扩展和/或插件的自身信息与扩展和/或插件安全配置文件中记载的对应信息进行匹配并获取该扩展和/或插件的安全级别信息,根据匹配结果和安全级别信息判断该要被加载的扩展和/或插件是否安全。所述在浏览器侧要被加载的扩展和/或插件包括在浏览器启动时要加载的已经在当前浏览器中安装的扩展和/或插件、在浏览器的使用过程中用户通过浏览器的扩展中心发起安装的扩展和/或插件、在浏览器侧进行扩展和/或插件更新时加载的更新的扩展和/或插件、和对于登录了浏览器账号的用户在账号同步时的扩展和/或插件中的一个或多个。浏览器主程序依据扩展和/或插件的安全描述信息判断所述要被加载的扩展和/或插件的安全性。针对上述不同情形的在浏览器侧要被加载的扩展和/或插件,浏览器主程序进行安全性判断并给出不同的判断结果。情形一、对于在浏览器启动时要加载的已经在当前浏览器中安装的扩展和/插件在浏览器启动时,对同时加载的扩展和/或插件根据扩展和/或插件安全配置文件进行核实匹配(例如匹配版本信息、扩展/插件名称、安全等级信息等),对匹配的扩展和/或插件,则允许浏览器加载;对于存在不匹配的匹配项时,判定该扩展和/或插件为不安全的扩展和/或插件,不予加载。情形二、对于在浏览器的使用过程中用户通过浏览器的扩展中心发起安装的扩展和/或插件在浏览器的使用中,进行新扩展和/或新插件的安装时,浏览器主程序需要及时地根据扩展和/或插件安全配置文件对所述新扩展和/或新插件进行核实匹配,进行匹配的匹配项为前面所述的扩展和/或插件的自身信息以及扩展和/或插件的安全级别的信息。对于匹配的扩展和/或插件,判定为安全的扩展和/或插件,允许浏览器加载;对于存在不匹配的匹配项时,判定该扩展和/或插件为不安全的扩展和/或插件,不予加载。情形三、对于在浏览器侧进行扩展和/或插件更新时加载的更新的扩展和/或插件在浏览器启动扩展和/或插件的更新时,浏览器主程序对被更新的扩展和/或插件根据该更新的扩展和/或插件安全配置文件进行核实匹配,对于匹配的更新的扩展和/或插件,判定为安全的扩展和/或插件,允许浏览器加载更新;对于存在不匹配的匹配项时,判定该更新的扩展和/或插件为不安全的扩展和/或插件,不予加载。情形四、对于登录了浏览器账号的用户在账号同步时的扩展和/或插件对于登录了浏览器账号的用户,在账号同步时,存在一些在浏览器侧同步的扩展和/或插件,浏览器主程序对该在浏览器侧同步的扩展和/或插件根据该扩展和/或插件的安全配置文件进行核实匹配,对于匹配的扩展和/或插件,判定为安全的扩展和/或插件,允许在浏览器侧同步;对于存在不匹配的匹配项时,判定该扩展和/或插件为不安全的扩展和/或插件,则不在浏览器侧进行同步。可选地,对于上述任何一种情形,当浏览器主程序判定要在浏览器加载的扩展和/或插件为不安全的扩展和/或插件时,在浏览器启动后的扩展和/或插件管理界面中提示所述被判定为不安全的扩展和/或插件为不安全,例如将该不安全的扩展和/或插件的图标和描述文字设为灰色。另外,可选地,用红色文字明确提示该扩展和/或插件不安全,建议用户卸载。再可选地,将安全匹配的扩展和/或插件推荐给用户进行安装。上述功能可以通过浏览器主程序来实现,即,浏览器主程序可以具有对扩展和/或插件进行控制的功能,具体地,主要表现在:对于不安全的黑名单的扩展和/或插件,进行自动的禁用或卸载操作,并提示用户,例如弹出一个窗口,用提示消息进行提示。对于安全的白名单扩展和/或插件,则允许其安装和升级,并且允许其使用额外的扩展和/或插件接口功能。另外,对于经扩展和/或插件安全引擎审核没有风险的安全的扩展和/或插件,可将该扩展和/或插件放入白名单中;对于经审核确定有安全隐患的扩展和/或插件则放入黑名单中。分析模块430适于根据所述浏览器侧产生的异常或者崩溃信息以及当前浏览器侧使用的扩展和/或插件安全配置文件或者扩展和/或插件安全配置文件版本号进行分析,确定导致所述异常或者崩溃的分析结果。由前面所述,导致浏览器出现异常或者崩溃的原因有很多。而对于在浏览器侧加载的扩展和/或插件,虽然在浏览器侧设置了扩展和/或插件的安全配置文件,但是浏览器主程序基于扩展和/或插件的安全配置文件对要加载的扩展和/或插件所做出的安全性判断并不一定是绝对安全的,因为要加载的扩展和/或插件可能会更新或改变、或者由于扩展和/或插件开发方本身的技术或者人为因素而导致扩展和/或插件存在漏洞或者安全风险而导致浏览器出现崩溃或异常,因此,当一扩展和/或插件被加载时,浏览器有可能会出现异常或发生崩溃,而这些异常或者崩溃信息需要上传至服务器进行分析处理,并以此来更新浏览器侧的扩展和/或插件安全配置文件。服务器侧基于所述异常或者崩溃信息以及当时在浏览器侧使用的扩展和/或插件的安全配置文件,通过分析,可以得知是哪个插件和/或扩展导致浏览器出现异常或发生崩溃或者其它原因导致浏览器出现异常或发生崩溃,从而可以确定导致异常或者崩溃发生的原因,然后,根据所得到的异常或者崩溃发生的原因确定扩展和/或插件的安全级别,如果确定是由于某个扩展和/或插件存在漏洞而导致浏览器出现异常或发生崩溃,则更新该扩展和/或插件的安全级别,例如将其列为黑名单;如果确定是由于某个扩展和/或插件的版本不是最新版本,即由于加载的是旧版本的扩展和/或插件,而因为旧版本的扩展和/或插件存在着漏洞或者安全风险而导致的浏览器出现异常或发生崩溃,则更新该扩展和/或插件的版本号;如果确定是由于扩展和/或插件以外的原因导致的浏览器出现异常或发生崩溃,则保持扩展和/或插件的相关信息不变。另外,服务器侧产生的分析结果可以包括异常或者崩溃发生的原因、以及扩展和/或插件的安全级别和扩展和/或插件的版本号的修改等等。存储模块450适于将所述分析结果存储在服务器侧的配置文件库中。其中,所述配置文件库可以包含如前面所述的扩展和/或插件的名称、ID号、版本号、描述信息、来源、发布日期、安全级别、以及出现异常或者发生崩溃的原因等。如图3所示,其给出了一个配置文件库的简单的例子,在该配置文件库中包含扩展和/或插件的名称和安全级别。更新模块470适于根据所述服务器侧的配置文件库更新所述浏览器侧扩展和/或插件安全配置文件,由此使得浏览器侧使用的扩展和/或插件安全配置文件能够得到更新,提高浏览器主程序基于扩展和/或插件安全配置文件对在浏览器侧要加载的扩展和/或插件的安全性的判断的准确性。可选地,更新模块470可以包括同步单元472,该同步单元472适于在浏览器启动时或者定期地将服务器侧的配置文件库与浏览器侧的扩展和/或插件安全配置文件进行同步,从而使得浏览器侧的扩展和/或插件安全配置文件能够及时更新,提高对要在浏览器侧加载的扩展和/或插件的安全性判断的精确度。在将服务器侧的配置文件库与浏览器侧的扩展和/或插件安全配置文件进行同步时,只需将二者共有的记录项分别进行同步更新即可,另外,即使对于共有的记录项,也可以只同步更新二者的差异部分。另外,更新模块470可以包括加密单元471,该加密单元471适于对服务器侧的配置文件库中的数据进行加密。在同步单元472将服务器侧的配置文件库与浏览器侧的扩展和/或插件安全配置文件进行同步之前,可以由加密单元471对对服务器侧的配置文件库中的数据进行加密,以提高传输的安全性。具体地,可以例如用Base64(用于传输8Bit字节代码的编码方式之一)等对服务器侧的配置文件库中的数据进行加密。在本发明的实施例中,在浏览器主程序中设置扩展和/或插件安全配置文件,在浏览器侧加载扩展和/或插件时,调用扩展和/或插件安全配置文件,并依据扩展和/或插件的安全描述信息判断所述要被加载的扩展和/或插件的安全性;将判断为安全的扩展和/或插件在浏览器侧进行加载,便于浏览器对于数量越来越多的浏览器扩展和/或插件的安全审核和控制管理,有效提高浏览器扩展和/或插件的安全性审核的效率。在服务器侧,通过对浏览器上传的异常和崩溃信息进行分析,以判断浏览器加载的扩展和/或插件的安全性,并用得到的分析结果更新浏览器侧的扩展和/或插件安全配置文件,从而提高浏览器主程序判断要被加载的扩展和/或插件的安全性的准确度。另外,由于服务器侧可以收集上传的大量的浏览器侧的异常或崩溃信息,并进行分析,然后将综合后的分析结果形成了一个更新的配置库文件,再发送给浏览器侧,从而可以将全网用户对于第三方插件或者扩展的安全性进行更加准确的判断。在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中所要求保护的实施例的任意之一都可以以任意的组合方式来使用。本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的浏览器客户端中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。以上所述仅是本发明的具体实施方式,应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明精神的前提下,可以作出若干改进、修改、和变形,这些改进、修改、和变形都应视为落在本申请的保护范围内。本发明实施例还揭示了:A1、一种服务器侧审核浏览侧加载的扩展和/或插件的方法,包括:接收浏览器上传的浏览器在加载扩展和/或插件时产生的异常或者崩溃信息,或者请求浏览器上传浏览器在加载扩展和/或插件时产生的异常或者崩溃信息;接收浏览器上传的当前浏览器侧使用的扩展和/或插件安全配置文件或者扩展和/或插件安全配置文件的版本号,其中所述扩展和/或插件安全配置文件包括浏览器扩展和/或插件的安全描述信息;根据所述浏览器侧产生的异常或者崩溃信息以及当前浏览器侧使用的扩展和/或插件安全配置文件或者其版本号进行分析,确定导致所述异常或者崩溃的分析结果;将所述分析结果存储在服务器侧的配置文件库中;以及根据所述服务器侧的配置文件库更新所述浏览器侧扩展和/或插件安全配置文件。A2、根据A1所述的方法,其特征在于,所述根据服务器侧的配置文件库中的分析结果更新所述浏览器侧扩展和/或插件安全配置文件的步骤包括:在浏览器启动时或者定期地将服务器侧的配置文件库与浏览器侧的扩展和/或插件安全配置文件进行同步。A3、根据A1或A2所述的方法,其中,所述根据服务器侧的配置文件库中的分析结果更新所述浏览器侧扩展和/或插件安全配置文件的步骤之前还包括:对服务器侧的配置文件库中的数据进行加密。A4、根据A1-A3中任何一项所述的方法,其特征在于,所述在浏览器侧要被加载的扩展和/或插件包括在浏览器启动时要加载的已经在当前浏览器中安装的扩展和/或插件、在浏览器的使用过程中用户通过浏览器的扩展中心发起安装的扩展和/或插件、在浏览器侧进行扩展和/或插件更新时加载的更新的扩展和/或插件、和对于登录了浏览器账号的用户在账号同步时的扩展和/或插件中的一个或多个。A5、根据A1-A4中任何一项所述的方法,其特征在于,所述扩展和/或插件安全配置文件所包含的扩展和/或插件的安全描述信息以及所述服务器侧的配置文件库中包括:扩展和/或插件的自身信息以及扩展和/或插件的安全级别的信息;其中,所述扩展和/或插件的自身信息包括:扩展和/或插件的名称、扩展和/或插件的版本信息、扩展和/或插件的来源、扩展和/或插件的ID号、扩展和/或插件的描述信息、以及扩展和/或插件的发布日期。A6、根据A5所述的方法,其特征在于,所述安全级别的信息包括黑名单、灰名单和白名单,其中,安全级别为黑名单的扩展和/或插件被确定为存在安全隐患,安全级别为灰名单的扩展和/或插件被确定为存在潜在的安全隐患,安全级别为白名单的扩展和/或插件被确定为没有风险的安全扩展和/或插件。本发明实施例还揭示了趴、一种服务器,包括:接收模块,其适于接收浏览器上传的浏览器在加载扩展和/或插件时产生的异常或者崩溃信息,或者请求浏览器上传浏览器在加载扩展和/或插件时产生的异常或者崩溃信息;以及接收浏览器上传的当前浏览器侧使用的扩展和/或插件安全配置文件或者其版本号,其中,所述扩展和/或插件安全配置文件包括浏览器扩展和/或插件的安全描述信息;分析模块,其适于根据所述浏览器侧产生的异常或者崩溃信息以及当前浏览器侧使用的扩展和/或插件安全配置文件或者其版本号进行分析,确定导致所述异常或者崩溃的分析结果;存储模块,其适于将所述分析结果存储在服务器侧的配置文件库中;以及更新模块,其适于根据所述服务器侧的配置文件库更新所述浏览器侧扩展和/或插件安全配置文件。B2、根据趴所述的服务器,所述更新模块包括:同步单元,其适于在浏览器启动时或者定期地将服务器侧的配置文件库与浏览器侧的扩展和/或插件安全配置文件进行同步。B3、根据权利要求趴或B2所述的服务器,所述更新单元还包括:加密单元,其适于对服务器侧的配置文件库中的数据进行加密。B4、根据权利要求B1-B3中任何一项所述的服务器,其特征在于,所述在浏览器侧要被加载的扩展和/或插件包括在浏览器启动时要加载的已经在当前浏览器中安装的扩展和/或插件、在浏览器的使用过程中用户通过浏览器的扩展中心发起安装的扩展和/或插件、在浏览器侧进行扩展和/或插件更新时加载的更新的扩展和/或插件、和对于登录了浏览器账号的用户在账号同步时的扩展和/或插件中的一个或多个。B5、根据B1-B4中任何一项所述的服务器,其特征在于,所述扩展和/或插件安全配置文件所包含的扩展和/或插件的安全描述信息以及所述服务器侧的配置文件库中包括:扩展和/或插件的自身信息以及扩展和/或插件的安全级别的信息;其中,所述扩展和/或插件的自身信息包括:扩展和/或插件的名称、扩展和/或插件的版本信息、扩展和/或插件的来源、扩展和/或插件的ID号、扩展和/或插件的描述信息、以及扩展和/或插件的发布日期。B6、根据B5所述的服务器,其特征在于,所述安全级别的信息包括黑名单、灰名单和白名单,其中,安全级别为黑名单的扩展和/或插件被确定为存在安全隐患,安全级别为灰名单的扩展和/或插件被确定为存在潜在的安全隐患,安全级别为白名单的扩展和/或插件被确定为没有风险的安全扩展和/或插件。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1