博客

作者
Voga
发布于: 2014-04-11

标签

OpenSSL 2014年4月9日公告了一个极度严重的漏洞(CVE-2014-0160),被称为「Heartbleed」,而他确实也如同心脏喷出血般严重。这个漏洞能让攻击者从服务器内存中读取 64 KB 的资料,利用传送 heartbeat 的封包给服务器,在封包中控制变数导致 memcpy 函数复制错误的内存信息,因而撷取内存中可能存在的服务器信息。内存中最严重可能包含 ssl private key、session cookie、使用者密码等,因此可能因为这样的漏洞导致服务器遭到入侵或取得使用者帐号。

详细的分析可以参阅 existential type crisis : Diagnosis of the OpenSSL Heartbleed Bug

  • 软体名称:OpenSSL

  • 影响范围:1.0.1 至 1.0.1f / 1.0.2-beta ~ 1.0.2-beta1

  • 修复版本:1.0.1g / 1.0.2-beta2

影响系统版本

  • Debian Wheezy (stable), OpenSSL 1.0.1e-2+deb7u4

  • Ubuntu 12.04.4 LTS, OpenSSL 1.0.1-4ubuntu5.11

  • CentOS 6.5, OpenSSL 1.0.1e-15

  • Fedora 18, OpenSSL 1.0.1e-4

  • OpenBSD 5.3 (OpenSSL 1.0.1c 10 May 2012) and 5.4 (OpenSSL 1.0.1c 10 May 2012)

  • FreeBSD 10.0 - OpenSSL 1.0.1e 11 Feb 2013

  • NetBSD 5.0.2 (OpenSSL 1.0.1e)

  • OpenSUSE 12.2 (OpenSSL 1.0.1c)

影响服务:HTTP、SMTPS、IMAPS、POP3S 等使用 OpenSSL 之服务

  • OpenSSL 的公告如下:https://www.openssl.org/news/secadv_20140407.txt

  • A missing bounds check in the handling of the TLS heartbeat extension can be used to reveal up to 64k of memory to a connected client or server.

  • Only 1.0.1 and 1.0.2-beta releases of OpenSSL are affected including 1.0.1f and 1.0.2-beta1.

如何自我检测?

要如何测试自己的网站有没有这样的漏洞呢?可以利用以下的网站或工具直接查询。

  • Heartbleed test http://filippo.io/Heartbleed/

直接输入 域名 即可查询,例如「fbi.gov」。

  • 自我测试工具 http://s3.jspenguin.org/ssltest.py (或 http://pastebin.com/WmxzjkXJ)

使用方法直接执行「python ssltest.py ifttt.com」,或是用「-p」指定特定 SSL 连接埠。画面上会显示出内存信息,可能内含服务器信息例如 private key、session cookie 等。

应对措施

如果发现自己的服务器有这样的漏洞,该怎么办呢?

  1. 确认自己的 OpenSSL 版本是否在受害范围

  2. 使用 ssltest.py 检测工具检测是否含有漏洞

  3. 更新 OpenSSL 至 1.0.1g 或 1.0.2-beta2

  4. 重开所有与 OpenSSL 函式库相关之服务

  5. 重新产生 SSL Private Key (因为 Private Key 可能藉由漏洞外洩)

  6. 将网站旧凭证撤销

  7. 清除所有目前网页服务器上的 Session (因为可能遭到窃取)

  8. 必要时更换网站内使用者密码,或是密切追踪网站是否有帐号盗用的情况发生

详细讨论与建议可以参考 Heartbleed: What is it and what are options to mitigate it?

http://serverfault.com/questions/587329/heartbleed-what-is-it-and-what-are-options-to-mitigate-it

谁会是目标呢?

真的会有攻击者利用这样的攻击手法吗?目前在乌云 wooyun平台上已经有诸多研究员开始报告网站含有 OpenSSL 漏洞。也有骇客在尝试撰写更有效的攻击利用程式,想要藉此把平常打不下来的网站一举攻陷。

怎样的站台会是重点目标呢?含有会员机制的网站特别如此,例如 Web Mail、社群网站等等。因此不少企业要多注意了,例如全世界最大的社群网站 Facebook、SlideShare、台湾知名电信公司网站、社交平台、网路银行、NAS,都会在这波攻击范围之内。如果没有尽快修复,等到更有效的攻击程序出现,就真的等着失血了。

文章转载自:http://devco.re/blog/2014/04/09/openssl-heartbleed-CVE-2014-0160/