• 正文
    • Part 01●??固件獲取?●
    • Part 02●??固件脆弱性風(fēng)險(xiǎn)分析?●
    • Part 03●??總結(jié)?●
  • 相關(guān)推薦
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

智能家居安全防護(hù)之固件脆弱性風(fēng)險(xiǎn)分析

01/30 08:55 來(lái)源:中國(guó)移動(dòng)智慧家庭運(yùn)營(yíng)中心
1485
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

作者:朱時(shí)源、王曉明

物聯(lián)網(wǎng)中不同種類、功能各異的智能設(shè)備讓我們的生活變得更加舒適、更加美好。但與此同時(shí),物聯(lián)網(wǎng)設(shè)備的安全性卻經(jīng)常被人忽視。物聯(lián)網(wǎng)設(shè)備的安全性與使用者的財(cái)產(chǎn)安全、甚至是生命安全息息相關(guān)。固件作為每一個(gè)物聯(lián)網(wǎng)設(shè)備的核心組成部分尤其應(yīng)該受到各大廠商及相關(guān)研究人員的關(guān)注。在很多情況下,用戶并不會(huì)主動(dòng)升級(jí)固件版本,對(duì)固件本身的安全問(wèn)題由于了解甚少也不會(huì)投入過(guò)多關(guān)注。固件版本存在問(wèn)題,將直接影響用戶的設(shè)備安全。本文主要從路由器固件入手,對(duì)物聯(lián)網(wǎng)固件分析方式及脆弱性風(fēng)險(xiǎn)評(píng)估方式進(jìn)行說(shuō)明。

Part 01●??固件獲取?

對(duì)固件進(jìn)行研究的整個(gè)流程圖大致如圖1所示,包括固件提取、固件分析、固件解析和程序提取、固件逆向、固件仿真/硬件調(diào)試、漏洞挖掘等幾部分。

圖1 固件安全研究流程

進(jìn)行固件分析的前提條件就是固件的獲取,常用的固件提取方式有:

1、從相關(guān)品牌的廠商網(wǎng)站進(jìn)行下載;

2、在設(shè)備進(jìn)行固件更新時(shí)進(jìn)行截獲;

3、直接使用串口調(diào)試讀取芯片的方式進(jìn)行固件讀取。

固件中包含了很多研究人員感興趣的內(nèi)容,研究人員使用各種方式來(lái)對(duì)固件進(jìn)行研究,比如查看廠家對(duì)固件的保護(hù),是否封閉了UART及JTAG等引腳,是否從硬件物理上進(jìn)行了固件內(nèi)容防護(hù);固件是否加密;固件文件系統(tǒng)是怎么組織的,是否存在直接提取敏感信息的可能性,固件中的各個(gè)組件使用的某些通用庫(kù)是否存在漏洞;固件所支持的某些協(xié)議庫(kù),例如物聯(lián)網(wǎng)的一些協(xié)議,是否存在漏洞;固件所支持的web服務(wù),密碼是否可竊取,是否存在漏洞,例如遠(yuǎn)程執(zhí)行,信息泄露等。研究人員對(duì)這部分信息進(jìn)行研究,獲取基本的固件信息,對(duì)之后的固件安全分析工作來(lái)說(shuō)很有必要,多數(shù)情況下,通過(guò)對(duì)固件分析的前期操作,能獲得許多重要的息甚至是發(fā)現(xiàn)漏洞。

Part 02●??固件脆弱性風(fēng)險(xiǎn)分析?

2.1 藍(lán)牙mesh固件自動(dòng)化分析風(fēng)險(xiǎn)評(píng)估

因?yàn)椴煌放?、不同架?gòu)的廠商,為了設(shè)備安全,會(huì)對(duì)自己出廠的固件進(jìn)行不同的設(shè)置,那么在分析時(shí)獲取到的固件信息也不同,但總體差別不是很大。

在對(duì)固件初步分析時(shí)可以使用自動(dòng)化平臺(tái)進(jìn)行固件分析,自動(dòng)化的固件平臺(tái)能夠很好的對(duì)固件組件、固件架構(gòu)、文件系統(tǒng)等進(jìn)行深層次分析,包含此系列產(chǎn)品的歷史漏洞,漏洞時(shí)間、漏洞類型、補(bǔ)丁信息、文件目錄、組件信息等,查看固件存在哪些組件(通用組件包括u-boot、busybox、ntp、lighttpd、openssl、json-c、 libgcrypt、hostapd等),分析開源組件是否存在已知漏洞,進(jìn)行組件層面的脆弱性分析。通過(guò)使用固件自動(dòng)化安全分析平臺(tái),得到包含以下信息的固件分析報(bào)告:

