[0001] 本
申请是PCT
国际申请并且要求了于2016年06月16日递交的美国临时申请62/350,963作为优先权。
技术领域
[0002] 本
发明涉及保护用户网络浏览器免于染上不想要的附加功能或扩展功能,尤其涉及一种方法其能够鉴识及解除
恶意软件、档案、及浏览器扩展功能。
背景技术
[0003] 现在,当用户安装网络浏览器附加功能或扩展功能的时候(在下文中皆称之为扩展功能),常常会导致某些设定以一种用户基本上是不想要或不期待的方式被改变。例如,默认的
搜索引擎或新标签页等设定被无预期地改变,当发生这些状况时会让人非常的挫折沮丧,并且大大地败坏使用者搜寻因特网的兴致。此外,某些网络扩展功能的开发者会故意地在他们的扩展功能中包含用户不想要的设定的改变,例如:改变预设的搜索引擎。更有甚者,这些网络扩展功能也会呈现其他恶意的行为,例如:广告言过其实,追踪个人的信息,及在用户计算机安装恶意软件。
发明内容
[0004] 本发明的目的是介绍一种方法,其能够让使用者克服上述的种种问题。本发明是一种方法,其搜寻及监控任何已知会造成问题的扩展功能的安装。例如,当用户上网浏览电影的时候,突然收到一个包含看起来像但其实不是视频下载按钮的弹出窗口。如果用户点选了这个弹出窗口,他会发现在他的浏览器上出现一个新的工具栏,而这个工具栏的会以使用者没有预料到的方式改变他的搜索设定。本发明的特点是在于:它能够在安装时检查这些问题。在
现有技术,一些扩展功能在删除所有扩展功能后仍然存在。然而,这样的一种方法常常还是被认为是过度的。
[0005] 本发明是一种网络浏览器扩展功能,其长驻在用户的计算机,以监控其他的扩展功能。当安装一个呈现出不期望/不良行为的扩展功能时,这个监控的扩展功能会使这个不想要的扩展功能失效或被卸载。
[0006] 相对于现有技术将所有扩展功能全部删除的方法,本发明根据一个
数据库检查扩展功能,并移除已知的不良的扩展功能。本发明会取得用户计算机中所有网络浏览器扩展功能的ID,并且将这些ID送到远程的一个
服务器。然后这个服务器会检查哪些ID是属于已知的不良的扩展功能,然后返回符合的名单,处理他们。
[0007] 除了自动地让一个不想要的扩展功能失效或被卸载,本发明也可以建议用户手动地移除违规的扩展功能,或手动地使违规扩展功能失效。本发明的具有监控能
力的扩展功能会检查那些潜在性不受欢迎的扩展功能。这些检查将会在这个扩展功能生命周期的某些时间点定期地进行。相对于先前技术,这是一个比较定制化的解决方案。本发明是一个比较精细类似于外科手术的解决方案,而不是一个过度的一揽子解决方案。
附图说明
[0008] 图1是一幅方
框图,其显示执行本发明之方法的系统的组件彼此之间通讯的状况。
[0009] 图2是一幅
流程图,其显示本发明的整个方法。
[0010] 图3是一幅流程图,其显示本发明的一个子流程,其用于选择一或多个个人档案以扫描恶意代码。
[0011] 图4是一幅流程图,其显示本发明的一个子流程,其用于扫描新下载的档案。
[0012] 图5是一幅流程图,其显示本发明的一个子流程,其用于启动周期性扫描。
[0013] 图6是一幅流程图,其显示本发明的一个子流程,其用于执行沙盒评估流程。
[0014] 图7是一幅流程图,其显示本发明的一个子流程,其用于执行威胁修复流程。
[0015] 图8是一幅流程图,其显示本发明的一个子流程,其用于选择并执行威胁修复流程中的一个删除命令。
[0016] 图9是一幅流程图,其显示本发明的一个子流程,其用于选择并执行威胁修复流程中的一个隔离命令。
[0017] 图10是一幅流程图,其显示本发明的一个子流程,其用于散播目标广告。
具体实施方式
[0018] 首先要特别说明的是:本
说明书所使用的图示仅是用于说明本发明的某些
实施例,本发明的范围并不受该些图示的限制。
[0019] 请参照图1到图10。本发明的鉴识及移除恶意软件的方法,其让用户的计算机免于恶意文件的威胁,恶意文件包括但不限于:文档,程序,及网络浏览器扩展功能。本发明使用自动扫描功能及手动扫瞄功能去鉴识用户计算机中的恶意文件,并让恶意文件失效。在本说明书中所称的恶意文件是指恶意代码或病毒。本发明能够做为一个实时的扫描系统,其能够监视下载中或安装中的恶意文件。并且,本发明也可以作为一个手动或定期扫描的系统,其可以在收到指示时进行扫描,或者进行定期扫描。本发明的扫描功能是设计为:将文件与一个黑名单进行比较来鉴识出恶意文件。另外,本发明使用一个沙盒系统来测试文件,以决定文件是否是恶意的。本发明的其他实施例会推荐使用者可能会觉得有用的程序或服务。
[0020] 请参照图2。为实现上述的功能,本发明的方法使用一种系统,其能够提供一部可通讯地连接到至少一个远程服务器的个人计算装置(PC)(步骤A)。用来与本发明交互的个人计算装置包括但不限于,一部智能型手机、一部
笔记本电脑、一部台式电脑、或一部
平板电脑。远程服务器执行本发明的一系列内部流程,并且将恶意代码信息传输至个人计算机。个人计算装置包含多个个人文件,每一个个人文件与一个程序标识符号(PID)相关联。多个个人文件是储存在个人计算装置里面的文档、程序、及程序扩展功能的集合。另外,程序标识符号(PID)是本发明用来区别这些多个个人文件的标识。本发明的方法还提供一个黑名单及一个白名单,这两个名单由该远程服务器所管理(步骤B)。黑名单中的程序标示符号与那些已经知道含有恶意代码的个人文件相关联。相反,白名单中的程序标示符号与那些已经知道不含有恶意代码的个人文件相关联。个人计算装置、远程服务器、黑名单及白名单是用来实施本发明的方法的系统所需要的组件。
[0021] 请参照图2。当提供上述的系统组件,本发明的方法还包含:使用该个人计算装置接收至少一个特定文件的扫描
请求(步骤C)。这个扫描请求是一个指令,其命令本发明的方法启动一个个人计算装置的恶意代码扫描。该至少一个特定文件是指将要被扫描恶意代码的文件,尤其是指将要被扫描恶意代码的一或多个个人文件。本发明的方法还包含:如果特定档案的程序标识符号并没有在黑名单及白名单上面,远程服务器针对特定文件执行一个沙盒评估流程,藉以将特定文件的程序标识符号附加于黑名单或白名单(步骤D)。沙盒评估流程是本发明的一个子流程,其决定特定文件是否含有恶意代码。如果特定文件确定含有恶意代码,相关的程序标识符号就附加于黑名单。相反地,如果特定文件发现没有恶意代码,相关的程序标识符号就附加于白名单。此外,沙盒评估流程是在一个隔离的
虚拟机中进行,如此可以防止恶意代码对个人计算装置或远程服务器造成不良的影响。本发明的方法还包含:如果特定文件的程序标识符号在黑名单上面,远程服务器针对特定文件执行一个威胁修复流程(步骤E)。威胁修复流程是本发明的一个子流程,其用于移除被发现含有恶意代码的个人文件,或使其失效。
[0022] 请参照图3。本发明被设计成:给用户提供多种选择,让用户可以决定要扫描哪些个人文件,或在何时要进行扫描。为此,本发明包含一个子流程,这一个子流程让用户可以选择至少一个文件被扫描。这一个子流程包含:提示用户从个人计算装置的多个个人文件中选择至少一个想要的文件。该至少一个期望文件是用户想要扫描恶意代码的一个或多个个人文件。这一个子流程还包含:在步骤C之前,使用该个人计算装置将至少一个期望文件
指定为该至少一个特定文件。这一个步骤对本发明的方法扫描期望文件中的恶意代码做准备。另外,这一个子流程让用户可以手动地启动一或多个个人文件的恶意代码扫描。
[0023] 请参照图4。本发明的方法具有一个单独的子流程,其用于:在用户每次下载一个新文件时,自动启动扫描。当用户完成下载一个新文件到个人计算装置时,这个子流程就开始启动。这一个子流程包含:使用个人计算装置将这个新文件附加到多个个人文件之中。一旦用户已经完成下载这个新文件,这个子流程就被启动,而新文件就会加入多个个人文件之中。如此,这个新文件就可以进行恶意代码扫描。这一个子流程还包含:在步骤C之前,使用个人计算装置将新文件指定为至少一个特定文件。这一个步骤对本发明的方法扫描新文件中的恶意代码做准备。
[0024] 请参照图5。本发明的方法具有另一个单独的子流程,其用于:对储存在用户个人计算装置中的多个个人文件进行定期性的扫描。为达成此一目的,这一个子流程包含:提示用户使用个人计算装置为多个个人文件选择一个时间间隔。这一个时间间隔就是两次自动扫描用户个人计算装置之间的时间长度。例如,如果使用者选择一个12小时的时间间隔,这个系统就每隔12个小时会扫描用户个人计算装置中的多个个人文件。在本发明的其他实施例,本发明可以在用户不控制的预设的时间间隔内使用。这一个子流程还包含:在步骤C之前,使用个人计算装置将所有的个人文件指定为至少一个特定文件。这让本发明的方法扫描所有在个人计算装置中可用的个人文件。这一个子流程还包含:以所预设的时间间隔,周期性地执行步骤C到步骤E。每当预设的时间间隔经过之后,这个步骤启动定期性的扫描。
[0025] 请参照图6。本发明的方法还包含另一个子流程,其用于:判断一个尚未识别的个人文件是否具有恶意代码。同时,本发明的方法被设计成:实时或者按需执行此特征。当特定文件的对应程序标识符号既不在黑名单也不在白名单的时候,就启动此一子流程(步骤F)。所以,如果特定文件的程序标识符号既不在黑名单也不在白名单,本发明的方法就将特定文件指定为未识别的文件。一个沙盒评估流程被设计来鉴识未识别的文件中的恶意代码。此一沙盒评估流程可以被设定为:定期地检查在黑名单及白名单中的程序的恶意代码。即使程序被更新,这个功能也可以保持黑名单及白名单的完整性。这一个子流程包含:使用远程服务器产生一个沙盒虚拟机(步骤G)。这一个沙盒虚拟机是一个隔离的
虚拟环境,其由远程服务器创造来测试未识别的文件。这一个子流程还包含:使用远程服务器将特定文件的一个虚拟副本安装到沙盒虚拟机(步骤H)。这一个虚拟副本是未识别的文件的一个拷贝,其可以安全地安装于沙盒虚拟机。一旦安装,虚拟副本就可以被远程服务器的流程处理,而不会伤害到个人计算装置或远程服务器。这一个子流程还包含:使用远程服务器对虚拟副本进行恶意代码扫描,以检测特定文件的虚拟副本的恶意代码(步骤I)。恶意代码扫描是一套程序,其测试虚拟副本,以确定是否可以将任何包含的代码识别为恶意代码。具体而言,恶意代码扫描确定用来创建虚拟副本的特定文件是否会对用户的计算装置造成威胁。此外,恶意代码扫描同时也决定:特定文件是否会呈现未被授权的行为,其包括但不限于是:
追踪用户的网络浏览,报告个人信息,及侵犯用户的隐私。如此,沙盒评估流程就可以保护用户的隐私及个人信息。这一个子流程还包含:如果恶意代码扫描确实检测到恶意代码存在于特定文件的虚拟副本,就使用远程服务器将特定文件的对应程序标识符号附加于黑名单(步骤J)。这个子流程会自动更新被发现含有恶意代码的特定文件的程序标识符号到黑名单之中。这一个子流程还包含:如果恶意代码扫描没有检测到恶意代码存在于特定文件的虚拟副本,就使用远程服务器将特定文件的对应程序标识符号附加于白名单(步骤K)。因此,这个子流程会自动更新曾经未知的程序标识符号到黑名单或白名单之中。随着时间的推移,通过这种方式,本发明在识别威胁方面变得更好。
[0026] 请参照图7、图8、及图9。在将特定文件和黑名单进行比较或者运行沙盒评估流程之后,特定文件的对应程序标识符号将会出现在黑名单或白名单之中。如果发现特定文件的对应程序标识符号出现在黑名单之中,本发明的方法会启动威胁修复流程。威胁修复流程最先会提供多个修复命令(步骤L)。多个矫正命令是那些指示本发明的方法如何处理那些具有恶意代码的多个命令的集合。多个修复命令是储存在远程服务器;一旦威胁修复流程启动,多个修复命令会传送到个人计算装置。这一个子流程包含:提示用户使用个人计算装置,为特定文件选择一个期望的命令(步骤M)。此一期望的命令可以是多个修复命令之中任何一个使用者想要执行的修复命令。如此,可以让用户选择如何处理含有恶意代码的个人文件。在用户做了选择之后,这一个子流程还包含:在步骤E,使用个人计算装置针对该特定文件执行这个期望的命令(步骤N)。于是,这一个子流程就执行期望的命令,然后威胁修复流程就完成。威胁修复流程也可以自动进行。也就是说用户仅从多个修复命令中选择期望的命令一次,之后所有的威胁修复流程都会自动的执行这个修复命令。在某个情况,用户可能会想要删除这个被发现含有恶意代码的个人文件。在此情形,用户就选择一个删除命令作为期望的命令。在本发明的一个实施例,威胁修复正命令是被预设的,并没有给予用户选择期望的命令的机会。这一个子流程还包含:在步骤N,在个人计算装置卸载这个特定文件。卸载特定文件会将这个特定文件从个人计算章装置中移除,于是用户就可以免于受伤害。在另外一种情况,用户会想要隔离这个被发现含有恶意代码的个人文件。在此情形,用户就选择一个隔离命令作为期望的命令。这一个子流程还包含:在步骤N,在个人计算装置让这个特定档案失效。让特定文件失效并没有从个人装置中移除这个特定文件,但是这个特定文件失效而无法对用户产生伤害。
[0027] 请参照图10。除了鉴识恶意代码之外,本发明也被设计成可以为用户建议有益的产品及服务。为达成此一目的本发明的方法使用一个子流程,以散播广告给用户。这一个子流程包含:提供储存在远程服务器的多个广告。多个广告是宣传性质的告示的集合,其包括:特定产品及服务的图像、视频、超链接及文字信息。这一个子流程还包含:使用远程服务器检索多个个人文件之中的每一个个人文件的至少一个上下文标识符。上下文标识符与是与个人文件相关的一条元数据。这一个子流程还包含:使用远程服务器编译多个个人文件的每一个个人文件的至少一个上下文标识符成为一个用户简介。根据与多个个人文件中的每一个相关联的上下文标识符的分析来创建用户简介。这一个步骤将各不相同的元数据转换成为用户的配置文件,其透露出哪种产品或服务最适合用户。用户简介也可能包括:用户网络浏览纪录、及计算装置经常进行的工作。这一个子流程还包含:将用户简介与多个广告之中的每一个进行比对,以从多个广告中挑选出至少一个适配的广告。这至少一个适配的广告是储存在远程服务器的多个个广告中的一个或多个广告。这一个子流程建立了一个用户的虚拟简档,然后找出使用者最能够接受的广告。这一个子流程还包含:在步骤E之后,在用户计算装置显示出该至少一个适配的广告。于是,适配的广告就以容易交互的形式呈现给用户。本发明的方法优选地
跟踪用户是否与适配的广告进行交互。于是,本发明的方法就可以对使用者的行为进行长期的追踪,并改善用户简介的内容。
[0028] 本发明已经以实施例说明于上。然而需要了解的是:在不背离本发明之精神或申请范围的情况下,对该些实施例所为之
修改或变化仍包含于本发明之范围内。