随机真的是好事情吗?密文分组链接模式的碰撞攻击——理论与实践
前言
好久没给朋友们带来黑客大会视频的分析了。我自己在空余时间仍然在做黑客大会的翻译工作,不过这一段时间听译的内容大多数都是工具的介绍,写起来感觉有些空(不过,如果我遇到有意思的工具,我还是会和大家分享的)。然而,前天发生的一件事情让我下定决心一定要为将要上线的一个DEF CON 23视频撰写一篇专栏。
事情的起因是这样的,在前天中午我与实验室新来的一位老师闲聊的时候,他提到业内有个学者的博客很不错,可以时常关注一下。一听这个人叫Matthew Green,我就来了兴趣。安全圈子里面的人可能不太知道这个人,但这个人在理论圈子里面可是非常知名的。理论圈子里面有3个最顶级的安全会议,分别叫做Usenix Security Symposium(Usenix Security)、ACM Conference on Computer and Communications Security(ACM CCS)、IEEE Symposium on Security and Privacy(S & P)。基本上国内研究机构每年也没几个人能在这3个会议上发表论文。这3个会议只要中了一篇,基本上就是各种基金项目信手拈来的程度。然而,从2010年开始,Matthew Green这个人每年都会在这3个会议上发表论文!更恐怖的是,这个人只是Johns Hopkins大学的一个普通的Assistant Professor而已。哎,只能说理论安全圈,国内外的研究水平还是有一定差距的…不过,Matthew Green本身是一个很喜欢Coding的人,尤其是喜欢做密码学工程相关的工作。他对理论分析倒并不是那么热衷,这没准也是他一直没沿着学术圈子继续往上升的原因吧。
言归正传,Matthew Green的博客叫做《[url=http://webcache.googleusercontent.com/search?q=cache:https://blog.cryptographyengineering.com/]A Few Thoughts on Cryptographic Engineering[/url]》(似乎需要翻墙,而且时常会出现链接挂掉的情况)。他的博客通俗易懂,有大家之范,有兴趣的朋友们可以关注一下。我们今天要谈到的就是他在2016年8月24日(没错,就是一周之前)发表的一篇博客《Attack of the week: 64-bit ciphers in TLS》。因为有的朋友可能打不开链接,我在这里贴出这篇博客的第一部分,大家可以感受一下:
A few months ago it was starting to seem like you couldn’t go a week without a new attack on TLS. In that context, this summer has been a blessed relief. Sadly, it looks like our vacation is over, and it’s time to go back to school.
Today brings the news that Karthikeyan Bhargavan and Gaëtan Leurent out of INRIA have a new paper that demonstrates a practical attack on legacy ciphersuites in TLS (it’s called “Sweet32”). What they show is that ciphersuites that use 64-bit blocklength ciphers — notably 3DES — are vulnerable to plaintext recovery attacks that work even if the attacker cannot recover the encryption key.
While the principles behind this attack are well known, there’s always a difference between attacks in principle and attacks in practice. What this paper shows is that we really need to start paying attention to the practice.
Karthikeyan Bhargavan和Gaëtan Leurent的这个工作已经被上面3个最顶级安全会议之一,ACM CCS 2016录用。今年,ACM CCS 2016将在奥地利的维也纳召开,时间是2016年10月24日至2016年10月28日(ACM CCS 2016)。两位作者专门构建了一个网站:Sweet32: Birthday attacks on 64-bit block ciphers in TLS and OpenVPN,提前将攻击原理、代码、分析等放在了网上。因此,我们有幸能提前2个月看到国际顶级学者们的最新研究成果,这也是一件值得庆贺的事情。
但是,当读完论文后我就傻眼了… 这个攻击的攻击原理是很简单的,之前也有人发现过。而公开这个问题的人,正是在DEF CON 23 – Crypto and Privacy Village上发表的讲座。而他们的讲座正是我的团队听译的… 他们是来自Fontbonne大学的Albert Carlson和Patrick Doherty。我不知道Karthikeyan Bhargavan和Gaëtan Leurent是否看过DEF CON 23的演讲,也不知道Albert Carlson和Patrick Doherty是否得知他们的攻击思想被来自另外机构的人完整实现。如果他们互相知道对方的成果,不知道会作何感想…
我想强调的是,这个攻击的原理很直观,但是如何正确利用这种攻击方式,两个大学的两组研究团队有着不一样的想法。而这不一样的想法导致他们分别在黑客大会和计算机理论大会上做相关的报告。这也引发了一个问题:安全理论有用吗?
讲座信息
- 原始视频:DEF CON 23 – Crypto and Privacy Village – Carlson and Doherty – Breaking CBC。
- YouTube链接:https://www.youtube.com/watch?v=v0IsYNDMV7A
- 翻译:ScalersTalk成长会听力小组成员Myra
- 校对、压制:@刘巍然-学酥
- 时间轴:@吴诗湄
- The client and server must negotiate a 64-bit cipher. This is a relatively rare occurrence, but can happen in cases where one of the two sides is using an out-of-date client. For example, stock Windows XP does not support any of the AES-based ciphersuites. Similarly, SSL3 connections may negotiate 3DES ciphersuites.
- The server and client must support long-lived TLS sessions, i.e., encrypting a great deal of data with the same key. Unfortunately, most web browsers place no limit on the length of an HTTPS session if Keep-Alive is used, provided that the server allows the session. The Sweet32 authors scanned and discovered that many servers (including IIS) will allow sessions long enough to run their attack. Across the Internet, the percentage of vulnerable servers is small (less than 1%), but includes some important sites.
- The client must encipher a great deal of known data, including a secret session cookie. This is generally achieved by running adversarial Javascript code in the browser, although it could be done using standard HTML as well.
- 强制建立一个64 bit分组加密算法CBC模式的链接。Karthikeyan Bhargavan和Gaëtan Leurent做了详细的调研,认真分析了现有网络中64 bit分组加密算法CBC模式的使用率,结论是这种方式的使用率是非常高的。他们甚至指出,TLS的标准中也写明这种使用方法是正确而安全的,推荐使用(If you negotiate 3DES with a 1024-bit RSA key exchange with a host whose certificate you have verified, you can expect to be that secure),参见论文第3章。这里就可以看出,两位学者工作是多么的扎实。
- 要求通信双方建立长时间的TLS链接。这也是可以实现并在实际中会发生的,比如发送数据量很大、服务器的链接一直不断开。
- 重复发送一个秘密信息,并且其他信息攻击者还都知道。这个是最难实现的,然而两位学者想到了一个非常巧妙的方法:撰写一个Javascript恶意链接,让客户端重复请求下载并显示一个图片。作者利用了Session Cookie的特性来实现这个场景。Session Cookie的目的是让服务器知道对方是验证通过的用户,这个Cookie是秘密的,但是是在链接建立后,通过安全链接发送给服务器的。而HTTP的其他请求都是恶意程序生成的。这样就实现了知道秘密位置,不知道秘密本身,其他密文所对应的明文攻击者都能获知的这一极端条件。
关注公众号:拾黑(shiheibook)了解更多
[广告]赞助链接:
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/
关注网络尖刀微信公众号
随时掌握互联网精彩
随时掌握互联网精彩
赞助链接
排名
热点
搜索指数
- 1 澳门是伟大祖国的一方宝地 7922421
- 2 女子穿板鞋爬山回家脱鞋时被吓一跳 7965950
- 3 张雨绮 为了讨大家喜欢才穿成这样 7814245
- 4 2024 向上的中国 7749192
- 5 大S老公具俊晔站C位跳女团舞 7648569
- 6 停个车数据就泄露了 7566535
- 7 特朗普赞成TikTok继续在美国运营 7428981
- 8 汪峰红毯现场回应汪峰定律 7311557
- 9 男子暴瘦110斤后被质疑戴人皮面具 7285861
- 10 央视曝光未成年人绕开防沉迷只需4元 7125068