研究發(fā)現(xiàn),亞馬遜上銷量最好的50種消費級路由器都存在有安全漏洞,其中20款是出廠固件就可被黑客利用。但功能之戰(zhàn)和利潤收窄可能會導致進入不安全路由器時代。為確定該問題是否僅局限于消費市場,有必要對企業(yè)網(wǎng)絡應用的無線路由器進行評估。
買得起的消費級路由器品牌很多,企業(yè)設備就沒那么便宜了,能檢測完一個產(chǎn)品系列已是預算極限。于是,先用安卓WiFi分析器挑出真實世界環(huán)境被安裝最廣泛的品牌便是十分自然的事。Dell’Oro Group 的一份報告指出,Ruckus占據(jù)了2014年第4季度安裝數(shù)量的42%左右。因此,安全公司Tripwire選中了Ruckus作為用來評估的企業(yè)級路由器品牌。下面的內(nèi)容是如何在硬件設備中查找漏洞的方法和過程。
測試方法
為使對比有效,最好將測試限制在HTTP接口,并使用與查找消費級路由器漏洞相同的方法。
由于之前的一些路由器安全評估已建立起了一套有效測試過程,方法選擇上十分容易。在較高層級,測試員采用了手動模糊測試與部分自動化查詢相結合的方法,其中自動化查詢是建立在從固件抽取的信息和可用Shell訪問的信息上的。
今年早些時候,這些測試技術就在題為《洗腦嵌入式系統(tǒng)》的AusCERT教程中展示過。今年的 DEF CON 24 討論會和 SecTor 2016 訓練課也同樣分享了這些技術。
第一印象
在對昂貴的高端Ruckus型號測試前,不妨先用二手 Ruckus ZoneFlex 進行測試,當然,固件要升級到2015年10月27號的最新版。
經(jīng)過幾分鐘的設置,一個指令注入漏洞被發(fā)現(xiàn)。該漏洞源于缺乏跨站請求偽造(CSRF)標記的缺乏,因而通過一個簡單的偽造請求就便可輕松利用。在以前測試過的消費級路由器上,ZoneFlex為管理員提供執(zhí)行診斷的選項,包括了簡單的ping測試,但明顯沒有任何的輸入檢測。存在此漏洞的每一款消費級路由器上,這都是致命的。
盡管輕量級消費嵌入式設備通常都用root權限運行所有進程,想必一款企業(yè)級產(chǎn)品是會采用權限隔離的。ping操作明顯用不到什么特殊權限,用個訪問受限的普通用戶權限就夠了。但測試結果顛覆了想象。通過構造ping參數(shù)來產(chǎn)生一個telnet守護進程的測試竟然成功了,很輕松地拿到了root shell。
這一結果讓人確信:在當前型號中進行測試是有意義的。
分析 Ruckus HTTP 接口
谷歌一搜就會發(fā)現(xiàn),找到這個明顯的指令注入漏洞的人還真不少。
實驗用ZoneFlex機型早已停產(chǎn),上面的固件自然是老到不能再老的。本以為這種觸手可及的漏洞在新系列產(chǎn)品中應該已被補上,但用帶最新固件(版本號:100.1.0.0.432)的 Ruckus H500 做測試時,結果再一次令人震驚:這么簡單的ping注入竟然依然可以大行其道!從 Ruckus H500 設置的接入點獲取到shell后,還可以獲取到Web服務器文檔根目錄所含文件的列表,將黑客行動進一步深入。這一微不足道的過程既可以通過shell完成,也可以通過固件抽取來達成,甚至還可以定位嵌入到服務器二進制文件中的URI(統(tǒng)一資源標識符)。
對H500機型的測試中,除了固件更新里可見的文件,測試員并沒有染指其他文件。然后,文件列表被饋送給爬蟲腳本進行處理。該腳本可以爬取HTTP服務器并記錄下哪些文件不需要身份驗證就可讀取。
結果
與消費級設備中常見現(xiàn)象一樣,這一相當簡單的過程暴露出了一系列問題:
驗證規(guī)避:含有特定字符串的全部請求都收到了‘200 OK’響應。通過往其他請求中添加上該字符串,僅用于已驗證查詢的響應數(shù)據(jù)也可以被得到。NETGEAR、TrendNET、華碩,這些廠家的路由器中都存在這個問題。
拒絕服務:有個不需要身份驗證就能用HTTP訪問的特定頁面,如果通過SSL(安全套接字層)請求,會導致管理界面不可用。這對作為熱點使用時依靠HTTP的該產(chǎn)品而言,有可能造成嚴重后果。
信息暴露:該設備的序列號可被HTTP服務器暴露。這一問題會不會造成什么直接安全影響尚未可知,但攻擊者顯然可以將之用作社工工程策略的一部分。其他產(chǎn)品里面也發(fā)現(xiàn)了把序列號用作設備所有者證明的現(xiàn)象。
另外,特定頁面的驗證請求可能會觸發(fā)額外的內(nèi)存消耗,導致HTTP服務器重載,可能會影響到其他服務。這一攻擊方式可通過GET請求實現(xiàn),因此,HTML文檔或電子郵件里的惡意圖像標簽,就可以作為跨站請求偽造(CSRF)攻擊的途徑了。
Ruckus的響應
這不是Ruckus接入點的唯一漏洞,因此,測試員聯(lián)系了廠商。
與某些需要大費周章才能找到相應安全聯(lián)系人的廠商不同,Ruckus有網(wǎng)頁列出了PGP密鑰和電子郵件地址供報告漏洞。雖然這通常是有責任感企業(yè)的標志,但測試員不斷的報告嘗試還是遭到了踢皮球的待遇。
早在2016年1月,距離第一次向Ruckus報告1個月之后,測試員又向其他公布出來的安全聯(lián)系人電郵地址報告了多次。一名網(wǎng)站管理員回復說會建立個賬戶,但在重新發(fā)送了報告并要求接收確認后,沒有了下文。于是,當月稍晚些時候,測試員聯(lián)系了為該漏洞分配編號VU#974320的CERT,確認他們也無法獲得Ruckus的回復。
Ruckus不承認有收到過任何漏洞報告,直到Tripwire首席研究官大衛(wèi)·梅爾澤爾直接通過LinkedIn聯(lián)系到Ruckus的高層。
然后,測試員收到了自己1月份漏洞報告加密郵件的轉(zhuǎn)發(fā)副本,附帶一條收到確認請求。在之后的電話溝通中,測試員被告知,Ruckus未能解密該郵件信息,因而忽略了此份漏洞報告郵件,并且也根本不知道CERT曾嘗試聯(lián)系過他們。Ruckus還說,這些在HTTPS接口呈現(xiàn)的漏洞除非是在單機模式下運行,否則不會暴露出來。
這些聲明是否屬實尚未驗證,不過,對Ruckus產(chǎn)品做個全面的安全審計似乎是有必要的。
經(jīng)驗教訓
本次研究項目似乎證明了,“企業(yè)級”硬件在安全意義上未必具備企業(yè)級品質(zhì)。
Ruckus設備審計經(jīng)歷與其他當?shù)赜嬎銠C商店無線路由器的審計經(jīng)歷十分類似。事實上,身份驗證規(guī)避和指令注入基本上也是100~200美元的SOHO設備常見問題。
最大的不同在于,給Ruckus提交的安全報告被完全無視了幾個月之久,要等到“高管對高管”級的溝通出現(xiàn),報告才會會承認。使用Ruckus設備的公司企業(yè)有可能承受被黑的風險,尤其是這些接入點被用于為客戶提供WiFi接入的時候。
這些系統(tǒng)中混進了一個入侵者,就可能對該無線網(wǎng)絡中所有其他用戶形成中間人攻擊威脅,留下廣泛的漏洞利用機會。Ruckus宣稱只有單機接入點才會受影響,但測試員還沒找到機會評估這一斷言的真?zhèn)危膊磺宄螜C模式的使用頻率到底有多高。
本次企業(yè)級硬件安全漏洞找尋過程僅耗時一個晚上,評測機型也就一種,因此,覺得問題不會更多,或者其他運行模式就更安全的想法,是不嚴謹?shù)摹?/p>
想要了解該怎樣防護自己的嵌入式設備,可以看看這篇文章:《嵌入式設備防護5條安全建議》。
本次探尋過程時間線如下: