防止可执行对象的不合要求行为的方法和系统的制作方法

文档序号:6419199阅读:375来源:国知局
专利名称:防止可执行对象的不合要求行为的方法和系统的制作方法
发明的领域本发明涉及计算机网络的安全管理。特别地,本发明涉及在计算机网络工作站中防止可执行对象的不合要求的行为的方法和系统。
发明的背景互联网技术自几年前开始以来,无论在其容量还是所采用的技术方面都取得了很大程度的发展。在互联网的早期,万维网站点中仅含有文字,不久引入了图形。随着互联网的发展,许多压缩标准,如图象,声音和视频文件得到了发展,程序使用这些标准进行播放(称为“播放器”)。起初,这些文件仅根据用户的需要被下载到用户的工作站中,仅可由适当的播放器来提取,并要依照用户指定的顺序。
在万维网的发展过程中,当开始寻求一种能够展示良好的、交互的和灵活的网页的方法时,Sun Microsystems公司开发了Java--一种允许万维网站点管理员编写一个程序,一个无需通知万维网站点管理员即可下载到用户的工作站中并由他的工作站中的浏览器执行的的命令列表-网络可执行命令。例如使用可执行命令在网络冲浪者的屏幕上提供图象动画和其它图形。这种可执行命令具有一些可接近用户工作站资源的途径,这样导致一个很大的安全问题。尽管在Java语言中可以定义一些安全等级,但是很快在这种语言中发现一个大的安全漏洞。
自开发了Java,微软开发出了ActiveX,既另一个网络可执行命令格式,也被下载到工作站中。ActiveX也有同样的安全问题。
互联网中充满了“网络可执行命令”,可能被用户或有意或无意地下载到机构内的工作站中。通常这些代码包含无害的功能。尽管一般情况下是安全的,但它们可能不符合所要求的机构安全策略。
一旦被执行,代码可能会阻塞网络,导致本地数据库、工作站和服务器的不可挽回的损失,或产生对工作站/服务器中的信息的未被授权的检索。这许因素可以出现在Java的小程序、ActiveX组件、动态连接库和其它的对象代码中,并且这些应用正在以空前的速度增长。这些小程序的大部分是在未经请求和未被控制的情况下被下载到机构中。企业没有办法知道这些程序的存在或执行,并且没有适当的系统来进行早期检测,防止这些代码的执行。
这一安全问题由浏览器生产商部分地解决,允许用户禁止可执行代码的使用。当然,这还不是根本的解决办法,因为所有的电子商务和广告是都是基于可执行代码的使用。一旦这样的可执行代码能够接近企业的服务器、数据库和其它的工作站时,安全问题就变得非常严重。
可参考本申请人的另一个待决专利申请的说明IL120420,申请日1997年3月10日(和1998年2月23日的PCT/IL98/00083),对一种方法进行了描述和权利要求,有选择地防止在计算机上下载和执行不合要求的可执行对象,包括如下步骤(a)提供一个或多个控制中心,每个中心连接一个或多个网关,每一网关服务于一个或多个用户计算机;(b)提供上述的每个网关的相关方法,检测到达这些网关的可执行对象,分析每个所述可执行对象的头部,并确定可执行对象需要利用的计算机资源;(c)提供上述的每个网关的相关方法,存储表现资源和资源组合的终端用户计算机安全策略,管理员允许或不允许一个可执行对象在其目的地利用这些资源,其中从上述的一个或多个控制中心获取安全策略和/或将安全策略存储到一个或多个控制中心中;(d)当在网关中检测到一个可执行对象时1.分析该可执行对象的头部;2.确定该可执行对象需要利用的计算机资源;3.可执行对象需要利用的计算机资源和安全策略进行比较,和;(ⅰ)如果可执行对象需要利用的计算机资源包含在安全策略允许使用的资源列表中,允许可执行对象通过网关并到达启动其下载的计算机,;和(ⅱ)如果可执行对象需要利用的计算机资源包含在安全策略禁止使用的资源列表中,阻止可执行对象通过网关,由此防止其到达启动其下载的计算机。
一个控制中心(CC)可以是一个中央控制单元,例如,一台PC或其它计算机,连接到多个网关,更新包含诸如安全策略的相关数据的存储方法。一旦控制中心被更新,例如,增加一个附加的限制到安全策略中,所有的网关都立即被更新。使用控制中心控制网关的安全因素的运行,避免了当每次改变策略时对每个网关进行更新的需要(在以前的系统中是需要这样的)。
一个LAN(局域网)可以是(但不局限于)诸如一个位于一个办公室或楼字的网络。通过一个或多个网关,局域网通常连接到外面的通讯网络,诸如万维网,或连接到更多限制的局域网,如一个客户或供应商的局域网。机构越大,使用的网关数目越大,以便能够一个合适的通讯速度。
一般来说,一个局域网也可由多个小的局域网组成,地理位置上或近或远,但即使在同一个机构中存在小的局域网,每个部门间的安全要求也可能彼此不同,需要保持高安全度,包括防止可执行对象从一个部门转移到另一个部门,即使在同一个机构中。
每个网关的相关方法可以具有多种不同的类型,用来检测到达所述网关的可执行对象,分析每个所述可执行对象的头部,并确定可执行对象需要利用的计算机资源。通常,通过在通讯线路上将可执行对象收听到TCP/IP协议以及对象传输协议,如SMTP,HTTP,FTP中,可执行对象在网关处被“捕捉”和分析。从通讯线路中捕获并提取可执行对象的头部是技术熟练人员所熟知的步骤,可以通过常规的编程的方法来实现,因此为简洁起见,这里不做详述。
一旦对可执行对象(EO)的头部进行了分析,可以很容易进行EO需要使用的计算机资源与安全策略的比较,如将其与一个控制中心提供给网关的体现安全策略的查找表进行比较。比较也可针对存储在控制中心的数据来进行,在这种情况下,网关中可以不需要指定的存储方法和比较方法。然而,速度和性能的考虑通常决定了这一操作是在网关本身进行的。
通过一个单端口,端口80,该端口是网络冲浪常用的端口,先前的技术为分析所发生的通讯提供一种技术解决方法。但是,现在可以通过端口80以外的端口进行网络冲浪,而根据当前可用的技术,用户的HTTP服务器不能工作在多个端口上。所以,如果多于一个用户同时使用一个网关,先前的技术系统是无效的,因为它们不适合于同时分析通过其它端口发生的通讯。
另一个严重的不足之处是当根据先前的技术方法,需要一个非常强大的HTTP服务器来为多个用户服务。
为了能够对“飞行(on the fly)”的可执行对象进行分析,而不妨碍无害可执行对象的下载和操作,在本申请人另一个待决专利申请(121815,申请日1997年9月22日,和相应的PCT申请PCT/IL98/00082,申请日1998年2月23日)提供了一种处理可执行对象的方法,包括(a)提供能够对通讯线路中在浏览器和一个网上的HTTP服务器之间传输的数据包进行无干扰分析的方法,所述的通讯线路是通过一个网关建立的;(b)分析所述的浏览器和服务器之间的信号交换,来检测一个由用户发出的“GET”命令和一个由所述服务器响应的HTTP代码;(c)当检测到这样的一个HTTP代码时,利用下面的步骤来分析由所述的服务器传输到所述浏览器的数据包(1)提供排序方法,以非连续的顺序对接受到的数据包进行排序,并以连续的顺序将其向前传送到头部检测方法中;(2)检测数据包,以便分析可执行对象的头部内容,并识别需要使用的系统资源;(3)将代表可执行对象需要利用的系统资源的数据传输所述的网关;和(4)提供所述网关相关的数据包抑制方法,这样,如果根据管理员设定的安全策略,可执行对象需要利用的系统资源是不被允许时,至少一个属于可执行对象的数据包被抑制、更改或破坏,以便防止被浏览器执行。
然而,永久改变互联网系统的状况需要针对连续增长的威胁提供新的解决措施,提高现有方法所提供的安全性。特别是,除了浏览互联网所需要的性能外,新的互联网浏览器要配备扩展的性能,如要具有访问本地文件和目录的能力等。此外,其它的应用程序,诸如,MS-Word,或Visual-C++,允许直接进行浏览,而不需附加的浏览器。在这种情况下,就不再存在常规的互联网应用程序与其它程序间的分离。结果是,通过“安全的”应用程序,可以允许不合要求的可执行对象的访问,就是说,通过诸如一个字处理器的应用程序,由于不允许EO的访问,这些应用程序在先前被认为是安全的。
目前该项技术还不能提供这一问题的解决办法,而且很明显这一问题又是急需解决的。
发明概述本发明的一个目的是提供一种方法,防止可执行对象的不合要求的行为,克服如前面所述的先前技术系统的不足。
本发明的另一个目的是提供这样的一种容易实现的不需要改变硬件的方法。
本发明的进一步的目的是提供一种方法,防止展现给互联网的应用程序访问所选择的资源。
本发明的其它优点和目的将在下面的描述中说明。
根据本发明,一种用于防止可执行对象通过一个应用程序进行的不合要求的行为的方法包括如果一个应用程序先前表现出互联网行为并且不符合访问一个保护资源的特定条件时,拒绝同一应用程序,或其一个或多个它的线程对这一保护资源进行访问,如果有访问需求时,应用程序正在访问一个保护资源,则拒绝该应用程序,或它的一个或多个线程的互联网行为。
依照本发明的一个优选的实施方案,该方法包括将表示互联网行为的事件记录到一个存储器中,保持一个所有被保护资源的记录,并且当先前展现互联网行为的一个应用程序试图访问这样一个被保护资源时,拒绝访问所述的保护资源,除非-自上一次互联网行为起,至少经过一个预定的时间周期;或-应用程序的网络行为之后,至少执行了预定数目的操作;或-满足另一个预置的条件。
能够用于这一目的的预置条件有许多,本领域技术人员可以很容易了解适合于指定系统的条件,例如,条件可能包括控制在互联网行为期间接收到的可下载对象的执行,保证没有未被执行的可下载对象可以访问保护资源。例如,根据本发明的一个优选的实施方案,预置的条件包括可下载对象的分析,以保证这些对象是无害的。
根据本发明的一个优选的实施方案,通过禁止创建网络连接或指定的协议,诸如HTTP,FTP,SMTP等等,或通过禁止可执行对象(EO)通过一个协议传输,来阻止互联网行为。然而,如果有必要,要求不禁止对可靠网址的访问。
根据本发明的一个优选的实施方案,通过禁止使用特定的用于访问保护资源的系统功能的线程,来阻止对保护资源的访问。
本发明还包含一些装置,防止可执行对象通过应用程序进行的不合要求的行为,包括用于存储多个应用程序的网络行为记录的存储器,还包括一些方法,如果一个应用程序先前表现出互联网行为并且不符合访问一个保护资源的特定条件时,拒绝同一应用程序或它的一个或多个线程对这一保护资源进行访问,如果有访问需求时,应用程序正在访问一个保护资源,则拒绝该应用程序或它的一个或多个线程的互联网行为。
本发明进一步包括一个系统,防止可执行对象通过应用程序进行的不合要求的行为,包括一台用于运行一个或多个应用程序的计算机,该计算机可以连接到互联网,或内联网,或外联网上,为该计算机提供了一个用于存储多个应用程序的互联网行为的记录的存储器,还包括一些方法,如果一个应用程序先前表现出互联网行为并且不符合访问一个保护资源的特定条件时,拒绝同一应用程序或它的一个或多个线程对这一保护资源进行访问,如果有访问需求时,应用程序正在访问一个保护资源,则拒绝该应用程序或它的一个或多个线程,和互联网行为。
在整个描述中,无论何时制定互联网参考,显然,加以必要的更改,本专利同样使用于任何其它类型的网络,例如内联网和外联网,本领域的技术人员很容易了解,通过适当的修改,这里所述的关于互联网的内容同样可用于其它类型的网络。


