翻译:中国科学技术大学信息安全专业老师 KAS注册,TGS必须接收访问控制信息,所有需要的密钥必须由安全管理员存放在适当的 位置。 Kerberos具有集中式安全系统所有的优点。单个的安全策略通过有限数量的安全服务 器来实施。因此,检査系统安装时是否遵守了安全策略,以及在需要的时候作某些变更还是 相当容易的 为了在 Kerberos领域之间允许相互访问,你可以建立一个领域的层次。这导致在认证 处理过程中增加了工作强度,因为不同的会话密钥要沿着认证服务器的连接链成对的交换。 小结 为了对 Kerberos有一个全面的评估,你就必须超出分析认证协议和理解密码算法强度。 你也必须考察它的非密码的( non-cryptographic)安全特征。下列观点是一些这样调查研究 部分 消息的及时( timeliness)由时间标记( time stamp)来检查。因此,在整个系统 中要求合理的时钟同步,而且时钟自身必须被保护,以便防止攻击。安全时钟同步在本质 上也要求认证。 时间标记检查允许一些时钟有偏差。典型的采用五分钟的窗口是相当大的,且可能 比较容易遭受重放攻击 服务器必须在线,在登录时KAS需要在线;请求通行票时也需要TGS。如在上面所 说明的,TGS这种可使用性的要求可能被缓和。 会话密钥(用于对称密码( cipher)由 Kerberos服务器(认证服务器和通行票授 予服务器)生成。当这个会话密钥在主体之间的后继通信中使用时,对服务器的信任必须 包含信任:服务器将不会滥用他们的能力去窃听。 · Kerberos没有解决特权(通行票)的授予。 口令猜测和口令欺骗攻击是可能的 ·密钥和通行票保存在客户的机器上。因此,你依赖于这个结点上的保护机制去维护 Kerberos的安全性。只要 Kerberos用户工作在简单终端上,这不是什么大不了的问题。 旦用户在PC机或者在多用户工作站上运行 Kerberos,那么情况就发生了改变。 区别 Kerberos协议自身的安全性和 Kerberos实现的安全性是非常重要的。例如, Kerberos版本4的一个实现据说使用了一个弱随机数产生器作为密钥生成器。因此,采用 穷举法可以很容易地找到密钥 10.2.2 DSSA/SPX SPX是数字设备公司( Digital Equipment Corporation)开发的分布式系统安全体系结构 (DSSA)的一个部分。DSSA是一个工作站网络的安全体系结构,由认证和其他的安全设 施组成615460。每一个结点都执行它自己的安全策略,用户必须信任他们登录的每个结点 的操作系统。这样,用户授予特权给正在使用的结点的断言证明是正确的。 DSSA/SPX使得 “分布式认证安全服务”已经被纳为RFC1507 在SPX的认证中包括证书( credential),证书包含主体的名字和长期使用的私有密钥。 证书把主体的名字同他的公开密钥和认证标记( authentication token)绑定在一起。在SPX 中证书代表一个用户。证书可以被存储在一个服务器上,初始化时要求用户的口令。作为选 择,证书也可以存储在用户携带的智能卡( smart cards)上。在一个会话期间,最初的用户 注册和认证是通过不同的服务器来执行的 证书管理机构(CA):提供公开密钥证书( certificate),可以脱机处理。仅在发布有 效证书时,CA必须是可信任的 证书分发中心(CDC):存储由CA发行的证书。CDC的功能可以由命名服务提供 第6页共16页 创建时间:2002/223152100
翻译:中国科学技术大学信息安全专业老师 第 6 页 共 16 页 创建时间:2002/12/23 15:21:00 KAS 注册,TGS 必须接收访问控制信息,所有需要的密钥必须由安全管理员存放在适当的 位置。Kerberos 具有集中式安全系统所有的优点。单个的安全策略通过有限数量的安全服务 器来实施。因此,检查系统安装时是否遵守了安全策略,以及在需要的时候作某些变更还是 相当容易的。 为了在 Kerberos 领域之间允许相互访问,你可以建立一个领域的层次。这导致在认证 处理过程中增加了工作强度,因为不同的会话密钥要沿着认证服务器的连接链成对的交换。 小结 为了对 Kerberos 有一个全面的评估,你就必须超出分析认证协议和理解密码算法强度。 你也必须考察它的非密码的(non-cryptographic)安全特征。下列观点是一些这样调查研究 部分。 ·消息的及时(timeliness)由时间标记(time stamp)来检查。因此,在整个系统 中要求合理的时钟同步,而且时钟自身必须被保护,以便防止攻击。安全时钟同步在本质 上也要求认证。 ·时间标记检查允许一些时钟有偏差。典型的采用五分钟的窗口是相当大的,且可能 比较容易遭受重放攻击。 ·服务器必须在线,在登录时 KAS 需要在线;请求通行票时也需要 TGS。如在上面所 说明的,TGS 这种可使用性的要求可能被缓和。 ·会话密钥(用于对称密码(cipher))由 Kerberos 服务器(认证服务器和通行票授 予服务器)生成。当这个会话密钥在主体之间的后继通信中使用时,对服务器的信任必须 包含信任:服务器将不会滥用他们的能力去窃听。 ·Kerberos 没有解决特权(通行票)的授予。 ·口令猜测和口令欺骗攻击是可能的。 ·密钥和通行票保存在客户的机器上。因此,你依赖于这个结点上的保护机制去维护 Kerberos 的安全性。只要 Kerberos 用户工作在简单终端上,这不是什么大不了的问题。一 旦用户在 PC 机或者在多用户工作站上运行 Kerberos,那么情况就发生了改变。 ·区别 Kerberos 协议自身的安全性和 Kerberos 实现的安全性是非常重要的。例如, Kerberos 版本 4 的一个实现据说使用了一个弱随机数产生器作为密钥生成器。因此,采用 穷举法可以很容易地找到密钥。 10.2.2 DSSA/SPX SPX 是数字设备公司(Digital Equipment Corporation)开发的分布式系统安全体系结构 (DSSA)的一个部分。DSSA 是一个工作站网络的安全体系结构,由认证和其他的安全设 施组成[116,151,160]。每一个结点都执行它自己的安全策略,用户必须信任他们登录的每个结点 的操作系统。这样,用户授予特权给正在使用的结点的断言证明是正确的。DSSA/SPX 使得 “分布式认证安全服务”已经被采纳为 RFC 1507。 在 SPX 的认证中包括证书(credential),证书包含主体的名字和长期使用的私有密钥。 证书把主体的名字同他的公开密钥和认证标记(authentication token)绑定在一起。在 SPX 中证书代表一个用户。证书可以被存储在一个服务器上,初始化时要求用户的口令。作为选 择,证书也可以存储在用户携带的智能卡(smart cards)上。在一个会话期间,最初的用户 注册和认证是通过不同的服务器来执行的。 ·证书管理机构(CA):提供公开密钥证书(certificate),可以脱机处理。仅在发布有 效证书时,CA 必须是可信任的。 ·证书分发中心(CDC):存储由 CA 发行的证书。CDC 的功能可以由命名服务提供
翻译:中国科学技术大学信息安全专业老师 CDC在认证期间必须是联机的 CDC不能损害认证协议的安全。如果它分发了无效的证书,协议运行将报错后终止。在 这种考虑上,CDC不一定是可信任的,但是对于认证服务的可用性来说,它却是至关重要的。 在实际实现时,CDC可以是分布式的 证书的撤销可以通过维护一张证书撤销表实现,或者直接从CDC数据库中删除证书。在 这种情况下,必须相信CDC正确地删除了证书。如果没有要求CDC进行在线认证,证书在截 止日期前都是有效的。访问权限可以在单个结点上取消。 关于SPX的描述,我们将采用下面的约定 主体P的私有签名密钥 Pn,Sa:A的长期公开密钥和长期私有密钥 A的短期公开密钥和短期私有密钥,当A登录时生成 4,6 在对称加密算法中,用作A、B之间的会话密钥,由A生成; eK(x) 采用密钥K对数据包X进行加密; (Y):用密钥K生成的数据包X的数字签名;为了描述简单起见,我们假 设,无论何时传送一个数字签名时,已经被签名的数据也包含在消息中;因此sK(X)将表 示数据包X和对X的签名两种数据 时间戳 证书或者通行票的终止日期 在该表示中,公开密钥被用于加密和对签名的验证,而私有密钥用于解密和签名。这只 是为了简化描述,并不建议在实际中也这样实现。使用短期的公开密钥/私有密钥对可以避 免长期密钥对的过分暴露。授权可以采用生成新的证书来实现。证书将用户身份绑定在一个 短期私有密钥上。这个密钥对用户调用的服务必须是有效的。 图10.2 DSSA/SPX认证协议 在主体A、B之间的相互认证处理如图102所示。主体B的证书,由A所信任的证书 管理机构CAa发布。证书采用这种形式 Certificate(B, CA)=SSc(Caa, B, L, P) 交换的消息如下所示151 消息(1)A→CDC: B 消息(2)CDC→A: Certificate(B.CA) 消息(3)A→B: A,eka,b(,A),sSa(L,, A, Pa),ePi(ka,b),eka. S 消息(4)B→CDC: 第7页共16页 创建时间:2002/223152100
翻译:中国科学技术大学信息安全专业老师 第 7 页 共 16 页 创建时间:2002/12/23 15:21:00 CDC 在认证期间必须是联机的。 CDC 不能损害认证协议的安全。如果它分发了无效的证书,协议运行将报错后终止。在 这种考虑上,CDC 不一定是可信任的,但是对于认证服务的可用性来说,它却是至关重要的。 在实际实现时,CDC 可以是分布式的。 证书的撤销可以通过维护一张证书撤销表实现,或者直接从 CDC 数据库中删除证书。在 这种情况下,必须相信 CDC 正确地删除了证书。如果没有要求 CDC 进行在线认证,证书在截 止日期前都是有效的。访问权限可以在单个结点上取消。 关于 SPX 的描述,我们将采用下面的约定: · p S : 主体 P 的私有签名密钥; · Pa , a S : A 的长期公开密钥和长期私有密钥; · ' Pa , ' a S : A 的短期公开密钥和短期私有密钥,当 A 登录时生成; · Ka,b : 在对称加密算法中,用作 A、B 之间的会话密钥,由 A 生成; · eK(X ) : 采用密钥 K 对数据包 X 进行加密; · sK(X ) : 用密钥 K 生成的数据包 X 的数字签名;为了描述简单起见,我们假 设,无论何时传送一个数字签名时,已经被签名的数据也包含在消息中;因此 sK(X ) 将表 示数据包 X 和对 X 的签名两种数据。 ·T : 时间戳; · Lc , Lt : 证书或者通行票的终止日期。 在该表示中,公开密钥被用于加密和对签名的验证,而私有密钥用于解密和签名。这只 是为了简化描述,并不建议在实际中也这样实现。使用短期的公开密钥/私有密钥对可以避 免长期密钥对的过分暴露。授权可以采用生成新的证书来实现。证书将用户身份绑定在一个 短期私有密钥上。这个密钥对用户调用的服务必须是有效的。 图 10.2 DSSA/SPX 认证协议 在主体 A、B 之间的相互认证处理如图 10.2 所示。主体 B 的证书,由 A 所信任的证书 管理机构 CAa 发布。证书采用这种形式: ( , ) ( , , , ) a CA CAa B Lc Pb Certificate B CA sS a = 。 交换的消息如下所示[151]: 消息(1)A → CDC: B 消息(2)CDC → A: ( , ) B CAa Certificate 消息(3)A →B: A , ( , ) eKa,b T A , ( , , ) ' a Lt A Pa sS , ( ) b Ka,b eP , ( ) ' a,b Sa eK 消息(4)B→CDC: A