前几天openSSL 的「滴血之心」漏洞造成的恐慌几乎席卷全球,国内外白帽子黑帽子疯狂刷数据刷积分,各大网站的安全部门也是遇到了从未有过的危机。虽然大家都讨论的很热烈,但对于用户们来说,只关心一件事情:我们支付宝里的钱还安全么。
除此以外,好奇的人们或许更想知道openSSL的程序员到底犯了什么错误,好在有xkcd这样的geek网站,用最最通俗易懂的方式,向大家展示了这个漏洞的原理和可爱之处。
还不明白的同学:所谓heartbleed的说法,源自于「心跳检测」,就是用户发通过起TSL 加密链接,发起 Client Hello询问,测服务器是否正常在线干活(形象的比喻就是心脏脉搏),服务器发回Server hello,表明正常建立SSL通信。每次询问都会附加一个询问的字符长度pad length,bug来了,如果这个pad length大于实际的长度,服务器还是会返回同样规模的字符信息,于是造成了内存里信息的越界访问……