NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

OpenSSL Heartbleed 漏洞事件记录

  • 2014-04-09
  • 本文字数:1854 字

    阅读完需:约 6 分钟

2014 年 4 月 7 日开始在互联网上引起轩然大波的“OpenSSL Heartbleed”漏洞是一个非常严重的漏洞,安全人士“道哥的黑板报”表示该漏洞可能成为2014 年的“最佳漏洞”之一,造成的影响可能会超过去年Struts 框架远程执行漏洞。

以下是InfoQ 中文站对本次漏洞披露过程、讨论过程和影响范围的事件记录,供参考。

2014 年 4 月 7 日,CloudFlare 公司在其博客上发布了一个公开声明,表示发现了OpenSSL 1.0.1 版本当中的一个尚未被公开的漏洞,并表示CloudFlare 已经在之前一周修复该bug。同日,OpenSSL 官网发布该漏洞通告,漏洞标识为 CVE-2014-0160 ,通告内容如下:

TLS 心跳扩展的处理过程漏掉了一步边界检测的步骤,这个漏洞使攻击者能够从客户端与服务器端连接的内存泄露中读取多达 64KB 的数据。

OpenSSL 1.0.1、1.0.1f、1.0.2-beta 和 1.0.2-beta1 版本包含本漏洞。

Google 安全组的 Neel Mehta 发现了本漏洞,而 Adam Langley agl@chromium.org 和 Bodo Moeller bmoeller@acm.org 提供了漏洞的补丁,感谢他们。

所有受影响的用户需尽快升级至 OpenSSL 1.0.1g 版本。升级有困难的用户可以通过-DOPENSSL_NO_HEARTBEATS选项重新编译 OpenSSL 进行临时修补。

1.0.2-beta2 更新中将修复这个漏洞。

官方通告发布之后,安全公司Codenomicon 单独建立网页对该漏洞进行更详细的描述与跟进,并表示其工程师在该漏洞披露之前早已单独发现了这个漏洞。由于该漏洞跟heartbeat 与内存泄露的相关性,本漏洞被形象的描述为 Heartbleed (心脏出血)。Heartbleed.com 上有一份详细的 FAQs,摘要部分如下:

  • 这是一个非常严重的 bug,导致全球互联网大量私钥和其他加密信息处于暴露的危险下。
  • 本漏洞从 2011 年 12 月开始进入 OpenSSL,并在 2012 年 3 月 14 日 OpenSSL 1.0.1 正式发布后开始大量流入市场。
  • Debian Wheezy、Ubuntu 12.04.4 LTS、CentOS 6.5、Fedora 18、OpenBSD 5.3、FreeBSD 10.0、NetBSD 5.0.2、OpenSUSE 12.2 等发行版默认搭载了含有本漏洞的 OpenSSL 版本。
  • 利用本漏洞抓取敏感信息不会留下任何痕迹。

社区讨论

该漏洞在被公开纰漏后开始迅速传播。OpenSSL 官方通告在 Hacker News LWN 知乎等平台上引发大量讨论,讨论方向包括:

吐槽 OpenSSL 的编码实践。造成边界检查失效的代码被视为“难以通过代码审查”,而即使是修复的补丁也被评价为“不忍直视”:

复制代码
if (1 + 2 + 16 > s->s3->rrec.length)
if (1 + 2 + payload + 16 > s->s3->rrec.length)

OpenBSD 的 deraadt 评价“OpenSSL 的开发团队是不负责任的”,还有人把 2009 年的一篇《 OpenSSL 的开发者们都是猴子》推到了 Hacker News 上,批评该项目的代码质量。

dmix 写了一个脚本遍历 Alexa 排名前一千的网站,遍历结果显示约有 30%~40% 的网站包含本漏洞。他表示没有测试中国的网站,因为国内网站的 443 端口从国外嗅探纷纷会超时。

ZDNet 的读者谴责了CloudFlare ,认为这次造成这么大的影响很大程度上是因为CloudFlare 没有走“负责任的漏洞披露过程”,在官方补丁发布之前先做了通告,而CloudFlare 的工程师则坚称自己披露的时间点在OpenSSL 官方通告被分享到Hacker News 之后,因此没有过失。

@ex509 在其博客上针对本漏洞写了一篇详细的技术分析,国内的 Fish 将其翻译为中文并发布在乌云知识库

知道创宇的余弦在知乎上表示“@知道创宇安全研究团队 实测可以Dump 出淘宝、微信、网银、陌陌、12306 等各大使用OpenSSL 服务的一些内存信息,里面有用户等的敏感内容(有些重要网站含明文密码)”,并表示“这事的影响超乎想象。”

