heartbleeder 自动检测 OpenSSL 心脏出血漏洞 (附修复指南)

简介: heartbleeder 可以探测你的服务器是否存在 OpenSSL CVE-2014-0160 漏洞 (心脏出血漏洞)。

heartbleeder 可以探测你的服务器是否存在 OpenSSL CVE-2014-0160 漏洞 (心脏出血漏洞)。

image.png


什么是心脏出血漏洞?

CVE-2014-0160,心脏出血漏洞,是一个非常严重的 OpenSSL 漏洞。这个漏洞使得攻击者可以从存在漏洞的服务器上读取64KB大小的内存信息。这些信息中可能包含非常敏感的信息,包括用户请求、密码甚至证书的私钥。

据称,已经有攻击者在某宝上尝试使用漏洞读取数据,在读取200次后,获取了40多个用户名和7个密码。


如何使用 heartbleeder 检测心脏出血漏洞?

安装

可以在gobuild.io下载编译好的二进制文件的压缩包。包括Windows、Linux、MacOSX。

由于服务器操作系统最常用的是Linux,因此这里提供一下下载Linux二进制压缩包的命令:

Linux(amd64)

wget http://gobuild.io/github.com/titanous/heartbleeder/master/linux/amd64 -O output.zip

Linux(i386)

wget http://gobuild.io/github.com/titanous/heartbleeder/master/linux/386 -O output.zip

下载后解压缩即可。

也可以自行编译安装(Go版本需在1.2以上), 使用如下命令:

goget github.com/titanous/heartbleeder

二进制文件会放置在 $GOPATH/bin/heartbleeder


使用

$ heartbleeder example.com

INSECURE - example.com:443has the heartbeat extension enabled andis vulnerable

Postgres 默认在 5432 端口使用 OpenSSL,如果你使用Postgres服务器,则需使用如下命令:

$ heartbleeder -pg example.com

SECURE - example:5432 does not have the heartbeat extension enabled

如何手工检测心脏出血漏洞

如果不方便安装heartbleeder,或者不放心自动检测的结果,也可以手动检测。

首先判断服务器上的Openssl版本是否是有漏洞的版本。目前有漏洞的版本有: 1.0.1-1.0.1f(包含1.0.1f)以及 1.0.2-beta。你可以使用如下的命令查看服务器上的当前版本:

openssl version

接着你需要判断是否开启了心跳扩展:

openssl s_client -connect 你的网站:443 -tlsextdebug 2>&1| grep 'TLS server extension "heartbeat" (id=15), len=1'

如果以上两个条件你都满足的话,很遗憾,你的服务器受此漏洞影响,需要尽快修复。


如何修复

  1. 将受影响的服务器下线,避免它继续泄露敏感信息。
  2. 停止旧版的 openssl 服务,升级 openssl 到新版本,并重新启动。
  3. 生成新密钥。(因为攻击者可能通过漏洞获取私钥。)将新密钥提交给你的CA,获得新的认证之后在服务器上安装新密钥。
  4. 服务器上线。
  5. 撤销旧认证。
  6. 撤销现有的会话cookies。
  7. 要求用户修改密码。
相关文章
|
Linux 开发工具
Kali Linux配置阿里源
在配置Linux系统源前,建议先备份源列表。打开`/etc/apt/sources.list`,将原有官方源注释或删除,然后可以选择添加国内镜像源,如中科大、阿里云、清华大学、浙大或东软等源。确保每个源格式正确,以`deb`开头,`main non-free contrib`结尾。保存并退出(使用`:wq`或`:wq!`),之后运行`apt-get update`来下载新配置的源并验证是否成功。如果下载速度慢,可中断(`Ctrl+C`)后更换网络重试。
2534 0
|
安全 Linux 测试技术
配置Goby工具环境(win,linux,macOS)
配置Goby工具环境(win,linux,macOS)
1290 2
|
安全 中间件 Apache
【Web安全】不安全的HTTP方法
围绕渗透攻防层面来看不安全的HTTP方法漏洞的检测发现修复等手法。
1598 1
|
SQL 监控 druid
Druid未授权访问 漏洞复现
Druid未授权访问 漏洞复现
16890 0
|
安全 JavaScript 前端开发
Javascript框架库漏洞验证
Javascript框架库漏洞验证
3546 0
Javascript框架库漏洞验证
|
安全 测试技术
网站CSRF跨站漏洞修复方案
CSRF通俗来讲就是跨站伪造请求攻击,英文Cross-Site Request Forgery,在近几年的网站安全威胁排列中排前三,跨站攻击利用的是网站的用户在登陆的状态下,在用户不知不觉的情况下执行恶意代码以及执行网站的权限操作,CSRF窃取不了用户的数据,只能执行用户能操作的一些数据。比如在用户不知道的情况下, 把账户里的金额,以及银行卡号,体现功能,都转移到其他人账户里去。如果被攻击者是一个管理员的权限,那么就会对网站安全构成严重的危害。
1459 0
网站CSRF跨站漏洞修复方案
|
安全 网络安全 数据安全/隐私保护
渗透测试-Openssl心脏出血漏洞复现
渗透测试-Openssl心脏出血漏洞复现
536 7
|
存储 安全 JavaScript
XSS跨站脚本攻击详解(包括攻击方式和防御方式)
这篇文章详细解释了XSS跨站脚本攻击的概念、原理、特点、类型,并提供了攻击方式和防御方法。
4375 2
|
NoSQL MongoDB 关系型数据库
13个Mongodb GUI可视化管理工具,总有一款适合你
本文介绍了13个好用的MongoDB可视化工具。Robomongo,MongoDB Compass,phpMoAdmin等
112303 0
13个Mongodb GUI可视化管理工具,总有一款适合你
|
安全 算法 应用服务中间件
SSL/TLS协议信息泄露漏洞(CVE-2016-2183)【原理扫描】
SSL/TLS协议信息泄露漏洞(CVE-2016-2183)【原理扫描】 【可验证】 详细描述TLS是安全传输层协议,用于在两个通信应用程序之间提供保密性和数据完整性。
8811 2