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

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

bVb54p

什么是心脏出血漏洞?

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以上), 使用如下命令:

go get github.com/titanous/heartbleeder

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

使用

$ heartbleeder example.com

INSECURE - example.com:443 has the heartbeat extension enabled and is 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'

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

如何修复

将受影响的服务器下线,避免它继续泄露敏感信息。

停止旧版的 openssl 服务,升级 openssl 到新版本,并重新启动。

生成新密钥。(因为攻击者可能通过漏洞获取私钥。)将新密钥提交给你的CA,获得新的认证之后在服务器上安装新密钥。

服务器上线。

撤销旧认证。

撤销现有的会话cookies。

要求用户修改密码。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值