① 設(shè)備web代碼漏洞。基于通用web技術(shù)如PHP、Javascript等開發(fā)web應(yīng)用導(dǎo)致了潛在的web漏洞風(fēng)險(xiǎn)。

② 軟件供應(yīng)鏈漏洞。開源基礎(chǔ)軟件包不及時(shí)更新,具有相似軟件供應(yīng)鏈,不同廠商的固件存在高度重合的產(chǎn)品廠商、型號(hào)。

③ 證書與秘鑰泄露

④ 不安全配置

⑤ Nday漏洞

開發(fā)人員在固件開發(fā)過(guò)程中會(huì)引用第三方軟件和庫(kù)提供功能開發(fā)的基礎(chǔ),比如busybox組件為固件系統(tǒng)中提供Linux命令操作基礎(chǔ);lighttpd組件為一款輕量級(jí)WebServer組件,為負(fù)責(zé)提供固件中的Web服務(wù);openssl組件為固件提供安全及數(shù)據(jù)完整的安全協(xié)議。但它們也被爆出過(guò)影響深遠(yuǎn)的歷史漏洞如busybox中的權(quán)限許可和訪問(wèn)控制漏洞,lighttpd中目錄遍歷漏洞,openssl中的心臟滴血漏洞等。

對(duì)固件進(jìn)行分析,能夠獲取整個(gè)固件的風(fēng)險(xiǎn)感知。圖二是使用固件自動(dòng)化安全分析平臺(tái)對(duì)某品牌路由器固件進(jìn)行分析時(shí),得到的固件分析結(jié)果。在獲取這部分固件信息后,結(jié)合手工分析時(shí)關(guān)注的重點(diǎn)信息可以建立此固件的風(fēng)險(xiǎn)分析信息庫(kù)。

圖2 某路由器固件自動(dòng)化安全分析結(jié)果-圖片來(lái)源于某品牌固件分析平臺(tái)

圖3 某品牌路由器固件分析風(fēng)險(xiǎn)信息庫(kù)-圖片來(lái)源于某品牌固件分析平臺(tái)

2.2 建立固件脆弱性風(fēng)險(xiǎn)分析方式

本文從常見(jiàn)的家用路由器品牌入手,總結(jié)了物聯(lián)網(wǎng)固件脆弱性分析方式,主要從產(chǎn)品基本配置信息和基礎(chǔ)組件脆弱性分析兩種方式入手。

(1)產(chǎn)品基本配置信息主要包括表1所包括的部分。

表1 產(chǎn)品基本配置信息

(2)基礎(chǔ)組件脆弱性分析主要從硬件風(fēng)險(xiǎn)分析和軟件風(fēng)險(xiǎn)分析入手。

硬件風(fēng)險(xiǎn)分析包括:

① 探測(cè)路由器的telnet,ssh,ftp等服務(wù)的相應(yīng)端口是否開放;

② 利用UART調(diào)試口訪問(wèn)設(shè)備,使用OpenWrt調(diào)試運(yùn)行程序;

③ 嘗試破解shadow文件密碼,查看運(yùn)行進(jìn)程和服務(wù);

④ 開放服務(wù)攻擊面。是否存在不安全配置,例如ssh配置允許root遠(yuǎn)程登錄等。

軟件風(fēng)險(xiǎn)分析主要重點(diǎn)關(guān)注口令,API Token,API Endpoint(URL),存在漏洞的服務(wù),后門賬戶,配置文件,源代碼,私鑰,數(shù)據(jù)的存儲(chǔ)方式等敏感性內(nèi)容。

對(duì)于固件的軟件風(fēng)險(xiǎn)分析,首先需要進(jìn)行固件文件系統(tǒng)提取,通常使用binwalk/firmware-mod-kit等固件分析工具查看固件的架構(gòu)類型,并提取對(duì)應(yīng)的固件文件系統(tǒng)。在此基礎(chǔ)上可以使用手工分析和自動(dòng)化分析兩種方式對(duì)固件進(jìn)行軟件風(fēng)險(xiǎn)分析。

手工分析主要是遍歷文件系統(tǒng)中不同的目錄,所有配置文件,查看Web目錄及開源軟件信息。明確web子目錄下確定開發(fā)語(yǔ)言和特征,關(guān)注http,tddp,upnp等網(wǎng)絡(luò)協(xié)議,尤其是自定義協(xié)議相關(guān)的二進(jìn)制文件,設(shè)備廠商自己開發(fā)的特定服務(wù)往往是被發(fā)現(xiàn)問(wèn)題最多的地方。還可以運(yùn)行busybox二進(jìn)制文件,獲取運(yùn)行程序和symlink等固件信息。

