网络保护认证代理的制作方法

文档序号:7996652阅读:151来源:国知局
专利名称:网络保护认证代理的制作方法
技术领域
本发明总体上涉及对资源的认证,例如资源存取的用户记录,并且特别地涉及提供用于处理如来自外部网请求的一定认证请求的前端,以允许前端容易地避免认证闭锁。
背景技术
公司和其它实体常常具有由“内部网”和“外部网”组成的分支的网络。内部网通常仅仅能够由具有接入内部网授权的公司雇员、合伙人和设备接入。外部网通常被认为是一种不是内部网直接部分的网络部分,但其可以通过防火墙或其他安全的屏蔽以通信方式与内部网和如因特网的外部网络耦合。试图访问面向外部的应用或内部网资源的如外部网实体的局外人能够与外部服务器接触,该外部服务器将要求该局外人提供一个用于进行评估以确定该局外人访问内部网的授权的安全凭证,例如用于认证帐户的用户名和口令。
通常,外部网认证基础结构保存用户帐户,在内部网复制有效帐户,使得内部网用户能够通过对照一套复制的安全凭证进行认证而使用面向外部应用。但是,尽管这样能够使内部网用户使用外部网应用,但会导致重大的口令一致性问题。另外,在内部网和外部网服务器之间传送新帐户可能是困难的。这些问题的普遍解决方案是设置一个外部网应用服务器接入凭证,其直接对照内部网认证服务器,例如内部网登录服务器,进行认证内部网。这种结构消除了内部网和外部网服务器可能不同步的风险和其它的问题。
不幸的是,通过实际上许可从外部网访问内部网认证服务器,使内部网变得易受攻击,例如拒绝服务攻击。例如,多数的认证服务器在帐户被冻结之前仅仅允许一定数目的不正确的认证尝试,例如三次尝试。因此,如果外部网被允许直接访问内部网认证服务器,外部恶意用户简单地通过故意执行不正确的基于外部网认证请求,就能够冻结雇员的访问,如高级管理人员,外部网。冻结也可能发生在执行brut-force口令破解处理尝试的过程中。


