我们的一台服务器仍然有 heartbleed 问题。我们使用 yum 进行了更新,并重新启动了 apache 以及使用易受攻击的 openssl 版本的所有服务。当我们测试我们的站点以查看它是否仍然易受攻击时,它显示它仍然易受攻击。我们的服务器有从源代码编译的 apache 2.4.7。有人知道为什么它会说我们仍在使用易受攻击的 Openssl 版本吗?如果我执行“rpm -qa | grep ssl”,我会得到以下信息:
nss_compat_ossl-0.9.6-1.el6.x86_64
pyOpenSSL-0.10-2.el6.x86_64
openssl-1.0.1e-16.el6_5.7.x86_64
openssl-devel-1.0.1e-16.el6_5.7.x86_64
答案1
有两种可能性:
1) 您的 Apache 编译版本使用了来自其他位置的 OpenSSL 编译版本。只需在 Apache 二进制文件上使用 ldd,它就会告诉您它使用了哪个 OpenSSL 共享库:
# ldd /usr/sbin/nginx | grep -i ssl
libssl.so.10 => /usr/lib64/libssl.so.10 (0x0000003816000000)
如果这没有给你输出,那么很可能是下一个可能性。
2)您已将 OpenSSL 静态内置到 Apache 中。
无论哪种情况,您都需要重建它。
答案2
我相信您正在使用静态库编译您的 apache,因此您可能需要在更新 libssl-dev 和 openssl 后重新编译。