對(duì)于自動(dòng)化分析,主要使用自動(dòng)化分析工具進(jìn)行輔助分析,比如使用Firmwalker在固件文件系統(tǒng)中搜索敏感的文件,進(jìn)行已知脆弱性組件識(shí)別。對(duì)與SSL相關(guān)的文件,配置文件,腳本文件,二進(jìn)制文件,admin,password和remote 等關(guān)鍵字,常用的web服務(wù)等進(jìn)行已知脆弱性組件識(shí)別檢查是否使用弱口令或者已被公開的默認(rèn)賬號(hào)等;

通過(guò)固件自動(dòng)化分析風(fēng)險(xiǎn)評(píng)估結(jié)合固件脆弱性風(fēng)險(xiǎn)分析,可以針對(duì)固件進(jìn)行綜合性風(fēng)險(xiǎn)評(píng)估,形成風(fēng)險(xiǎn)評(píng)估規(guī)范性模板,建立當(dāng)前固件的風(fēng)險(xiǎn)信息表,輸出風(fēng)險(xiǎn)報(bào)告,從而對(duì)當(dāng)前所分析固件有更清楚更直觀的了解。

Part 03●??總結(jié)?

本文從物聯(lián)網(wǎng)(路由器)固件入手,將研究重點(diǎn)放在固件分析及脆弱性風(fēng)險(xiǎn)評(píng)估方式上。固件分析使用自動(dòng)化固件平臺(tái)分析結(jié)合手工分析關(guān)注的重點(diǎn)信息,建立包含固件常用組件、固件組件歷史漏洞、固件版本號(hào)、固件文件系統(tǒng)、固件敏感信息等信息的固件分析風(fēng)險(xiǎn)信息庫(kù)。與此同時(shí),本文從產(chǎn)品基本配置信息分析和基礎(chǔ)組件脆弱性分析兩種分析方式入手,總結(jié)形成了物聯(lián)網(wǎng)固件脆弱性分析方式,可以對(duì)固件的總體風(fēng)險(xiǎn)情況形成直觀感受。本文總結(jié)的固件脆弱性風(fēng)險(xiǎn)分析方式對(duì)于物聯(lián)網(wǎng)設(shè)備的安全研究來(lái)說(shuō)具備實(shí)際意義。

中國(guó)移動(dòng)

中國(guó)移動(dòng)

中國(guó)移動(dòng)有限公司(「本公司」,包括子公司合稱為「本集團(tuán)」)于1997年9月3日在香港成立,本集團(tuán)在中國(guó)內(nèi)地所有三十一個(gè)省、自治區(qū)、直轄市以及香港特別行政區(qū)提供通信和信息服務(wù),業(yè)務(wù)主要涵蓋個(gè)人、家庭、政企和新興市場(chǎng)的語(yǔ)音、數(shù)據(jù)、寬帶、專線、IDC、云計(jì)算、物聯(lián)網(wǎng)等,是中國(guó)內(nèi)地最大的通信和信息服務(wù)供應(yīng)商,亦是全球網(wǎng)絡(luò)和客戶規(guī)模最大、盈利能力領(lǐng)先、市值排名位居前列的世界級(jí)通信和信息運(yùn)營(yíng)商。

中國(guó)移動(dòng)有限公司(「本公司」,包括子公司合稱為「本集團(tuán)」)于1997年9月3日在香港成立,本集團(tuán)在中國(guó)內(nèi)地所有三十一個(gè)省、自治區(qū)、直轄市以及香港特別行政區(qū)提供通信和信息服務(wù),業(yè)務(wù)主要涵蓋個(gè)人、家庭、政企和新興市場(chǎng)的語(yǔ)音、數(shù)據(jù)、寬帶、專線、IDC、云計(jì)算、物聯(lián)網(wǎng)等,是中國(guó)內(nèi)地最大的通信和信息服務(wù)供應(yīng)商,亦是全球網(wǎng)絡(luò)和客戶規(guī)模最大、盈利能力領(lǐng)先、市值排名位居前列的世界級(jí)通信和信息運(yùn)營(yíng)商。收起

查看更多

相關(guān)推薦

登錄即可解鎖
  • 海量技術(shù)文章
  • 設(shè)計(jì)資源下載
  • 產(chǎn)業(yè)鏈客戶資源
  • 寫文章/發(fā)需求
立即登錄

移動(dòng)Labs是中國(guó)移動(dòng)的社交化新媒體平臺(tái),是面向外部行業(yè)及產(chǎn)業(yè)鏈合作伙伴的信息發(fā)布、業(yè)務(wù)發(fā)展和產(chǎn)業(yè)推進(jìn)門戶。