【物聯網安全】系列之三:物聯網設備安全評估的七種武器
接上篇文章:
物聯網發展迅猛,正加速滲透到生產、消費和社會管理等各領域, 物聯網設備規模呈現爆發性增長趨勢,自 2015 年至 2020 年,物聯網終端年均復合增長率為 33%,安裝基數將達到 204 億臺,其中三分之二為消費者應用。在聯網的消費者和企業設備的投資為 2.9 萬億美元,年均復合增長率高達 20%,將超過非聯網設備的投資。物聯網設備已經逐步滲透到人們生產生活的方方面面,為人們及時了解自己周圍環境以及輔助日常工作帶來便利。但隨著互聯緊密度的增高,物聯網設備的安全性問題也逐漸影響到人們的正常生活,甚至生命安全,物聯網設備安全不容小覷。
由于物聯網的迅速發展,以及物聯網設備呈現出來的低成本、低安全的趨勢導致黑客將目標從傳統的IT設備轉移到物聯網設備。
針對物聯網設備的安全評估,這里總結七種評估方式,從七個方面對設備進行安全評估,最終形成物聯網設備的安全加固方案,提升黑客攻擊物聯網設備的成本,降低物聯網設備的安全風險。
第一種武器:硬件接口
通過對多款設備的拆解發現,很多廠商在市售產品中保留了硬件調試接口。例如一般為10 針、14 針和20 針的可以控制CPU的運行狀態、讀寫內存內容、調試系統代碼的 JTAG接口以及一般為4針的可以查看系統信息與應用程序調試的串口,俗稱COM口。通過這兩個接口訪問設備一般都具有系統最高權限。例如研究人員可以通過串口訪問LG home-bot的文件系統以及在安全評估,針對這些硬件接口的利用主要是為了獲得系統固件以及內置的登陸憑證。
第二種武器:弱口令
目前物聯網設備大多使用的是嵌入式linux系統,賬戶信息一般存放在/etc/passwd 或者 /etc/shadow 文件中,攻擊者拿到這個文件可以通過John等工具進行系統密碼破解,也可搜集常用的弱口令列表,通過機器嘗試的方式獲取系統相關服務的認證口令。臭名昭著的Mirai 和 Rowdy惡意代碼中就存在弱口令列表,一旦發現認證通過,則會進行惡意代碼傳播。弱口令的出現一般是由廠商內置或者用戶不良的口令設置習慣兩方面造成的。
第三種武器:信息泄漏
多數物聯網設備廠商可能認為信息泄露不是安全問題,但是泄露的信息極大方便了攻擊者對于目標的攻擊。例如在對某廠商的攝像頭安全測試的時候發現可以獲取到設備的硬件型號、硬件版本號、軟件版本號、系統類型、可登錄的用戶名和加密的密碼以及密碼生成的算法。攻擊者即可通過暴力破解的方式獲得明文密碼。
第四種武器:未授權訪問
攻擊者可以不需要管理員授權,繞過用戶認證環節,訪問并控制目標系統。主要產生的原因如下:
- 廠商在產品設計的時候就沒有考慮到授權認證或者對某些路徑進行權限管理,任何人都可以最高的系統權限獲得設備控制權。
- 開發人員為了方便調試,可能會將一些特定賬戶的認證硬編碼到代碼中,出廠后這些賬戶并沒有去除。攻擊者只要獲得這些硬編碼信息,即可獲得設備的控制權。
- 開發人員在最初設計的用戶認證算法或實現過程中存在缺陷,例如某攝像頭存在不需要權限設置session的URL路徑,攻擊者只需要將其中的Username字段設置為admin,然后進入登陸認證頁面,發現系統不需要認證,直接為admin權限。
第五種武器:遠程代碼執行
開發人員缺乏安全編碼能力,沒有針對輸入的參數進行嚴格過濾和校驗,導致在調用危險函數時遠程代碼執行或者命令注入。例如在某攝像頭安全測試的時候發現系統調用了危險函數system,同時對輸入的參數沒有做嚴格過濾,導致可以執行額外的命令。
第六種武器:中間人攻擊
中間人攻擊一般有旁路和串接兩種模式,攻擊者處于通訊兩端的鏈路中間,充當數據交換角色,攻擊者可以通過中間人的方式獲得用戶認證信息以及設備控制信息,之后利用重放方式或者無線中繼方式獲得設備的控制權。例如通過中間人攻擊解密HTTPS數據,可以獲得很多敏感的信息。
第七種武器:云(端)攻擊
近年來,物聯網設備逐步實現通過云的方式進行管理,攻擊者可以通過挖掘云提供商漏洞、手機終端APP上的漏洞以及分析設備和云端的通信數據,偽造數據進行重放攻擊獲取設備控制權。例如2015年HackPwn上公布的黑客攻擊TCL智能洗衣機。
上面總結了七種物聯網安全設備的評估方法,識別出物聯網設備的安全弱點,最終目的是要通過各種加固方式消除安全隱患。
物聯網安全加固方案
為了降低物聯網設備受攻擊的概率,可以通過如下的手段進行安全加固。
- 物聯網設備在設計之初就需要考慮硬件、應用和內容可信,保證攻擊者無法獲取以及篡改相關資源。
- 在物聯網設備中確保沒有后門指令或者后門代碼。針對用戶認證,需要設計成在第一次配置和使用設備時由用戶進行自行設置并需要設置強口令策略。在發行版本中去除調試版本代碼,將JTAG接口和COM口進行隱藏,同時關閉例如SSH,telnet等不安全的服務。
- 產品開發過程中需要遵循安全編碼規范,減少漏洞產生,降低潛在風險。
- 物聯網設備需要以全局唯一的身份加入到物聯網中,設備之間的連接需要可信認證。
- 在通訊過程中或者數據存儲過程中需要使用強加密算法(例如 AES)進行數據加密和認證(例如SHA256 簽名算法)。密鑰使用非對稱加密進行傳輸。
- 在設備上市前進行專業的產品安全測試,降低物聯網設備安全風險。
- 內置安全機制,增加漏洞利用難度,廠商可以通過增量補丁方式向用戶推送更新,用戶需要及時進行固件更新。
- 用戶處建議部署廠商提供的安全解決方案。
【本文是51CTO專欄作者“綠盟科技博客”的原創稿件,轉載請通過51CTO聯系原作者獲取授權】