本发明的特征和优点将通过对本发明的下述详细说明变得显而易见,其中图1示出根据一种实施例的典型系统;图2示出根据一种实施例的数据流图;图3是根据一种实施例的流程图;图4示出根据一种实施例的用于修改Kerberos认证的流程图;图5示出一种适合计算环境,在此环境中本发明的特定方面能够被实现。
具体实施例方式
图1示出根据一种内部网实施例的典型系统,该系统用于利用内部网(内部)认证系统认证一个局外人,而不会因无效认证而导致从内部网络上被冻结。图示的是对应于公共网络100的三个区域100、102、104,例如因特网、外部网102和内部网104。
如客户电脑、手持设备等等的在外部网上的外部设备106可能通过外部网102试图访问如内部网104的资源,例如内部网服务器(图中未示)的资源。该外部设备与具有可通过公共网络接入的面向外部的接口的应用108通信耦合。例如,此应用可以是“电子商务”应用、业务到业务(B2B)应用、记帐程序、用于旅行雇员的应用、网络服务器,或其它授权的内部网用户可以请求从外部访问的应用。最好是该应用能够驻留在内部网、外部网或外部网络的设备上,其备有合适的通信链路(或通道)以许可资源存取。
如将在下面进一步论述的,应用108被配置以在允许外部设备访问内部网104资源以前认证外部设备106(或其用户)。为此目的,应用108与认证前端110通信耦合,认证前端110工作以接收来自应用108的如安全凭证等的认证信息,并且向内部网的内部认证系统112提交该安全凭证,例如登录服务器或其它帐户认证器。在一种实施例中,认证前端是内部认证系统的代理。
然而,最好不是简单地将安全凭证传送到内部认证系统112,而是代之以认证前端110首先查询认证系统以确定该安全凭证的登录规则和/或当前状态以保证登录尝试不会冒因为过多无效认证尝试而冻结安全凭证的风险。例如,如果外部设备106尝试使用用户标识符“Joe”和口令“Secret”作为安全凭证访问内部网104,外部设备提供这些凭证到应用108,应用108将其提供到认证前端。然后认证前端查询认证系统112,以获得与该凭证相关的信息以决定是否会发生冻结的情况。
假定安全策略在冻结一个帐户以前允许三次不正确的登录。认证前端例如可以确定已经发生了两个在前的不正确尝试并且因此第三次无效的尝试将会导致冻结帐户。认证前端然后会决定向外部设备产生一个登录错误,好像安全凭证已经被提供给认证系统,但事实上没有其所出现的危险。因此,如果“Joe”帐户受到来自外部网络100的攻击,Joe仍然能从内部网登录,而外部网访问被拒绝。应当理解,能够采用多种的策略或决策系统来决定对一定帐户是否和何时恢复其外部网访问。例如,可以采用超时周期,管理员可以被要求检查被冻结帐户,并且批准外部网恢复正常,在回到内部网时此帐户所有者可以被发送要求帐户所有者激活外部网访问尝试的消息(例如,在允许外部网访问之前帐户所有者可以被要求承认帐户所有者是外部网认证失败的来源)等等。
应该理解,可以采用多种技术以允许认证前端110访问关于凭证的信息以确定是否会发生冻结情况。例如,在一种实施例中,内部认证系统112基于微软活动目录服务器(或等价物),且认证前端作为目录服务器的代理操作,因此能查询目录服务器以获得帐户状态信息。在一种实施例中,认证前端110利用简便目录访问协议(LDAP)(查看internet工程任务组(IETF)征求意见资料(RFC)2251-2254)查询目录服务器,以获得安全凭证的冻结状态。在另一种实施例中,认证前端利用国际标准化组织(ISO)/国际电信联盟(ITU)X.500标准查询目录服务器。注意,尽管应用108和110被示为分离的,但应当理解,它们能够包含在单独设备114中或由单独应用程序实现(虚线表示可能的组合)。
在例示的实施例中,安全边界116定义在外部网络100和外部网102之间的边界,并且可由防火墙或其他网关执行,以限制在外部设备106和应用108之间的通信。相似地,在例示的实施例中,具有定义在外部网和内部网104之间边界的安全边界118。应该理解,认证前端110可以与多种认证协议联合工作,包括Radius、Kerberos和其它认证基础结构。
图2例示根据用于图1系统的一种实施例的数据流图。外部设备106试图访问在内部网上的资源或认证一个外部网应用,例如图1区域104。为达此目的,外部设备发送数据200以初始化一个与具有面向外部的接口或多个接口的应用108的通信会话。应用108通过发送请求外部设备认证其自身身份,例如,提供安全凭证,的认证请求202进行响应。作为响应,外部设备提供安全凭证204。
在应用108提供安全凭证204之后,应用将该凭证206发送到认证前端110。注意,凭证204、206尽管具有不同的附图标记,但可以是相同的凭证,例如发送的凭证206可能与接收的凭证204一致;可选地,应用可以在发送之前变更或改变凭证,例如在不同的认证系统之间转换或译码。因此,在一种实施例中,应用在认证系统之间转换或译码以允许使用新的不相容协议或旧的废止协议。
如以上对图1所论述的,与传统的内部认证器112将被要求确认安全凭证并且因此冒来自恶意外部网络行为的冻结风险的认证方案所不同,代之以认证前端110查询208内部认证器以决定是否安全凭证206的帐户冒无效认证阈值的风险。也就是,认证前端会查询内部认证器以确定帐户在被冻结之前还有多少无效的认证请求。如果与阈值接近,认证前端可以选择拒绝外部网络访问以保留内部网访问此帐户。
认证器发送指示该帐户的当前状态的响应210。例如,假设冻结基于无效尝试的数目,此响应可能指示帐户允许三次无效登录尝试,并且两次无效登录尝试已经被记录。如果帐户没有冒阈值的危险,认证前端110则可能提交安全凭证212到内部认证器112。如上所述,应当理解提供的安全凭证212可以是接收到的安全凭证204、或修改了的安全凭证。内部认证器发送可能是批准访问或拒绝访问的响应214。如果必要,此比准或拒绝是具有适当安全凭证修改或转换的级联的216、218,返回到外部设备。
图3是根据一种实施例的流程图。
外部设备试图访问在内部网上的资源106,并且初始化与具有面向外部的接口的应用的通信会话300。在一种实施例中,该应用可以接收来自内部网和外部网络双方的联系,并且因此执行一个测试以决定是否是来自外部网络的联系302。如果其是外部的,该应用利用一个认证请求外部设备表明其本身身份,例如,提供安全凭证,来响应304。作为响应,外部设备提供安全凭证306。
应该理解多种的应用程序和/或硬件能够应用于安全凭证的交换。例如,外部设备可以是操作因特网类型浏览器的计算装置,并且应用可以是因特网网络服务器的公共部分。该浏览器能够联接网络服务器,接收显示用户名/口令对话框的指令,响应该指令,外部设备用户填写请求的凭证并且提交该凭证到该网络服务器。或者外部设备的操作系统可以试图建立加密或安全的隧道,并且应用可以是可公开访问的虚拟个人网络(VPN)服务器。或者,在传统的物理不安全网络上使用的公知认证系统可以被修改以实施所公开的实施例。(参见图4)被提供306的安全凭证然后发送308到试图查询310内部认证器的认证前端110以判断认证被提供306的安全凭证是否会冒冻结在安全凭证中所标识帐户的风险。如果帐户冒被冻结的风险312,认证前端则返回外部设备一个认证错误314,不必实际上正式地尝试用内部认证器认证该安全凭证。如果312帐户没有冒此风险,则被提供的306安全凭证被发送314到内部认证器用于认证。内部认证器响应指示认证成功或失败318。然而,已知即使由于来自外部网络的恶意攻击而导致的认证失败,此帐户仍然可以从内部网访问。
如果通信初始不是源于外部资源302,则传统的认证可以被执行320,例如不必使用认证前端进行预认证登录,直接执行框304、306、316的318的操作。
图4示出根据为修改Kerberos认证的一种实施例的流程图,如在RFC1510中所描述的,Kerberos是公知的简化身份确认的认证系统,其阻止窃听和重放攻击,并且提供数据流的完整和保密。
Kerberos通过为本人(例如外部设备106的用户或服务程序)提供用于认证其自身的“执照”和用于安全通信的加密密钥进行操作。在一种实施例中,Kerberos被修改以识别正在尝试认证所来自的区域,例如识别如图1的区域104的在内部网上的认证,或者如图1的区域100的来自外部网络的联接。假设Kerberos认证发生在与具有所需资源的第二设备上分开的第一设备上;该第二设备可以不同于接收登录凭证的第三设备。第二和第三设备可以是相同的设备。
安全凭证被接收400,例如,通常是在外部设备106上输入用于登录的用户名和口令。执行一个测试判断是否402联接源于外部源,例如外部网络。如果该认证来自外部网,执行检验404以判断认证该安全凭证的尝试是否可能导致帐户冻结。如上所述,在一种实施例中,微软活动目录服务器或其它跟踪如登录政策、无效登录尝试的次数等帐户状态数据的装置被查询。如果使用预认证,因为预认证失败可能导致冻结,所以检验404在Kerberos尝试预认证登录之前进行。在一种实施例中,Kerberos服务器可以包含微软活动目录服务器服务,并能够直接判断冻结的风险,例如活动目录服务充当包含关于冻结条件的状态数据的存储器。
如果存在冻结风险406,则返回认证错误408,而不进行实际尝试Kerberos认证处理。如果没有冻结风险,则认证可以正常地进行。也就是说,外部设备联接一种初始执照服务410,例如一种Kerberos初始执照服务(KITS),或者在一种Windows环境中,例如Windows 2000,联接最近的活动目录密钥分配中心(KDC)。为防止口令猜测,KITS/KDC可以发送外部设备预认证数据,例一种已经用与登录凭证相关的密钥加密的随机序列。当接收到时412,外部设备必须解密预认证数据以证明其知道正确口令414。在提供此证据之后,外部设备识别416一个执照授予服务器,即,它所希望连接的服务器,例如一个具有如文件、目录等等所需资源的服务器。执照授予服务器用一个包括唯一会话密钥的会话执照响应418,该会话密钥是与登录凭证相关双重加密,具有所要联接的服务器的密钥。
在一种实施例中,本发明不是修改例如kerberos或其它系统的认证系统,而是作为对系统的包装(wrapper)操作。也就是说,本发明能够被配置侦听典型地被认证系统使用的通信信道,例如kerberos的传输控制协议(TCP)/互联网协议(IP)端口88,接收源于外部设备的初始联接,对照冻结条件执行预备检验,并且如果没有冻结的威胁,则该隧道进一步在外部设备和认证系统之间进行认证通信。
如果不是从外部网络接收到认证安全凭证402,认证处理则如上所述如常地继续进行,例如好象帐户没有冒冻结风险。本领域技术人员应该理解,以上关于Kerberos的描述省去了Kerberos认证的许多操作细节以简便易读。应该进一步理解公开的原理能够应用到即使不是全部也至少是大部分其他认证系统。
图5和随后的论述目的是提供一个适合设备的简要、一般的描述,其中本发明的一定方面能够被实现。如在此使用的,术语“设备”包括如电脑、手持装置、传输设备等等的单个设备或通信耦合的多个设备或设备的系统。
典型地,设备500包括连接到处理器504,如某些状态保存媒介的存储器506、存储设备508、视频接口510,以及输入/输出接口端口512的系统总线502。该设备能够至少部分地被通过如键盘、鼠标等等传统的输入装置输入的指令控制,还能够被从另一设备接收的与虚拟现实(VR)环境的相互作用、生物测定反馈或其他输入资源或信号接收的指示控制。
该设备可以包括或嵌入内嵌式控制器,如可编程或不可编程逻辑器件与阵列、专用集成电路、嵌入式计算机、智能卡等等。此设备可以利用到一个或多个远程设备514、516的连接,例如通过网络接口518、调制解调器520或其它通信耦合途径。设备可以通过如图1所示的内部网104、外部网络100、因特网、局域网和广域网的物理和/或逻辑网络522的方法互连。本领域技术人员应该能够理解,网络522能够利用多种有线和/或无线的短程或远程载波和协议,包括射频(RF)、卫星、微波、电气与电子工程师协会(IEEE)802.11、蓝牙、光学、红外、电缆、激光等等。
本发明能够通过参考或结合包括功能、程序、数据结构、应用程序等等的相关数据被描述,其当通过设备访问时导致设备执行任务或者定义抽象数据类型或低级硬件环境。相关数据能够被存储在例如易失性和/或非易失性存储器506或储存装置508和其相应存储介质中,包括硬盘、软盘、光存储器、磁带、闪存、记忆棒、数字化视频光盘、生物存储器等等。相关数据可以以分组格式、串行数据、并行数据、传播信号等形式通过包括网络522的传输环境传递,并且能够以压缩或加密格式运用。相关数据可以用在分布式环境、并且在本地和/或远程地存储,用于如个人数字助理(PDAs)、蜂窝式电话、图形输入卡等等的的单个或多个处理器设备、便携式计算机、手持装置访问。
因此,例如关于例示的实施例,假定设备500包括图1的应用108,远程设备514、516可以分别包括认证前端110和内部认证系统112。应该理解远程设备514、516能够被配置像设备500一样并且包括多个或所述设备的所有部件。
参考例示的实施例已经描述和例示了本发明的主要方面,应该理解,例示的实施例能够在排列上和不脱离此原则的细节被修改。并且,尽管在前所述集中于特定的实施例,其它的结构也是可预见的。特别地,尽管在此处使用如“在一种实施例中”、“在另一种实施例中”或其它类似措辞,这些语句目的是总体引用可能的实施例,并没有意图限定本发明在特定实施例的结构中。如在此处使用的,这些术语能够引用合并到其它实施例中的相同或不同的实施例。
因此考虑到对此处所描述实施例宽范围多种置换,此详细描述的目的仅仅是示例性的,而不是将其作为对本发明的范围的限制。因此可以包括在以下权利要求和等价物的范围和精神之内全部这样的修改将作为本发明的要求。
权利要求
1.一种用于控制从外部网络访问内部网的方法,包括从源接收安全凭证;确定源是在外部网络上;查询认证器服务器,以获得认证限制;检查试图用认证器服务器认证该安全凭证是否将超过认证限制。
2.如权利要求1所述的方法,进一步包括如果检查指示尝试将超过认证限制,则返回一个认证错误到源,而不尝试用认证器服务器认证安全凭证。
3.如权利要求1所述的方法,进一步包括如果检验指示尝试不超过认证限制,则尝试用认证器服务器认证安全凭证。
4.如权利要求1所述的方法,其中认证器服务器提供活动目录服务,且其中所述检查包括发出简便目录访问协议(LDAP)查询到认证器服务器,以获得认证限制。
5.如权利要求1所述的方法,进一步包括用与认证器服务器不同的登录服务器认证安全凭证。
6.一种用于在认证器周围包装认证服务的方法,包括在通常被认证器使用的标准通信端口上侦听;从源接收安全凭证;确定源是在外部网络上;查询认证器,以获得认证限制;检查是否尝试认证该安全凭证将超过认证限制;和用认证器简化源的认证。
7.如权利要求6所述的方法,其中简化认证包括将安全凭证发送到认证器进行认证。
8.如权利要求6所述方法,其中简化认证包括在源和认证器之间通过隧道传送数据。
9.如权利要求6所述的方法,进一步包括配置认证器以在非标准通信端口上进行侦听;和在通信端口和非标准通信端口之间重放数据。
10.如权利要求6所述的方法,进一步包括在认证服务和认证器之间加密通信。
11.一种包括具有用于控制从外部网络访问内部网的相关数据的设备可访问媒介的产品,其中,所述数据在被访问时导致设备执行从源接收安全凭证;确定源位于外部网络;查询认证器服务器,以获得认证限制;检查用认证器服务器尝试认证安全凭证是否将超过认证限制。
12.如权利要求11所述的产品,其中,设备可访问媒介进一步包括数据,该数据在被访问时导致设备执行如果检查指示尝试将超过认证限制,则返回一个认证错误到源,而不用认证器服务器尝试认证安全凭证。
13.如权利要求11所述的产品,其中设备可访问媒介进一步包括数据,该数据在被访问时导致设备执行如果检查指示尝试不会超过认证限制,则用认证器服务器尝试认证安全凭证。
14.一种包括具有用于在认证器周围包装认证服务的相关数据的设备可访问媒介的产品,其中数据在被访问时导致设备执行在通常被认证器使用的标准通信端口上进行侦听;从源接收安全凭证;确定源是在外部网络上;查询认证器,以获得认证限制;检查是否尝试认证安全凭证将超过认证限制;和用认证器简化源的认证。
15.如权利要求14所述的产品,其中用于简化认证的数据进一步包括数据,,该数据在被访问时导致设备执行将安全凭证发送到认证器进行认证。
16.如权利要求14所述的产品,其中用于简化认证的数据进一步包括数据,该数据在被访问时导致设备执行在源和认证器之间通过隧道传送数据。
17.在包括与第二网络通信耦合第一网络的网络环境中,一种系统,包括通信耦合到第一网络的外部设备;通信耦合到第二网络的内部认证系统;和通信耦合到第一网络和第二网络的认证前端,并且此认证前端被配置为从外部设备接收安全凭证,查询内部认证系统以获得该安全凭证的冻结冻结风险,并且如果不冒冻结的风险,就对比内部认证器认证安全凭证。
18.如权利要求17所述的系统,其中第一网络是因特网。
19.如权利要求17所述的系统,其中第一网络是内部网。
20.如权利要求17所述的系统,其中内部认证系统提供微软活动目录类型服务,以简化所述查询内部认证系统以获得冻结风险的步骤。
全文摘要
许可从外部网络如因特网访问如公司内部网的私有网络或面向外部的外部网应用是便利的。不幸的是,如果内部认证系统用于控制来自外部网络的访问,其可能受到如恶意用户故意尝试多次无效认证的攻击,最终导致受攻击的帐户被冻结。为防止其发生,可以采用认证前端、代理、包装等等在用内部认证系统尝试认证之前检查冻结状况。
文档编号H04L29/06GK1501264SQ0316482
公开日2004年6月2日 申请日期2003年9月12日 优先权日2002年11月13日
发明者S·L·格罗布曼, S L 格罗布曼 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1