跳到主要內容區塊

ntuccepaper2019

技術論壇

Personal NAS 資安防護
  • 卷期:v0033
  • 出版日期:2015-06-20

作者:李美雯 / 臺灣大學計算機及資訊網路中心網路組程式設計師


網路附加儲存(Network Attached Storage,NAS),是一種資料儲存技術的名稱,主要是由一個內嵌的OS與數個大容量硬碟所組成,並可經由網路提供其他設備共用檔案共用的服務,也可以提供使用者經由網路存取資料存取服務。而Shellshock(CVE-2014-6271),利用了這個技術的相關漏洞,對含有Bash Shell系統漏洞的設備進行攻擊。本文將針對如何防範及修補此漏洞之要點作說明,以降低個人或企業上的損失。

 

簡介Personal NAS使用原理概述

網路附加儲存(Network Attached Storage,NAS),是一種資料儲存技術的名稱,主要是由一個內嵌的OS與數個大容量硬碟所組成,並可經由網路提供其他設備共用檔案共用的服務,也可以提供使用者經由網路存取資料也可以提供使用者資料存取服務。
NAS系統通常會有一個以上的硬碟,而且和傳統的檔案伺服器一樣,會把所有硬碟組成獨立磁碟備援陣列(Redundant Array of Independent Disk,RAID)提供服務。網路上的其他伺服器可以利用NAS進行檔案存取,而不需具備檔案伺服器的功能。
NAS的優點在於使用者可以直接連結NAS進行檔案存取,不需存取其他檔案伺服器,使用者不會因為某些伺服器關閉而無法進行資料存取。NAS也可以讓資料管理變得更加輕鬆及簡單,讓原本需要在伺服器上進行的繁複設定程序,簡化成幾個安裝步驟就可完成,大大的節省設定的時間與難度。NAS也可讓使用者可建立私人雲端資料存取服務,透過網際網路連線,NAS可以讓各種裝置在居家或外出時輕鬆進行資料存取。

 

駭客使用ShellShock攻擊Personal NAS

2014年9月,法國的軟體開發人員Stephane Chazelas發佈Shellshock(CVE-2014-6271)漏洞,這個Bash Shell漏洞主要出現在定義的環境變數後面,例如在Linux環境下的Webserver,攻擊者可修改封包的Header,加上一串 () { :;}; 的符號字串,這個字串可利用系統漏洞,對含有Bash Shell的系統進行攻擊,可執行符號字串後的任意程式碼,而這類攻擊被稱之為Shellshock。
利用Shellshock漏洞與Linux的語法,可在不經過認證的情況下取得攻擊端電腦之權限與資料,駭客甚至可以利用此漏洞執行惡意程式碼或是植入木馬程式。目前駭客利用Shellshock攻擊的手法有下列幾種:
1. 攻擊網頁伺服器CGI
2. 惡意DHCP伺服器以感染連線的使用者
3. 繞過Git與Subversion伺服器的限制進行攻擊
以同樣使用Linux作業系統的QNAP網路儲存裝置(NAS)為例,舊版本存在Shellshock漏洞(新版本現已更新),故可利用前述的攻擊方式,在未經授權的情況下讓QNAP NAS執行任意程式碼,以達到竊取資料或攻擊其他目標之目的。
儘管QNAP官方在Shellshock漏洞出現後釋出修補漏洞的更新程式,但官方統計至2014年10月5日全臺仍存在Shellshock漏洞的QNAP NAS裝置,發現真正有進行更新漏洞的使用者幾乎不到1成,也就是說仍有9成的QNAP NAS仍暴露在風險之中,使得駭客輕易利用該漏洞滲透企業內部網路,進而獲取企業內部資料。接下來,以QNAP為範例做為Shellshock攻擊流程之說明。
由於QNAP的控制頁面同樣為CGI網頁伺服器,因此駭客以一些特定條件先掃描IP進行過濾。一般來說QNAP使用的Port為8080且為Apache網頁伺服器,因此可以利用這兩個規則做為過濾條件進行篩選。


圖一 漏洞掃描結果

 

找到可能含有漏洞之IP位址,將其IP後方上” :8080/cgi-bin/xxxxxxxx”,接著確認裝置名稱與其系統版本。


圖二 確認漏洞版本

 

尚未更新至4.1.2版本之軟體有Shellshock漏洞風險,將指令塞入封包之HTTP Header令其Ping特定IP,可以看到在Ping指令前面加上一串 () { :;}; 的符號字串以利用該系統漏洞。


圖三 攻擊字串

 

在被Ping之主機上進行封包側錄,可以發現確實有收到QNAP裝置傳來Ping的事件封包,代表此裝置確實存在Shellshock漏洞。


圖四 攻擊結果

 

結論

Shellshock漏洞主要的攻擊目標是含有bash的Linux系統,因此受害範圍相當廣泛,但並非含有漏洞的bash版本就會遭受攻擊,要成功的執行Shellshock攻擊依然需要許多其他的條件,目前較需要注意的設備或伺服器如下:
  ● 特定 Linux 版本,並且使用 DHCP 連線
  ● 網路、資安設備
  ● 使用 CGI 的網站伺服器
  ● 已經公布含有弱點的套件

 

當發生Shellshock漏洞的攻擊時,應儘速將Bash升級至最新版本以修補該漏洞,尤其是針對使用含有漏洞版本的Bash之Linux設備,如QNAP更新至4.1.2便可修補該漏洞。若是屬於規模較大的單位,則以設備重要性之優先順序進行更新。
此外,學校可使用入侵防禦系統(IPS)、網站應用程式防火牆(WAF)等防禦設備阻擋Shellshock攻擊,評估是否停用安全性較低的CGI伺服器機制,改用其它替代方案,另可以強化使用Linux系統之伺服器的資安等級,如使用增強安全性的SELinux或AppArmor等。
Shellshock影響相當廣泛,各廠商也推出新的系統更新以解決此漏洞,只要將伺服器bash版本升級至最新版本,並持續關注官方後續更新訊息,定期檢查企業使用網路設備是否在各家廠商系統更新名單內,及早發現修補更新設備,便可防堵此漏洞。

 

參考資料

1. CVE-2014-6271
https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2014-6271
2. Shaolinon(2014) , Shellshock (Bash CVE-2014-6271) 威脅仍在擴大中
http://devco.re/blog/2014/09/30/shellshock-CVE-2014-6271/
3. Shellshock (software bug) - Wikipedia, the free encyclopedia
http://en.wikipedia.org/wiki/Shellshock_(software_bug)
4. 余至浩(2014) , 雅虎遭駭!Shellshock出現首宗大型網站災情
http://www.ithome.com.tw/news/91432

 

本文轉載自臺灣大學計資中心北區學術資訊安全維運中心