斯蒂芬·切考韦(Stephen Checkoway),约翰·霍普金斯大学;马修·弗雷德里克森,威斯康星大学麦迪逊分校;鲁本·尼德哈根,埃因霍温理工大学;亚当·埃弗斯帕,威斯康星大学麦迪逊分校;马修·格林,约翰·霍普金斯大学;坦尼娅·兰格,埃因霍温理工大学;Thomas Ristenpart,威斯康星大学麦迪逊分校;丹尼尔·伯恩斯坦,埃因霍温理工大学和芝加哥伊利诺伊大学;Jake Maskiewicz和Hovav Shacham,加州大学圣地亚哥分校
本文分析了使用NIST的双EC伪随机数生成器攻击TLS实现的实际成本,假设攻击者生成了双EC中使用的常量。几年前就已经知道,攻击者可以生成这些常量并看到足够长的双EC输出位,从而预测所有未来的输出;但TLS自然不会提供足够长的输出位,而且攻击的成本在很大程度上取决于在实现RNG时所做的选择以及在实现TLS的其他部分时所作的选择。
具体来说,本文研究了OpenSSL-FIPS、Windows的SChannel以及RSA BSAFE库的C/C++和Java版本。本文表明,双重EC的可利用性是脆弱的,尤其是被OpenSSL中认证的双重EC实现中的一个彻底错误所阻止。另一方面,本文还表明,2007年对Dual-EC标准进行了修改,这对Dual/EC的可开发性带来了好处;从这里介绍的几种攻击优化;以及各种提议的TLS扩展,其中一个在BSAFE中实现,但在我们获得和研究的版本中禁用。实现了论文的攻击;基准;针对修改后使用新的双重EC常数的库进行测试;已验证成功恢复TLS明文。
USENIX致力于开放访问我们活动上展示的研究。活动开始后,所有人都可以免费获得论文和会议记录。活动结束后发布的任何视频、音频和/或幻灯片也免费向所有人开放。支持USENIX以及我们对开放存取的承诺。
下载音频