哪些版本的OS X受Heartbleed影响?


55

受影响的OpenSSL版本默认使用哪些OS X版本?

关于Heartbleed错误,目前所有Internet通信都被相同的通用信息所阻塞,而无需在环境中关注Macintosh。我正在寻找有关Mac OS X客户端以及Mac OS X服务器的信息。现在,对于环境中的所有Mac来说,检查其特定版本的OpenSSL是不切实际的,但是我已经有了受影响机器的Mac OS X版本信息。


与用于连接到Web服务器的客户端相比,Web服务器更关心此问题。即使您的计算机没有OpenSSL的Heartbleed版本,您的信息也可能会受到威胁。
ⱮarkƬ

1
@Mark为真,但是如果有人想要运行将自己的机器变成网络服务器并使用内置版本的OpenSSL的应用程序,会发生什么?Mac应用程序可能没那么多,但这就是为什么我也询问OS X服务器的原因。尽管很多移动应用都试图实现该功能,但移动可能会受到更大的影响。
MDMoore313

但是,整个问题在很大程度上忽略了以下事实:危险不是客户端计算机,而是服务器。如果您要访问的服务器已经受到威胁,那么无论您运行的是MacOS X还是Windows 95都无关紧要,您正在访问的服务器可能正在泄漏该服务器有关您的任何信息。仅当您使用自己的Mac作为服务器时,才有意义。
gnasher729 2014年

2
不对。该漏洞可以被用来通过恶意服务器针对其使用OpenSSL进行连接的客户端。
迈克尔·汉普顿

3
@ gnasher729没有理由您不能对自己感觉不到的问题提出另一个问题。该问题解答范围狭窄,侧重于哪些版本的OS X可能由于编程错误而将其内存内容公开给网络。这并不是要对任何Mac用户甚至是任何较大的用户进行一般风险评估。
bmike

Answers:


63

不会影响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发行的最新版本的OpenSSL2013年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

8
对于使用MacPorts的用户,他们还发布了更新的OpenSSL。先运行port selfupdate后再运行,port upgrade openssl将获得固定的1.0.1g版本。
coredumperror 2014年

1
@CoreDumpError谢谢您-我确实将您的命令嵌入答案中,以便人们可以清楚地在自制“食谱”旁边看到它。
bmike

还值得注意的是,苹果的客户端软件使用的是苹果自己的代码安全传输,而不是 OpenSSL。使用Cocoa或Core Foundation API通过'Net进行通信的任何软件也是如此。
2014年

好奇心:您知道苹果为什么停止使用OpenSSL吗?
罗伯托


16

我已经运行openssl version每台Mac我就可以得到我的手1和所有这些表现:

OpenSSL 0.9.8y 5 Feb 2013

…包括当前最新版本:OS X 10.9.2。

因此,我可以得出结论,Heartbleed 不会影响OS X的任何版本

1以及我无法但仅使用SSH的服务器-尽管仍在测试中,生产机器非常重要!总之,我测试了大约30台装有各种版本OS X的计算机。


>在处理TLS心跳扩展中缺少边界检查可用于向连接的客户端或服务器显示多达64k的内存。> **仅通过openssl.org会影响OpenSSL的1.0.1和1.0.2-beta版本,包括1.0.1f和1.0.2-beta1。** (添加了重点)。正如grgarside所说的…
dwightk 2014年

@dwightk问题是有关哪些OS X版本具有受影响的OpenSSL版本之一。不过,所影响的OpenSSL版本众所周知。
MDMoore313

10

虽然OS X并未附带受影响的OpenSSL版本,但仍强烈建议您这样做openssl version,以防万一某个第三方软件包中已安装了该软件包。

例如,我的计算机报告OpenSSL 1.0.1f 6 Jan 2014是因为它已作为我通过MacPorts安装的内容的依赖项而包括在内。sudo port upgrade outdated当然解决了这个。


3
是OS X(不是OSX)。
Peter Mortensen 2014年

@Peter Mortensen:已修正:)
DanielPerván2014年

而且,如果您使用的是1.x,那么理想情况下,您会看到OpenSSL 1.0.1g 7 Apr 2014安全/修补版本。
drfrogsplat
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.