我知道,与SSL一起使用的RC4密码易受某些攻击攻击,在最坏的情况下,这可能导致身份验证令牌被窃取。但是RC4也被推荐作为一种密码来减少猛兽攻击。
这是一个更好的战略决策吗?禁用RC4并可能使其易受猛兽攻击,或者保护免受野兽攻击和RC4易受攻击的攻击?
发布于 2013-12-25 14:58:12
在任何情况下,客户端建议,但服务器选择。在客户端,您可以指定,如果可能的话,您更喜欢使用AES,但是如果客户机支持RC4,而服务器希望尽可能使用RC4,那么RC4就会使用。这意味着您不能真正“使用RC4作为最后的手段”(除非客户端代码做了一些诡计,我不相信主流SSL客户端实现了这一点;即不宣布RC4支持,除非以前与其他密码套件的连接尝试失败)。
一种方法是RC4保护的SSL比根本没有SSL要好得多。另一种方法是,无论您在客户端上做什么,服务器都不能被抽象掉;您正在将您的机密数据委托给服务器。选择密码套件是服务器的责任,如果服务器不应用适当的密码套件(从您的角度来看),那么您可能根本不应该将数据发送到这样一个粗心的服务器.
已知的AES-CBC (猛兽攻击)的弱点不再有效,如果您的客户端(Web浏览器)是最新的(而且它真的应该!)已知的RC4弱点在Web上下文中似乎不起作用(因为利用弱点需要数百万连接,这需要时间--而且,每个请求的前几百个字节包含的headers对攻击者来说大多是不感兴趣的)。所以可以说: RC4还是不RC4,这不是问题。无论禁用还是启用RC4,这都不太可能是最大的安全漏洞,甚至是严重的漏洞。
然而,为了遵守一些不灵活的规定,或者增加一些(非常人为的)一些审计人员似乎非常喜欢的“安全标记”,禁用RC4或禁用AES-CBC可能是有意义的,因为这些原因更多地与心理学而不是密码学有关。
发布于 2013-12-25 00:42:17
猛兽漏洞已经解决了客户端,所以它不再是一个现代浏览器的问题。
RC4是一个比其他密码弱的密码,因为它被证明有一个轻微的偏见,但如果谨慎和适当地使用,没有成功的攻击它。
你不能得到比安全更安全的东西;如果你的加密不能被破解,那么多的加密不能被破解并不重要。因此,在这个意义上,没有令人信服的理由来避免密码。
也就是说,当其他密码可用时,使用有偏见的密码是没有意义的。因此,展望未来,你可能更喜欢其他的东西。RC4如此持久的主要原因是它是使用中的最后一个真正的流密码,这使得它对于那些想要避免考虑块链接的人很有用。安全块密码是很难发明的;但是流密码是在一个全新的层次上,所以我们不太可能看到另一个。
最有可能的是,RC4将继续存在;没有令人信服的直接替代。我不喜欢它,但我希望继续看到它。
发布于 2013-12-25 00:24:07
许多人推荐RC4来防止野兽的攻击,因为它的攻击;正确和前瞻性的解决方案是更新您的软件到TLS 1.1规范。
从战略上讲,你的选择取决于你的能力。如果允许您指定连接到服务的用户代理,或者愿意接受用户代理可能无法连接到某些服务(如果这使其更安全),则需要TLS 1.2支持。
几乎没有什么能有意义地保护那些使用过时软件的用户,因为这些软件存在已知的漏洞。这包括运行用户代理的人员,他们仍然不能比SSLv3更好,而且不支持GCM模式。
密码套件是按优先级顺序协商的。由于有些人可能仍然遵循旧的建议,选择RC4以减轻猛兽,所以禁用RC4可能是一个很好的选择,特别是如果您(或您的用户的)用户代理是最新的。
考虑到实际的攻击已经被证明具有类似的先决条件,无论是野兽还是RC4,在其他情况下,选择是平等的。
https://security.stackexchange.com/questions/46953
复制相似问题