百胜报道更新的bash,但二进制仍然报告旧版本

我试图更新一个CentOS 5系统,以修补CVE-2014-6271 / RHSA-2014:1293-1中描述的bash漏洞,但遇到了一个问题。

通过yum update bash看起来成功更新bash并重新启动服务器后, yum list bash列出已安装的版本为已修补(3.2.33.e15.1),但/bin/bash --version正在显示3.2.25(1) -发布。

通过所有帐户(通过rpm -ql bash ),二进制位置是正确的, find / -name bash只返回一个位置。

任何想法,为什么版本差异可能会发生?

事实certificate,尽pipe版本差异,更新是成功的。 运行示例input成功之前没有:

 user [~]# env x='() { :;}; echo vulnerable' bash -c "echo this is a test" bash: warning: x: ignoring function definition attempt bash: error importing function definition for `x' this is a test 

在红帽,他们通常会修补旧版本,而不是直接更新到最新版本,以免破坏任何系统。 由于这只是一个漏洞修补程序,它确保二进制文件和整个软件包保持向后兼容。

您可以使用rpm来检查软件包的更新日志。 这样你总是可以validation你是否使用了最新的backported版本。

# rpm -q --changelog <the rpm package that just got installed>