我正在尝试检查我是否运行最新的OpenSSL版本,我主要担心的是这个问题.
我尝试了2个命令:
> openssl版本
> yum info openssl
openssl版本输出
OpenSSL 1.0.1e-fips 11 Feb 2013
yum info openssl输出
Installed Packages
Name : openssl
Arch : x86_64
Version : 1.0.1e
Release : 16.el6_5.14
…
我有一些问题:
>为什么我从这两个命令中获得不同的版本?
>如何在不打开443端口的情况下检查heartbleed漏洞?
解决方法
RPM包的名称与软件本身返回的版本完全不同.
其中一个原因是Red Hat& CentOS backports安全更新和最初发布的软件版本的错误修复.他们从上游软件包的最新版本(即openssl 1.0.1h)中解决了安全漏洞,并将该修复程序应用于旧版本的软件包:即openssl 1.0.1e.除了软件版本号之外,该策略是包名称中的补丁级别字符串的原因.
无论您的实际补丁级别如何,openssl version命令的版本输出都保持不变1.0.1e.
rpm -q –changelog openssl显示软件包维护者在您当前安装的版本中包含的更新.
最新版本显示:
* Mon Jun 02 2014 Tom Mraz <tmraz redhat.com> 1.0.1e-16.14 - fix CVE-2010-5298 - possible use of memory after free - fix CVE-2014-0195 - buffer overflow via invalid DTLS fragment - fix CVE-2014-0198 - possible NULL pointer dereference - fix CVE-2014-0221 - DoS from invalid DTLS handshake packet - fix CVE-2014-0224 - SSL/TLS MITM vulnerability - fix CVE-2014-3470 - client-side DoS when using anonymous ECDH * Mon Apr 07 2014 Tom Mraz <tmraz redhat.com> 1.0.1e-16.7 - fix CVE-2014-0160 - information disclosure in TLS heartbeat extension