Bash 有漏洞要修補(Bash 3.x~Bash 4.3)(含mac)

Bash 有漏洞要修補(Bash 3.x~Bash 4.3)

Bash 出現漏洞,如果你在環境變數宣告時,bash也會相對的執行變數中帶有指令的命令,如果有心人事將此方式利用宣告變數的方式將惡意指令夾帶,那就可能替server帶來危機,比如宣告了一個變數x,內容為:

//-----------start-----------
env x='() { :;}; echo vulnerable'
//------------end------------

並且在後面加上你要執行的命令整個看起來:

//-----------start-----------
 env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
//------------end------------

如果你的結果是:

vulnerable
this is a test

以上命令來源為Redhat提供。

若出現 vunlerable 字樣,表示 Bash 有漏洞!echo vulnerable這行應該不能被解釋成命令的,但bash的關系,會直接當命令執行並回傳結果,請盡快更新避免問題發生,如果你的網站是執行CGI類型的更是需要馬上更新。

  • apt-get(Debian,Ubuntu,Mint…)
    apt-get update
    apt-get install --only-upgrade bash

  • yum(Fedora,CentOS,Redhat….)
    yum update bash

Mac 更新

2014/09/29 Apple 官方已經更新,支援 10.7.5、10.8.5、10.9.5 (都是各版本最後一版),有疑慮請盡快更新

About OS X bash Update 1.0

OS X bash Update 1.0

參考資料

Debian Security Advisory

Resolution for Bash Code Injection Vulnerability via Specially Crafted Environment Variables (CVE-2014-6271) in Red Hat Enterprise Linux

GNU Bash Environmental Variable Command Injection Vulnerability