比Heartbleed 更嚴重的資安防護震撼彈 – Shellshock

2014年4月爆發了OpenSSL Heartbleed漏洞,其威脅性在於只要啟動了OpenSSL中Heartbeat這個提高連線效率的擴充程式,就有機會遭到程式自動重覆猜測,以獲取記憶體中的機敏訊息而2014年9月被發現的Shellshock漏洞,比起Heartbleed則是更加嚴重的,許多Unix-like的伺服器普遍存在這個漏洞,或許在這個漏洞被揭露前即已長期被利用!

造成Shellshock的漏洞原因,在於bash在輸出環境變數,若存在「() { :;};」這個神奇字串,即可在寫入環境變數時,在其後加入攻擊指令,並在開啟新的子bash shell時,攻擊指令會被執行。

詳細的漏洞原理,請參考ASRC 垃圾訊息研究中心的詳細說明
<http://www.asrc-global.com/article_09.html>
http://www.asrc-global.com/article_09.html

這個漏洞乍看之下,似乎僅影響登入本機的使用者,可透過此漏洞繞過受限的shell功能;事實上,這個漏洞的影響層面十分廣泛,凡是存在此漏洞的伺服器所使用的程式語言、對外網路服務,只要服務或撰寫的程式語言有呼叫bash指令,就有機會被利用。此漏洞爆發之初,最先大範圍受害的為Web服務,若您為系統管理者,建議您可以檢查各種對外服務的log檔,並搜尋其中是否存在「() { :;};」這個神奇字串,或許您可在其中看到不少的攻擊嘗試。郵件伺服器也存在被攻擊的危險,qmail郵件伺服器就是一例,只要假裝對其發送郵件,並在輸入寄件人資訊時,刻意輸入「() { :;};」,其後便能接上任何的攻擊指令。

多數知名的Unix-like作業系統 (CentOS、Debian、Fedora、Ubuntu、Gentoo在漏洞爆發前的版本) 都已針對此漏洞釋出修補程式,建議您應盡速更新修補此漏洞。若您的系統在更新修補前,已經存在這個漏洞,在您更新修補後,應詳查各種log、暫存檔及自動、定時服務的設定檔…等,確認系統未遭到任何非預期的植入或改寫。除了自行架設的Unix-like系統外,容易被忽略的是外購的現成網路服務設備,比方各種Router與NAS,其作業系統所使用的Shell很可能也是bash,並且所提供的服務也受此漏洞影響,建設您務必速洽這些設備的開發商尋求合宜的修補程序。