受影响的OpenSSL版本默认使用哪些OS X版本?
关于Heartbleed错误,目前所有Internet通信都被相同的通用信息所阻塞,而无需在环境中关注Macintosh。我正在寻找有关Mac OS X客户端以及Mac OS X服务器的信息。现在,对于环境中的所有Mac来说,检查其特定版本的OpenSSL是不切实际的,但是我已经有了受影响机器的Mac OS X版本信息。
受影响的OpenSSL版本默认使用哪些OS X版本?
关于Heartbleed错误,目前所有Internet通信都被相同的通用信息所阻塞,而无需在环境中关注Macintosh。我正在寻找有关Mac OS X客户端以及Mac OS X服务器的信息。现在,对于环境中的所有Mac来说,检查其特定版本的OpenSSL是不切实际的,但是我已经有了受影响机器的Mac OS X版本信息。
Answers:
不会影响OS X的版本(也不会影响iOS)。仅安装第三方应用程序或修改将导致Mac或OS X程序在OpenSSL版本1.0.x中具有该漏洞/错误。
如果没有更早,Apple将于2012年12月在OS X上弃用OpenSSL。没有易受CVE-2014-0160攻击的OpenSSL版本(又名Heartbleed Bug)
苹果提供了几个备用的应用程序接口,这些接口为Mac开发人员提供SSL,关于OpenSSL可以这样说:
OpenSSL并未提供版本之间的稳定API。因此,尽管OS X提供了OpenSSL库,但OS X中的OpenSSL库已被弃用,并且从未将OpenSSL作为iOS的一部分提供。强烈禁止应用程序使用OS X OpenSSL库。
具体来说,Apple发行的最新版本的OpenSSL是2013年2月5日的OpenSSL 0.9.8y,似乎没有将来自较新版本的OpenSSL的错误重新移植到Apple版本的库代码中。
本文档的PDF为开发人员提供了一些明确的书面建议,以及对专业人士或注重安全性的用户有用的某些部分。
考虑到这一点,唯一剩下的问题将是针对OpenSSL构建的其他软件,例如,在Homebrew(brew update
其次为brew upgrade
)或MacPorts(port self update
其次为port upgrade openssl
)中的多个软件,以更新到已修补的OpenSSL 1.x版本。
另外,如果您有其他应用程序按照Apple的建议捆绑了该库,而不必依赖于Apple仍随附OS X的“安全”版本,则可以使用mdfind / mdls来检查名为openssl的文件。
for ff in `mdfind kMDItemFSName = "openssl"`; do echo "#### $ff"; mdls $ff | grep kMDItemKind; done
port selfupdate
后再运行,port upgrade openssl
将获得固定的1.0.1g版本。
我已经运行openssl version
每台Mac我就可以得到我的手1和所有这些表现:
OpenSSL 0.9.8y 5 Feb 2013
…包括当前最新版本:OS X 10.9.2。
因此,我可以得出结论,Heartbleed 不会影响OS X的任何版本。
1以及我无法但仅使用SSH的服务器-尽管仍在测试中,生产机器非常重要!总之,我测试了大约30台装有各种版本OS X的计算机。
虽然OS X并未附带受影响的OpenSSL版本,但仍强烈建议您这样做openssl version
,以防万一某个第三方软件包中已安装了该软件包。
例如,我的计算机报告OpenSSL 1.0.1f 6 Jan 2014
是因为它已作为我通过MacPorts安装的内容的依赖项而包括在内。sudo port upgrade outdated
当然解决了这个。
OpenSSL 1.0.1g 7 Apr 2014
安全/修补版本。