AICon上海|与字节、阿里、腾讯等企业共同探索Agent 时代的落地应用 了解详情
写点什么

MD5 缺陷可能损害 SSL 安全

  • 2009-01-07
  • 本文字数:845 字

    阅读完需:约 3 分钟

使用来自特定 CA 的 X.509 证书,会使基于 SSL 的安全措施即使在“安全”连接之下,也容易受到伪造 X.509 证书的欺骗而防范不住仿冒网站。近日在柏林举办的 Chaos 会议上,演讲者通过仿冒一份真实的证书演示了这一漏洞。

“让理论成为可能,有时候唯有这样才能推动变革,保障互联网的安全。”这番话是 2008 年 12 月 29 日第 25 届 Chaos Communication Congress 上一篇"MD5 Considered Harmful Today: Creating a rogue CA certificate"演讲的结论。演讲者介绍了他们如何用2004 年提出的理论上可行的MD5 签名攻击方法,构造出伪造的证书,从而实现对SSL 安全网站“完美的中间人攻击”。

攻击的原理是这样的:SSL 服务器用X.509 证书来证明自己的身份,证书由“受信任的证书签发机构”或称CA 发出。签发机构在证书上“签名”,用的是通过一种密码算法产生的散列值。而所用密码算法在设计上要使从两组不同数据得到同一个散列值——即“碰撞”——的概率极其小。

要实现攻击,攻击者需要先从使用MD5 算法签署证书的CA 购买若干SSL 证书。利用从这几张证书中得到的信息,有可能构造出貌似合格的伪造的证书。证书的签名来自先前购买的证书,内容却不同,并且添加了特别计算出来的数据块以制造碰撞 。因此MD5 算法会错误地认为签名与新内容是匹配的。效果上就好像在一份有真实签名的白纸上写上内容来伪造信件。

证书伪造出来后,就可以用在“中间人”攻击里。有了证书,就可以设置一个SSL 连接双方都认为合法的代理。通过这个代理,所有加密信息都可以被攻击者捕获并保存下来。

这种攻击要求很大的运算量,但技术进步和摩尔定律已经使碰撞证书运算成为可行的现实。在演讲者的例子中,运算大约需要在Amazon EC2 云花费$2000,也可以用 PS3 游戏机集群搭建的“家用超级计算机”解决。

这种攻击并不意味着整个互联网或者 SSL 安全已经被突破,但的确意味着厂商应该不再用 MD5 作为签名算法。演讲者提醒了几家仍然有 MD5 签名证书处于生效状态的签发机构。

查看英文原文: MD5 Exploit Potentially Compromises SSL Security

2009-01-07 19:351951
用户头像

发布了 225 篇内容, 共 67.7 次阅读, 收获喜欢 52 次。

关注

评论

发布
暂无评论
发现更多内容

云中谁寄锦书来,免费生成一封七夕情书吧

郭旭东

阿里云 七夕 云效

区块链承兑商支付系统开发,USDT支付软件搭建

13530558032

大数据思维与运用

石云升

大数据 数据建模 数据驱动

SpreadJS 纯前端表格控件应用案例:实验室信息化管理系统

葡萄城技术团队

兼具艺术情怀和舒适旅居体验,木莲庄做了什么

InfoQ_967a83c6d0d7

oeasy教你玩转linux010104灵魂之问whatis

o

CECBC区块链专委会副主任吴桐主讲成都市委宣传部区块链和数字

CECBC

区块链 数字货币

SpreadJS 纯前端表格控件应用案例:PtLims云平台

葡萄城技术团队

Java中的volatile关键字

wangkx

Java volatile

青山不改,绿水长流

escray

学习 面试

Tencent AI Lab 日常实习生招聘

InfoQ_d00afcd122a8

招聘

乘风人脸识别来了,企业能得到什么?

ToB行业头条

人工智能 人脸识别 百度大脑

SpreadJS 纯前端表格控件应用案例:物业行业全面预算管理系统

葡萄城技术团队

游戏运营方法论

石云升

游戏化运营 运营创新

SpreadJS 纯前端表格控件应用案例:资料填报系统

葡萄城技术团队

阿里为什么推荐使用LongAdder,而不是volatile?

王磊

Java 性能 volatile

SpreadJS 纯前端表格控件应用案例:立信智能审计云平台(SACP)

葡萄城技术团队

3D渲染集群,你了解多少?

华为云开发者联盟

容器 华为云 集群 3D渲染 3D模型

Python3 单例模式

wangkx

Python Singleton

用Emoji解释编程语言中的map、filter、reduce

wangkx

Python Python PEP

工作就是解决一个又一个问题

escray

学习 面试

有它的加持,单机玩转百亿大数据不是梦!

易观大数据

ARTS 挑战打卡第十五周(200817-200823)

老胡爱分享

ARTS 打卡计划

为什么会出现零代码开发平台?

代码制造者

编程语言 低代码 企业信息化 零代码 编程开发

Python中的global关键字的用法以及如何设置项目级的Global变量

陈磊@Criss

从“人居美学”的理念出发,木莲庄酒店很不一样

InfoQ_967a83c6d0d7

一键超频 双C Carry,普通用户如何挖潜英特尔十代酷睿?

E科讯

PostgreSQL函数、索引和视图操作Demo展示

wangkx

postgresql

ARTS 挑战打卡第十四周(200810-200816)

老胡爱分享

ARTS 打卡计划

话题讨论 | 作为一名程序员,沟通能力是否重要?

InfoQ写作社区官方

程序员 写作平台 话题讨论

永续合约交易系统源码开发,合约交易所开发

13530558032

MD5缺陷可能损害SSL安全_安全_Charlie Martin_InfoQ精选文章