Centos
Yum 報告更新了 bash 但二進制仍然報告舊版本
我正在嘗試更新 CentOS 5 系統以修補CVE-2014-6271 / RHSA-2014:1293-1中描述的 bash 漏洞,但遇到了問題。
在通過看似成功地更新 bash
yum update bash
並重新啟動伺服器後,yum list bash
將安裝的版本列為已修補 (3.2.33.e15.1),但/bin/bash --version
顯示的是 3.2.25(1)-release。總而言之(通過
rpm -ql bash
),二進制位置是正確的,並且find / -name bash
只返回一個位置。關於為什麼會出現版本差異的任何想法?
事實證明,儘管版本存在差異,但更新是成功的。在以前沒有成功的地方執行範例輸入:
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
在 Red Hat,他們通常會修補舊版本,而不是直接更新到最新版本,以免破壞任何系統。由於這只是一個漏洞更新檔,它確保二進製文件和整個包保持向後兼容。
您可以使用
rpm
檢查包的更改日誌。這樣,您始終可以驗證您是否使用的是最新的反向移植版本。
# rpm -q --changelog <the rpm package that just got installed>