@ZoomEye 搜索引擎制作了一份受本次漏洞影响的网站地图

360 网站卫士推出了一个该漏洞的检查服务,该服务技术负责人赵武在微博上建议“负责任的网站方没搞清楚之前还是先停服务吧。”

影响范围

4 月 8 日,有大量由该 bug 导致的各网站漏洞被披露在 Wooyun.org,包括蘑菇街、搜狗、盛大网络、UCloud、淘宝、开源中国、豌豆荚、唯品会等,各网站的工程师均在 Wooyun 上回应表示正在修复,部分大型网站的 OpenSSL 问题已经修复。

AWS 在 4 月 8 日发布升级通知表示收到本漏洞影响的ELB 服务器已经升级,EC2 上提供的AMI 已经替换为没有该漏洞的版本,同时也在帮助其Elastic Beanstalk 和CloudFront 的用户修复本问题。

Akamai 首席安全官在 4 月 8 日发布博客表示已经在本漏洞公开纰漏之前完成了修复。 Heroku 在 4 月 8 日发布修复通告后提醒用户更改密码。

已经发布升级通告的发行版包括红帽(RHEL 桌面版、服务器版、HPC、Workstation)、 Fedora (19、20)、 Ubuntu (13.10、12.10、12.04 LTS)、 Debian

2014-04-09 05:194641

评论

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

dpdk l2fwd如何初始化每个逻辑核的port/queue的

linux大本营

队列 DPDK DPDK开发

一文带你了解实战常用JavaScript API

程序员海军

JavaScript 三周年连更

扎最深的寨,打最持久的仗——一知智能AI商业化攻略访谈录

B Impact

CefSharp自定义缓存实现

沙漠尽头的狼

Go并发编程的秘密武器:内存模型和同步原语

Jack

打工人逃不开「单人单岗」

Java 架构 程序人生 职场

重载++运算符分别实现i++和++i

linux大本营

运算符 数据结构与算法

Golang new 和 make 函数

宇宙之一粟

Go make new 三周年连更

minikube 初体验环境搭建

IT蜗壳-Tango

三周年连更

UDP报头是通过结构体位段实现的吗

linux大本营

网络协议 udp UDP协议

nvim 配置c++环境

linux大本营

vim C++

linux dbus代码举例

linux大本营

Linux C++

如何建设IT运维流程与体系

穿过生命散发芬芳

运维体系 三周年连更

推荐一些好用的ChatGPT扩展工具

石云升

ChatGPT 三周年连更

6G 通信技术和 5G 通信技术的区别

Jerry Wang

通讯协议 通讯 三周年连更

一键生成通用的微服务(gRPC)项目代码,让你的开发效率翻倍提升

vison

Go 微服务 gRPC 代码自动生成

京韵、京城、京味:从一台服务器看数字北京

脑极体

算力

Java - 泛型

乌龟哥哥

三周年连更

LuckyDraw发布啦

小张想搞机

开源项目 Github'

解析下rte_pktmbuf_pool_create参数含义

linux大本营

DPDK DPDK开发

共话数字化新技术、新趋势 华为云开发者日东莞站成功举办

Geek_2d6073

dpdk中,如何建立portid/queue的配置和逻辑核心的关系

linux大本营

队列 DPDK DPDK开发

数据存储与访问——文件存储读写

智趣匠

application 三周年连更 SharedPreference

linux dbus客户端和服务器示例代码

linux大本营

c++ Linux dbus

openbmc 中如何使用D-bus

linux大本营

dbus openBMC

概述产品设计通用七原则

阿泽🧸

产品设计 三周年连更

系统稳定性建设之我见(64/100)

hackstoic

质量管理 系统稳定性

Django笔记十七之group by 分组用法总结

Hunter熊

Python django count 分组查询 sum

写一个完整的SHOW TABLE STATUS 语句返回的所有表的状态信息对应的结构体

linux大本营

数据库 存储 结构体 C++

2022-04-26:给定一个数组componets,长度为A, componets[i] = j,代表i类型的任务需要耗时j 给定一个二维数组orders,长度为M, orders[i][0]代表i

福大大架构师每日一题

golang 算法

基于Flutter实现Windows平台离线大模型对话应用实战

轻口味

flutter AI windows 跨平台 三周年连更

OpenSSL Heartbleed漏洞事件记录_安全_sai_InfoQ精选文章