在附图中图1A和1B概要说明两种可选择的状况,其中一个展现给互联网的应用程序被拒绝访问保护资源;图2概要说明一种状况,其中一个当前正在访问一个被保护的资源的应用程序的互联网行为被拒绝;和图3进一步说明根据本发明,保护资源的封锁过程。
优选实施方案的详细描述图1A说明一种状况,其中一个应用程序(表示为“应用程序#1”)试图通过它的一个线程(在图中表示为“线程#1”)到达一个保护资源,SR。线程#1(或同一应用程序的任意一个其它的线程)在先前展现出互联网行为(互联网行为是指一个应用程序打开一个与互联网的连接)。该行为连同事件的细节一起被记录到存储装置(没有在图中显示)中。在图1A详述的选择中,同一程序的任何其它的线程被阻止访问保护资源。
图1B所示的另一种状况中,仅有展现互联网行为的特定的线程和它的任意子线程被阻止访问保护资源,而允许所有其它的线程访问。在图1B的一个指定的例子中,一个线程#1和它的线程(线程#2和线程#3)中没有一个可以访问保护资源。
根据本发明,无论什么时候一个应用程序展现互联网行为,该事件都被记录到一个存储器中(该存储器可以位于工作站或服务器中)。一个所有保护资源记录也可以保存在一个查找表中。当先前展现互联网行为的同一应用程序试图访问这样一个保护资源时,对资源的访问被拒绝,除非1)自上一次互联网行为起,至少经过一个预定的时间周期;或2)应用程序的网络行为之后,至少执行了预定数目的操作;或3)满足另一个预置的条件。
许多预置的条件可以使用以允许对另外的被禁止的保护资源的访问。例如,可以控制在这种连接期间接收到的可下载对象的执行,保证没有未被执行的可下载对象可以访问保护资源,或者可以对可下载对象进行彻底分析,以保证这些对象是无害的。例如,许多浏览器为Java小程序提供了自身的沙箱(sand box),或者通过数字符号来确保可执行对象是无害的,或者对可执行对象进行离线或静态分析。当然,熟练人员能够针对该目的提出不同的合适条件。
现在转向图2,该图显示了一个不同的状况,其中应用程序(应用程序#1)的一个线程已经访问了一个保护资源SR,并且正在进行网络行为。在这种情况下,网络行为将被拒绝。这里,同样有一个保存保护资源的查找表,以使得无论任何时候一个应用程序试图进行互联网行为时,都会针对该查找表对保存已被访问的资源记录的存储器进行检测。如果当前正在被访问的资源是一个被保护的资源,那么互联网行为被拒绝。
当一个应用程序接收到一个互联网可执行对象(如一个Java或ActiveX对象)时,通常将其存储到一个临时的或缓存目录中,并且仅当执行对象从互联网上完整下载时,应用程序中的一个线程访问并执行该对象。图3概要说明了这些步骤步骤1(S1)-一个线程下载一个互联网可执行对象;步骤2(S2)-一个线程从临时或缓存目录中读取该互联网可执行对象;步骤3(S3)-一个线程试图访问一个保护资源并被拒绝访问。任一个线程可以执行任意一个或多个步骤。即使一个步骤,S1或S3,没有执行,步骤3也将被执行。
当然,上述的操作可以在工作站中以不同的方式实现,使用许多不同的程序和计算机例程,都属于定时操作器的技术范围,因此为了简洁起见,这里不作详述。例如,在本申请人的另一个待决PCT专利申请中,描述了一个涉及到处理数据和阻止访问资源的运行实例,其申请号为PCT/IL98/00084,申请日1998年2月23日(基于以色列专利申请,申请号122314,申请日1997年11月27日),可全面参考其中的描述。
上述的优选实施方案中的所有的描述都是用来对本专利进行说明,但不局限于本专利,除了权利要求中所指定的内容。在本发明中可以进行许多修改。例如,许多应用程序可能会涉及到保护过程,其行为可以用许多不同的方法存储和分析,而不会超出本专利的范围。
权利要求
1.一种用于防止可执行对象通过一个应用程序进行的不合要求的行为的方法,该方法包括如果一个应用程序先前表现出互联网行为并且不符合访问一个保护资源的特定条件时,拒绝同一应用程序或它的一个或多个线程对这一保护资源进行访问,如果在有访问需求时,应用程序正在访问一个保护资源,则拒绝该应用程序或它的一个或多个线程的互联网行为。
2.依照权利要求1的方法,包括将表示互联网行为的事件记录到一个存储器中,保持所有保护资源的记录,和当先前展现互联网行为的一个应用程序试图访问这样一个被保护的应用程序时,拒绝访问所述保护资源,除非a)自上一次互联网行为起,至少经过一个预定的时间周期;或b)在应用程序的网络行为之后,至少执行了预定数目的操作;或c)满足另一个预置的条件。
3.依照权利要求2的方法,其中预置条件包括控制互联网行为期间接收的可下载对象的执行,保证没有未执行的可下载对象可以存取受保护的资源。
4.依照权利要求2的方法,其中预置的条件包括对可下载对象的分析,以保证这些对象是无害的。
5.依照权利要求1至4的方法,其中通过禁止创建网络连接来阻止互联网行为。
6.依照权利要求1至4的方法,其中通过禁止特定的协议来阻止网络行为。
7.依照权利要求6的方法,其中指定的协议包括HTTP,FTP,SMTP,或类似的通讯协议。
8.依照权利要求1至4的方法,其中通过在通讯协议中禁止EO的传输来阻止互联网行为。
9.依照权利要求5至8的方法,其中对可靠的网址的访问是不被禁止的。
10.依照权利要求1至4的方法,其中通过禁止使用特定的用于访问保护资源的系统功能的线程,来阻止访问保护资源。
11.依照权利要求1至10的方法,其中一个被拒绝访问一个保护资源的的线程的所有子线程也被拒绝访问该保护资源。
12.依照权利要求1至10的方法,其中一个被拒绝互联网行为的线程的所有子线程也被拒绝互联网行为。
13.一种防止可执行对象通过一个应用程序进行的不合要求行为的装置,包括用于存储多个应用程序的网络行为记录的存储器,还包括如果应用程序先前展现互联网行为并且不符合存取所述保护资源的条件拒绝同一应用程序访问一个保护资源的装置。
14.一种防止可执行对象通过一个应用程序进行的不合要求行为的装置,包括用于存储多个应用程序的网络行为记录的存储器,还包括如果有访问需求时,所述应用程序正在访问一个保护资源,则拒绝该应用程序或它的一个或多个线程的互联网行为的装置。
15.一种防止可执行对象通过一个应用程序进行的不合要求行为的系统,包括一台用于运行一个或多个应用程序的计算机,该计算机可以连接到互联网,或内联网,或外联网上,为该计算机提供了一个用于存储多个应用程序的互联网行为的记录的存储器,还包括如果应用程序先前展现互联网行为并且不符合存取所述保护资源的条件则拒绝同一应用程序访问一个保护资源的装置。
16.一种防止可执行对象通过一个应用程序进行的不合要求行为的系统,包括一台用于运行一个或多个应用程序的计算机,该计算机可以连接到互联网,或内联网,或外联网上,为该计算机提供了一个用于存储多个应用程序的互联网行为的记录的存储器,还包括如果在互联网行为时,所述应用程序正在访问一个保护资源,则拒绝该应用程序或它的一个或多个线程的互联网行为的装置。
17.如同上述的描述和说明,一种防止可执行对象通过一个应用程序进行的不合要求行为的方法。
全文摘要
一种用于防止可执行对象通过一个应用程序进行的不合要求的行为的方法,该方法包括:如果一个应用程序先前表现出互联网行为并且不符合访问一个保护资源的特定条件时,拒绝同一应用程序,或其一个或多个线程对这一保护资源进行访问,如果有访问需求时,应用程序正在访问一个保护资源,则拒绝该应用程序或它的一个或多个线程的互联网行为。表示网络行为的事件被记录到一个存储器中。保持一个所有被保护资源的记录,并且当先前展现互联网行为的一个应用程序试图访问这样一个保护资源时,拒绝访问所述的保护资源,除非自上一次互联网行为起,经过一个预定的时间周期,或者在展现互联网行为后,应用程序已经完成了预定数目的操作,或者满足了另一个预置的条件。
文档编号G06F21/22GK1323484SQ99812238
公开日2001年11月21日 申请日期1999年10月13日 优先权日1998年10月15日
发明者D·埃尔格雷斯, F·本阿德雷特 申请人:电脑相关想象公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1