WebST技术安全性分析.docx
《WebST技术安全性分析.docx》由会员分享,可在线阅读,更多相关《WebST技术安全性分析.docx(34页珍藏版)》请在冰点文库上搜索。
WebST技术安全性分析
WebST技术安全性分析
清华得实网络安全技术有限公司
WebST概述
WebST的安全机制
分布计算环境(DCE)的安全机制
1998年11月6日
WebST概述
1.Intranet的安全需求
随着信息高速公路的建设和发展,社会已经进入了信息社会Internet时代,这个时代的特征就是信息的交流和共享,对社会起着举足轻重的作用。
对各种机构和企业而言更是如此,计算机网络已经是现代社会命脉,起着根本性的作用。
这个时代的特征就是通过Intranet将社会与人和信息联系起来,加强社会与人之间的沟通和信息共享。
同时随着发展的需要和信息技术手段的提高,各种信息不仅为内部使用,也必须为有关的外部对象服务。
比如:
企业的运作和管理、市场和销售、技术开发和服务支持、以及企业形象宣传和产品广告等等,这些都可以通过网络进行。
概而言之,信息都可以通过网络获得,行为都可以通过网络操作实施。
要达到这些要求,传统的应用模式已难以适应,这就给Internet应用的发展带来了无限的商机。
虽然Internet/Intranet已经成为现代企业不可缺少的部分,但如果不解决网络安全问题,仍无法投入实际运行,在此对Intranet提出了的安全要求。
1.1.网络安全的基本需求
无论是Internet还是Intranet,都连接着大量的计算机、网络和应用程序。
不同的硬件和软件的组合通常会在以下方面影响网络:
●没有应用层的中央安全控制
●没有统一的资源定位和管理能力
●没有应用层的高可用性所需要的支持
●不支持升级
一般的应用没有任何安全性保护,完全依靠用户自己的管理安全(列如接受或拒绝)。
互连的网络系统如果没有统一的安全管理,可能导致访问失效,并受到严重的安全威胁。
归纳起来,计算机网络安全通信有四项基本需求:
●数据保密:
由于系统无法确认是否有用户截取网络上的数据,他们需要一种手段来对数据进行保密。
数据加密就是用来实现这一目标的。
●数据完整性:
系统需要一种方法来确认送到网络上的数据在传输过程中没有被篡改。
数据加密和校验用来实现这一目标。
●身份验证:
系统需要对网络上的用户进行验证,确保他确实是他所声称的那个人。
通过握手协议和数据加密用来进行向身份验证。
●授权:
系统需要能够控制谁能够访问网络上的信息,如何访问(例如他们是否可以修改信息还是只能读取)。
访问控制表用来实现这一目标。
1.2.WebST解决方案
为适应Internet技术的发展和满足企业网络的需要,清华得实推出WebST产品,这是一种企业级的安全解决方案,它使企业能为网络资源的使用提供安全保护和管理。
利用WebST技术,企业就能利用Internet的广泛的连接能力,方便地使用WWW以及其它应用方式提供的一切功能,并能阻止未经批准的访问和入侵。
WebST建立统一的被保护对象空间。
它保护的对象包括Web资源和其他网络资源(数据库应用和传统网络服务,例如TELNET和POP3)。
WebST的功能独立于已有的系统。
原先在网络和安全上的投资得到了保护。
1.2.1.端到端中央管理的安全
WebST管理方案基于安全的中央管理,通过访问控制和安全隧道,保护网络资源的传送。
数据由客户端通过网络安全地传送到应用服务器。
WebST的安全强度远远高于防火墙。
1.2.2.统一的资源命名
所有的网络资源,可以被当成一个统一的、被保护起来的名字空间,加以管理和安全控制。
在一个安全域中,装有WebST的系统上的所有服务(如TELNET或数据库服务器),都被WebST保护起来。
通过WebST的灵巧节点功能,所有WebSEAL服务器和第三方Web服务器也被保护起来。
灵巧节点允许WebST服务器和第三方Web服务器连接,形成了Web集群。
(第三方Web服务器是非WebST服务器,这些服务器由Netscape或Microsoft等厂商提供。
)在管理员看来,整个网络资源通过灵巧节点连接成一个统一的虚拟网络资源空间,可以把这个空间作为一个单一的实体来管理。
1.2.3.规模适应性
所有的WebST服务器可以灵活地连接成集群,能够适应不断变化的网络规模。
利用灵巧节点功能,可以把后端的Web服务器形成集群,以适应网络的规模并提供容错。
这样可以适应网络资源规模的不断增长,并防止Web服务器的单点失效。
1.2.4.高性能
WebST提供了容错性。
例如,前端复制的WebST服务器,用普通的URL(对用户是透明的)设置,可以使一个高负荷的Web站点的资源置于高性能的处理能力之下。
用户可以关注于网络服务器提供的信息和服务,而不是它们的物理位置。
1.2.5.对传统安全机制的集成
WebST可以集成传统的认证和授权机制。
WebST的组成
WebST由WebST安全服务器、WebST管理控制台、WebST管理服务器、WebST安全管理器(WebSEAL服务器、NetSEAL服务器)、公钥管理服务(PKMS)、NetSEAT客户软件、目录服务代理(DSB)和WebST授权服务器组成。
WebSEAL和NetSEAL是应用代理级服务器,是在WebST安全服务器进行身份认证之后,实施访问控制。
PKMS是WebSEAL的安全代理,是由SSL安全通道到WebST安全通道的安全网关。
在一个WebST安全域内的所有WebSEAL和NetSEAL都可以由管理控制台统一管理。
WebST服务器部分可以运行在目前大部分UNIX以及NT平台,NetSEAT客户端软件能运行在Windows95/98和NT平台。
1.3.WebST安全服务器
安全服务器是对应用服务器和客户进行身份认证,集中的安全用户管理,访问控制管理,安全的审计和记录等等,是整个安全管理和控制的核心。
WebST安全服务器包含安全环境所需的所有基本服务,安全服务器为安全域中的所有元素提供中央认证服务。
安全服务器的机制在DCE安全机制中有详细描述。
WebST安全服务器包含安全环境所需的所有基本服务,安全服务器为安全域中的所有元素提供中央认证服务。
图1:
WebST组件配置
WebST提供一个中央注册数据库,它包含被保护对象空间中所有合法用户和组的登录帐号。
注册数据库通过复制,防止单点失败。
1.4.WebST管理控制台
WebST提供图形界面管理工具,用来对WebST的用户帐号、访问控制策略、服务器对象等进行管理。
主要有用户帐号管理器、ACL管理器、对象空间管理和NetSEAL/WebSEAL服务器管理器等部分。
管理控制台采用图形用户界面,基于Java-DCE开发,独立于硬件和操作系统平台,使用拖拉式操作,有很好的人机界面,同时具有很强的安全性。
可以管理WebST安全域内的所有安全对象。
从管理控制台,可以管理安全服务器的注册数据库、主授权数据库和所有的WebST服务器。
管理控制台可以增加和删除用户或组,也可以对资源设置访问控制列表(AccessControlList)。
它利用WebSTNetSEAT客户端,经过安全通道执行管理任务。
根据本地的级别可以赋予相应的管理责任。
列如,一个特殊的安全管理员可以管理帐号和安全策略,但仅局限在安全域中指定的资源部分。
1.5.WebST管理服务器
管理服务器维护着安全域的主授权数据库(ACL)。
它负责安全域中所有授权的备份和更新。
管理服务器也维护安全域中其它WebST服务器的位置信息。
1.6.WebST安全管理器
安全管理器根据授权数据库(ACL)里的信息实施访问控制策略。
安全管理器包括一个适用于TCP/IP粗粒度访问控制的组件NetSEAL,和一个适用于HTTP细粒度访问控制的组件WebSEAL。
1.6.1.NetSEAL
安全管理器的NetSEAL组件截获所有进入机器的TCP/IP通信,并根据目的端口和客户的身份实施访问控制。
NetSEAL有一个内置的访问控制管理器,它控制用户和服务器的某一端口的通信(例如23号端口,TELNET)。
NetSEAL组件也接受和授权来自NetSEAT客户端的TCP/IP通信。
NetSEAL服务器包含一个内置的粗粒度访问控制管理器,来控制用户是否能连接到指定的服务器上的某一个端口(如23端口,TELNET)。
通过安全隧道,NetSEAL服务器认证并接受所有来自NetSEAT客户端的通信。
NetSEAL服务器可以把所有的网络服务集成到WebST的安全服务中。
NetSEAL为所有网络通信提供了一个安全隧道。
用户经过认证的身份和原始协议请求,通过GSSAPI建立的安全隧道传送。
NetSEAL安全隧道能够和NetSEAT客户端进行通信。
NetSEAT授权服务包括一个API,API能被任何应用程序调用,并提供应用程序所需的细粒度访问控制能力。
注意:
使用授权API不需要经过安全隧道。
NetSEAL服务器将任何网络应用服务器集成到WebST安全范围之内。
NetSEAL和WebSEAL一样,提供相同级别的数据安全性和完整性。
NetSEAL起到了分布式防火墙的功能。
1.6.2.WebSEAL
安全管理器的WebSEAL组件,是一个高性能的、多线程的认证服务器,同时也是一个Web空间的管理服务器,它接受HTTP、HTTPS和NetSEAT的服务请求。
WebSEAL支持标准的功能,例如动态CGI程序,server-sideincludes和访问信息日志。
WebSEAL提供丰富的访问控制功能来保护文档和程序。
WebSEAL服务器也可以作为其它被连接Web服务器的PROXY代理服务器。
WebST的灵巧节点技术可以连接其它的WEB服务器的文件系统,从而形成一个单一的WEB空间。
WebSEAL作为HTTP代理时,来自客户端的Web请求,无论来NetSEAT授权用户还是非授权用户(非NetSEAT客户,也就是原HTTP用户,对WebSEAL服务器来说是“非授权用户”),首先由WebSEAL服务器处理。
WebSEAL服务器根据对象的ACL检查用户的访问权限。
,如果用户具有访问权限,WebSEAL服务器将HTTP请求递交给第三方Web服务器,由它来处理这个请求并将结果返回给WebSEAL服务器,然后WebSEAL服务器将这个结果按安全RPC方式返回给NetSEAT用户,或按HTTP方式返回给非NetSEAT用户。
WebSEAL对WEB资源提供单点登录能力。
WebSEAL验证用户的身份。
WebSEAL对HTTP用户进行基本的验证。
WebSEAL可以把用户身份作为CGI变量传送。
1.7.公钥管理服务(PKMS)
公钥管理服务集成了WebST的安全机制和SSL安全通信。
PKMS使得WebST支持浏览器采用安全套接层协议(SSL、HTTPS)进行通信。
使用PKMS,用户不用安装NetSEAT客户软件就可以和WebST服务器进行安全的通信。
1.8.WebSTNetSEAT客户软件
NetSEAT是一个很小的、轻量级的网络服务组件,安装在客户机上,是客户端和WebST服务器之间通信的代理。
NetSEAT使客户端与WebST安全机制无缝集成,也提供客户端的资源管理功能。
用户能够很方便的从Intranet或Internet下载NetSEAT,因此它能够减少软件的分发和管理费用。
NetSEAT为DCE应用程序提供了安全的RPC和目录服务。
NetSEAT只需要做简单的安装和配置。
NetSEAT使DCE领先的安全技术变得很容易使用。
NetSEAT提供了多CELL的支持能力,允许用户同时登录几个不同的CELL。
NetSEAT截获所有客户机的TCP/IP通信,并且通过安全隧道把这些信息送往NetSEAL服务器。
它也截获所有的HTTP请求,并把这些请求发送到WebSEAL服务器。
它把逻辑URLs透明地影射到物理WebSEAL服务器,允许WEB资源被重置或复制而不影响终端用户。
注意:
客户端用户没有安装NetSEAT,也能够直接运用SSL进行通信,这是WebST公钥管理服务器(PKMS)所支持的。
1.9.目录服务代理(DSB)
为了使NetSEAT变得更小,传统的CDS服务已被移出了客户机。
NetSEAT客户端使用DSB作为目录服务的网关。
DSB安装在服务器上,被很多客户机共享。
多个DSB可以安装在一个CELL上,提供极高的性能和负载平衡能力。
1.10.WebST授权服务器
授权服务器允许客户应用程序调用授权API,来使用WebST的授权服务,实现应用程序级的细粒度授权控制。
几个授权服务器可以安装到同一个安全域上,提供极高的性能和负载平衡能力。
1.11.WebST服务器配置
这部分描述安装完毕并且配置好的WebST系统的各组成部分,所扮演的角色和相互之间的关系。
管理员使用WebST管理控制台:
●修改安全服务器注册数据库(或帐号)
●修改主授权(ACL)数据库
●管理WebST服务器和服务器程序
组件之间的独立性:
●在任何安全域中,只能有一个管理服务器和它的主授权(ACL)数据库的实例存在
●管理服务器把它的备份ACL数据库复制到安全域中的其它WebST服务器上
●在每一个WebST安全服务器上,有一个安全管理器,包括WebSEAL和NetSEAL
●每个安全管理器根据备份授权(ACL)数据库的信息实施安全访问控制策略
图2:
WebST服务器配置和管理配置
1.12.支持多种应用模式
WebST对企业网的所有可能的访问路径提供了安全保障。
传统的客户端软件被NetSEAT和NetSEAL保护起来。
浏览器则被WebSEAL保护起来。
根据一个相同的、被复制的访问策略,所有可能的访问路径都被保护起来,形成一个一致的、易管理的安全网络资源空间。
图3:
WebST多应用模式结构
WebST安全模型
WebST在用户和信息之间实施访问控制。
对用户而言,WebST技术无缝地将安全策略实施到被保护的目标空间上。
WebST能够基于商业策略进行访问控制,而不受网络拓扑的限制。
用户能够访问或不能访问,完全根据他们是谁和他们要干什么,而与他们的物理位置无关。
WebST组件是基于客户机/服务器模式的应用程序。
通过客户机/服务器之间的验证和访问权限的设置,在不影响普通访问的情况下,使敏感的内部资源变得更加安全。
经过认证的用户不论是从安全域内访问,还是从远程的INTERNET进行访问,信息都被安全地保护起来。
1.13.WebST安全工作原理
由于所有通讯都被WebST保护起来,所以不必担心非授权访问和攻击,WebST安全软件建立了安全域。
安全域的管理员需要执行一些任务,以完成对被保护资源的安全访问。
WebST安全模式遵循以下的格式:
1、谁能访问被保护的对象资源?
2、哪些对象需要保护?
3、哪些规则在保护那些对象?
4、用户是如何访问一个对象的?
1.14.谁能访问被保护的对象?
管理员维护着能够加入WebST安全域的用户(元素)和组的列表。
用户和组的信息存在安全服务器数据库中(注册表)。
用户帐号一旦建立,这个用户就可以被授权加入安全域。
1、管理员建立用户和组的帐号,并通过管理控制台定义合适的凭证。
图4:
定义谁能加入安全域
1.15.通过什么规则保护什么样的对象?
WebST能够保护下列类型的资源对象:
●Web对象,象HTML文件、CGI程序和动态HTML等。
●通过NetSEAL管理的网络服务(象TELNET、POP3和其它TCP应用)
●管理功能。
安全对象被WebST访问控制机构所保护。
通过定义对象控制列表(ACL)你可以赋给对象以特殊的访问权限。
定义一个对象ACL涉及:
●谁能够使用这个对象。
●在对象上能进行什么操作。
例如,对某一个对象,所有的组都有浏览的权限,但只有一个组具有修改的权限。
WebST使用一种全局的访问授权控制机制(稀疏或继承ACL模式),对每个文件和目录设置访问权限。
2、管理员使用管理控制台定义名字空间的安全策略,把访问控制列表(ACL)实施到被保护的对象上。
图4:
给保护目标加ACL
1.16.用户怎样访问对象
在用户访问被保护的对象或应用程序时,WebST在处理请求之前要进行相应的认证和授权检查。
WebST既支持公钥(SSL/X.509)认证,也支持私用密钥(Kerberos/DCE)认证。
3、客户端通过安全服务器对它的认证来建立身份的凭据。
在这个认证的基础上,安全服务器返回给用户认证凭据,或安全票据。
凭据定义了用户属于的组和组织及用户的权限。
用户需要向应用服务器提交认证凭据。
这个凭据用来向服务器证明用户是合法的。
4、在客户端用户和WebST(WebSEAL和NetSEAL)之间提供安全加密信道。
5、对每一个访问请求,授权检查发生在认证凭据和复制的访问策略数据库不相符合时。
访问控制列表(ACL)在用户的凭据上具有强制性。
授权包含在用户的票据上,这个票据和赋给对象的权限(ACL)做比较。
6、如果这些权限设置和用户的票据相匹配,WebST把用户的身份传给应用服务器,从而完成数据传输。
图6:
WebST认证和授权过程
综述
清华得实WebST给企业的用户和计算资源提供了一个安全环境,是基于分布计算环境(DCE)的安全平台,它提供了通过加密实现的数据保密和安全,以保证只有授权用户或用户组才能通过访问控制表访问特定的资源。
WebST还可以将一个企业网扩展到防火墙以外,远程用户可以通过Internet对企业内部资源进行安全访问。
另外WebST用来管理被所有用户访问的公共资源。
WebST是为企业网络提供统一管理的安全平台,其主要机制是身份认证、授权访问控制、数据保密和数据完整性以及集中的安全管理和分布的时间记录和审计。
使原不具有安全性能的应用系统也能具有安全控制的能力,WebST为企业网络的提供了安全的解决方案。
WebST的安全机制
2.Internet和Intranet环境及其安全模型
Internet是全球范围的计算机系统和网络的集合,企业Intranet与其很不相同,因此他们就有不同的安全模型。
Internet是完全无组织的环境,没有集中控制的机构。
Internet中的实体通常是互相合作的,但是可能是由于技术上的原因或者是有人恶意而被破坏,用户并不能确信从Internet上获得的信息是可信的。
Internet上的用户需要一种方法来临时地与其他的用户建立一种安全的互相信任的关系,但不要求在此之前相互了解。
Internet的安全模型必须允许用户来决定是否信任对方,用户要有确定信任程度的工具,一旦对Internet上另外一个用户的信任程度作出判断,他们就需要进行安全通信的相关工具。
一个企业的内部网络比起Internet来是一个控制严格、结构严谨的环境。
一个企业可以有在整个企业中强制实行集中控制和安全措施。
企业中的用户对于企业来说都是已知的,并且可以对个人和用户组定义其操作权限。
在内部网络和Internet用户之间存在一个清晰的分界线。
Intranet安全模型需要保证一旦某个用户成为企业的成员,他就可以与所有企业成员进行安全通信。
它也必须保证非企业人员不能进入企业网络。
这个模型必须提供在整个企业范围内强制实施这些措施的方法。
Internet和Intranet的安全模型都必须支持上面列出的通信安全需求。
Internet安全模型还必须提供给最终用户临时建立新的相互信任关系的手段。
但是这一建立新的相互信任关系的能力,需要用户自己负责来判断。
并且一旦被信任要负责确定这种信任关系的范围。
实际上,Internet上每一个安全用户必须成为自己的安全管理员。
在企业内部网络中,相互信任关系是根据企业的政策措施来确定的。
安全模型必须采用一种在整个企业内部网络中,透明的并且易于使用的方式来贯彻这些政策措施。
在企业内部网络中,安全对于用户来说是既成的规定,并且在企业进行集中管理下被动地执行。
而在Internet中,最终用户需要积极主动地参与管理自己的安全策略。
WebST安全机制
WebST的基本特征是为企业网络提供统一的安全管理平台,作为企业网络的授权和访问控制中心,实施由用户到应用的安全管理。
WebST采用集中式用户登记进行用户身份验证,对已认证的用户,根据其访问权限对应用服务进行访问控制管理。
用户和认证服务器以及WebSEAL和NetSEAL之间都采用安全通道通讯。
在WebST接受用户的访问服务请求时,进行访问授权的检查,确认后将用户身份和请求传递给应用服务器。
在企业网中所有的访问控制数据库采用集中式管理和统一的策略。
在和应用服务器的连接中还能提高应用的性能和可靠性,并加强了网络可扩充性。
WebST建立了两个安全数据库。
一是用户数据库,是由WebST安全服务器维护的集中式数据库,用于保存用户标识、密码、以及用户组,这个数据库用于对用户和服务器进行身份认证;另一个是访问控制数据库,由WebSEAL或NetSEAL服务器维护的分布式数据库,用于对应用对象进行访问控制,Web应用由WebSEAL进行安全管理,其它应用由NetSEAL进行管理。
分布的访问控制数据库可以集中地统一管理。
同时WebSEAL和NetSEAL服务器进行对访问活动进行监控和记录,生成事件审计和记录的数据库,这也是可集中管理的分布数据;WebST安全服务器还负责分发和管理相互安全通讯的会话密钥。
WebST产品系列是基于客户机和服务器模型的,WebST的安全机制主要包括:
●授权(访问控制)
用户的合法身份建立在使用口令和访问WebST服务器基础之上。
一旦确认了用户的身份,WebST服务器就可以允许这个用户访问网络资源(包括数据和应用)。
●认证
即是用户的身份认证。
用户登录后,安全服务器颁发身份证明给用户,然后用户使用身份证明进行服务请求,然后根据其身份进行访问控制。
认证方法可以分别使用基于私钥和公钥系统的策略。
●数据完整性和隐秘性
在网上传输的数据都通过加密进行保护,以防止非授权用户的非法窃取和篡改。
WebST提供加密算法借口,可以和各种算法结合。
●审计和记录
因为用户的身份是众所周知的,他们的活动可被记录下来用于以后的分析。
日志信息也可安全地远程存取。
●安全配置和管理
利用集中管理的分布式安全策略。
用户帐号信息、资源访问控制和用于数据隐秘性和完整性的加密密钥的管理,都由WebST服务器集中控制和管理,这些服务可安全地远程操作完成。
WebST的安全机制是基于分布计算环境(DCE)技术,特别是身份认证、授权控制和安全通讯及审计记录方面。
同时,在DCE基础上又有新的扩展,比如,对使用公钥系统的SSL的支持、与具体应用的结合。
下面就这些技术的机制作一说明。
身份认证服务
身份认证是WebST的重要机制之一。
在安全的网络通信中,涉及的通信各方必须通过某种形式的身份验证机制来证明他们的身份,验证用户的身份与所宣称的是否一致。
在WebST机制下,用户使用基于Kerberos审核协议的DCE身份验证协议进行身份验证。
WebST的PKMS用来对采用其他网络安全形式(例如SSL等公开密钥加密技术)的Internet用户进行身份验证。
即WebST的身份认证可以使用基于DCE和Kerberos的认证技术,也可以使用基于公钥系统的SSL。
2.1.基于DCE/Kerberos的认证
基于DCE/Kerberos的身份认证是通过用户在安全服务器上登录,获得身份的证明,在这里称为“标签”(Ticket),当然在登录前该用户必须已经注册,同时在客户端必须运行DCE的客户端软件。
WebST的客户端软件称为NetSEAT,捆绑在WebST系列产品中。
用户在完成登录,取得标签后,再与NetSEAL服务器进行相互的身份认证,完成身份认证后才进