您好,欢迎访问三七文档
分布式安全西北工业大学计算机学院周兴社王涛主要内容概述安全通道访问控制安全管理2019/10/12分布式系统安全安全威胁安全性与可靠性密切相关一个可靠的系统是一个我们可以信赖其服务的系统。一个可以信任的计算机系统应该具有:一般意义的可靠性机密性:系统只将信息向授权用户公开完整性:系统资源的变更只能以授权的方式进行2019/10/1分布式系统安全3安全威胁我们必须首先搞清有哪些外来的威胁然后才能根据不同的威胁类别选择相应的对策安全威胁一般有四种:窃听:如包解惑、非法侵入中断:如拒绝服务攻击(DOS)修改:未经授权修改数据或篡改服务伪造:产生通常不存在的附加数据或活动2019/10/1分布式系统安全4安全策略与机制建立一个安全可靠的系统前提首先需要一个安全策略然后在安全策略基础上考虑其安全机制安全策略是指系统安全需求的描述。安全策略实施的机制称为安全机制2019/10/1分布式系统安全5安全策略与机制几种重要的安全机制:加密身份验证授权审计Globus安全体系结构2019/10/1分布式系统安全6安全性设计控制的焦点数据的保护操作的控制用户层面的控制2019/10/1分布式系统安全7安全性设计安全机制的分层一般把通用服务与通信服务分离开来,通用服务构建在高层协议上,通信服务则构建在底层协议上对应地,我们把信任和安全区分开来安全机制放在哪一层,取决于客户对特定层中服务的信任度分布式系统中,安全机制一般放在中间件层。2019/10/1分布式系统安全8安全性设计安全机制的分布性一般根据所需的安全性,将服务分布在不同的机器上,使得安全服务于其他类型的服务分开2019/10/1分布式系统安全9安全性设计安全性设计的简单性背景如果一个系统设计者可以使用一些易于理解且可靠的的简单机制,那么系统的安全性设计工作就会较容易实现引入安全会使系统变的更加复杂,因此,用于实现安全协议的基本机制要相对简单且易于理解意义有助于最终用户对应用程序的信任设计者易于确信是否存在安全漏洞2019/10/1分布式系统安全10加密2019/10/1分布式系统安全11真正意义上的密码要追溯到古欧洲的斯巴达,为了保密,斯巴达人采用一种独特的方式书写军事情报。他们将一根皮带螺旋式地绕在一根圆木棍上,然后把情报书写在皮带上。当皮带被打开时,出现在带子上的只是一些毫不相干的断断续续的字母。要重新得到秘密情报,只要将皮带卷在一根直径与原来一样的木棍上就行了。加密最基本的安全措施加密和解密是通过以密钥为参数的加密算法实现,发送的消息的原始格式叫明文,已加密的格式叫密文三种针对密文的攻击:窃听修改消息插入消息2019/10/1分布式系统安全12加密对加密系统的分类是基于加密解密密钥是否相同加密和解密密钥相同的系统称为对称加密系统或者共享密钥系统而非对称加密系统中,加密和解密使用的密钥是不同的,但两个密钥一起构成了唯一的一对非对称加密系统中,一个密钥是保密的,称为私钥,另一个是公开的称为公钥。又称公钥系统2019/10/1分布式系统安全13主要内容概述安全通道访问控制安全管理2019/10/114分布式系统安全安全通道通信的保护问题可以认为是在通信各方之间建立一个安全通道的问题。安全通道保护发送方和接收方免受对消息的窃听、修改和伪造的攻击实现安全通信的两个主要方面通信双方需要验证身份确保消息的完整性和机密性2019/10/1分布式系统安全15身份认证身份认证和消息完整性相互之间不能脱离要确保进行身份认证后交换数据的完整性,常见的方法是依靠会话密钥使用密钥加密会话密钥会话密钥是一个共享密钥,常用于为完整性和可能的机密性而对消息进行加密2019/10/1分布式系统安全16基于共享密钥的身份验证(1)质询-响应协议:一方向另一方质询一个响应,只有对方知道共享密钥时才能给予正确的响应2019/10/1分布式系统安全17基于共享密钥的身份验证(2)基于共享密钥的身份验证,用三个消息代替五个2019/10/1分布式系统安全18基于共享密钥的身份验证(3)反射攻击2019/10/1分布式系统安全19原因:协议的双方在两个不同方向都使用相同的质询解决:协议的双方永远使用不同的质询使用密钥发布中心的身份验证(1)共享密钥的身份验证存在可扩展性问题N台主机,需要N*(N-1)/2个密钥使用KDC(keydistributioncenter)只需要管理N个密钥KDC与每台主机共享一个密钥;向通信的两主机分发一个密钥通信2019/10/1分布式系统安全20使用密钥发布中心的身份验证(2)使用票据(ticket)让Alice建立与Bob的通道2019/10/1分布式系统安全21使用公钥加密的身份验证2019/10/1分布式系统安全22消息的完整性和机密性完整性:保护消息免受修改数字签名会话密钥机密性:确保窃听者不能截获和读取消息消息加密采用共享密钥进行加密使用接收者的公钥加密2019/10/1分布式系统安全23数字签名如果消息签名检验为真,发送者不能否认消息签名这一事实消息与其签名的唯一关联防止了对消息进行修改而未发现的可能使用公钥加密对消息进行数字签名2019/10/1分布式系统安全24数字签名采用公钥加密实现数字签名存在的问题:Alice可以声称她的私钥在消息发送前被盗了Alice可能会改变她的私钥使用私钥加密整个消息开销可能很大使用消息摘要解决,消息摘要是固定长度的位串h=H(m),m是任意长度的消息,H是加密散列函数2019/10/1分布式系统安全25会话密钥在身份验证完成后,通信双方一般使用唯一的共享会话密钥以实现机密性,通信完毕后丢弃也可以使用身份验证密钥但使用会话密钥具有以下优点:避免经常使用一个密钥确保通信双方免受重发攻击会话密钥的成本低:廉价且临时性强2019/10/1分布式系统安全26主要内容概述安全通道访问控制安全管理2019/10/127分布式系统安全访问控制在开放型分布式系统中,尽管我们允许信息在系统结点间自由流动,但必须对信息的访问权力施加控制。理论上,访问控制和授权是两个概念。访问控制一般在被访问的客体一方进行,用来检验访问的合法性;而授权指得是主体一方被赋予的权力,用来代表主体的合法权限。然而,这两个术语又是密切相关的,在没有二义性的场合下可以交替使用。2019/10/1分布式系统安全28主体访问管理器客体访问请求访问授权访问控制建立安全通道后,客户就可以向服务器发送执行的请求,该请求可能会涉及到访问控制访问控制矩阵保护域防火墙保护移动代码2019/10/1分布式系统安全29访问控制矩阵访问控制矩阵(ACM:AccessControlMatrix)。在一个ACM中,每一行代表一个主体z,每一列代表一个客体k,而矩阵元素ACM[z,k]列举出z对k的合法操作。ACM的实现直截了当,而且效率很高。但如果一个系统需要管理成千上万的主体(客户)以及数百万计的客体(资源),ACM就可能是一个非常稀疏的矩阵,绝大多数矩阵单元都被浪费了。2019/10/1分布式系统安全30主体\客体文件1文件2文件3文件4用户1拥有读/写执行拥有用户2--读拥有读/写用户3复制/读拥有----访问控制表与权力表可以把ACM演化成一维表的形式。毫无疑问,这种演化应该有两种不同的方案。访问控制表(ACL:AccessControlList)在这种方案中,每一个客体都必须维护一张合法主体的访问权限表,即一个ACL相当于ACM中的一列,但其中的空项都已被删除。权力表(CL:CapabilityList)以ACM的一行为单位,代表一个主体对客体的访问权限。2019/10/1分布式系统安全31如果CL中有K,则授权主体Z请求访问客体K如果ACL[K]中有Z,则授权ACLKK(Z,K)主体Z请求访问客体KCL(Z,K,CL)(a)基于ACL(b)基于CL保护域保护域是一组(对象,访问权限)对,只要一个主体对一个对象执行一个操作,访问监控程序会找到相关联的保护域,检查是否允许执行该请求构造用户组:管理简单,支持很大的组;查找分布式组成员数据代价高使用访问监控程序:每个主体携带一个证书(通过数字签名保护),列出所属的组。访问对象时,由访问监控程序检查证书使用角色实现保护域:角色与一定的职能相联系2019/10/1分布式系统安全32防火墙实际上,所发生的对分布式系统任何部分的外部访问都通过一种称为防火墙的特殊类型的访问监控程序来控制。防火墙实现了将分布式系统的任意部分与外界的分离两种不同类型的防火墙数据包过滤网关:基于数据包报头包含的原地址和目的地址制定是否传送该包的决定应用层网关:检查入站或出站的消息内容2019/10/1分布式系统安全33保护移动代码保护代理:防止恶意主机盗窃或修改代理程序所带的信息攻击方式:盗窃或修改代理程序所带的信息恶意破坏代理程序篡改代理程序以便在其返回时进行攻击或盗窃信息至少可以检测出代理程序被修改只读状态只追加状态有选择地揭示状态:数据只允许特定的服务器访问2019/10/1分布式系统安全34保护移动代码保护目标:保护主机防止恶意代理程序的破坏沙箱运动场通过身份验证2019/10/1分布式系统安全35沙箱沙箱是一种技术,通过该技术下载的程序的每条指令都能够被完全控制访问一些指令、某些寄存器或内存空间将被禁止通过沙箱模型,用户可以有效地阻止那些具有潜在危险性的活动,如对本地硬盘读写,创建新进程,连接动态链接库等。2019/10/1分布式系统安全36运动场运动场:为运行移动代码专门保留指定的机器,可使用这些机器的本地资源;但不能访问其他机器的资源2019/10/1分布式系统安全37通过身份验证要求每个下载的程序能通过身份验证,然后基于该程序的来源执行制定的安全策略2019/10/1分布式系统安全38主要内容概述安全通道访问控制安全管理2019/10/139分布式系统安全安全管理密钥管理密钥建立密钥分发证书的生存期授权管理权能和属性证书委派2019/10/1分布式系统安全40密钥建立Diffie-Hellman建立共享密钥的原理:首先,Alice和Bob双方约定2个大整数n和g,其中1gn,这两个整数无需保密,然后,执行下面的过程:Alice随机选择一个大整数x(保密),并计算X=gxmodnBob随机选择一个大整数y(保密),并计算Y=gymodnAlice把X发送给B,B把Y发送给ALICEAlice计算K=Yxmodn=gxymodnBob计算K=Xymodn=gxymodnK即是共享的密钥。监听者在网络上只能监听到X和Y,但无法通过X,Y计算出x和y,因此,无法计算出K2019/10/1分布式系统安全41密钥分发(1)共享密钥分发必须有提供身份验证和机密性的安全通道带外分发:电话、邮递2019/10/1分布式系统安全42密钥分发(2)公钥分发私钥发送使用提供身份验证和机密性的安全通道公钥发送使用提供身份验证的安全通道:接收者能够确信该密钥肯定可以与声明的一个私钥配对公钥证书:(公钥,公钥关联的实体(用户等)),由认证机构签发,使用该机构的私钥进行数字签名2019/10/1分布式系统安全43证书的生存期终生证书吊销证书CLR(certificaterevocationlist)证书吊销表限制证书的生存期缩短证书的生存期为零,客户需要一直联系证书颁发机构以检验公钥的有效性2019/10/1分布式系统安全44权能和属性证书权能是对于指定资源的一种不可伪造的数据结构,它确切指定它的拥有者关于该资源的访问权限。属性证书是对分布式系统中使用的权能的一种概括。属性证书由属性证书颁发机构来分发。2019/10/1分布式系统安全45委派委派:将某些访问权限从一个进程传递给另
本文标题:分布式安全
链接地址:https://www.777doc.com/doc-1254259 .html