您是否知道破解物聯(lián)網(wǎng)設(shè)備是多么容易?除了顯而易見(jiàn)的 - 大多數(shù)物聯(lián)網(wǎng)設(shè)備缺乏安全性 - 這很容易,因?yàn)?a target="_blank">黑客可以使用一系列令人驚訝的軟件和硬件工具,這些工具往往使他們發(fā)現(xiàn)和利用物聯(lián)網(wǎng)漏洞的工作變得微不足道。這些工具利用不安全的接口,反編譯固件,模擬和分析代碼,以發(fā)現(xiàn)導(dǎo)致網(wǎng)絡(luò)漏洞的缺陷。沒(méi)有適當(dāng)網(wǎng)絡(luò)安全的物聯(lián)網(wǎng)設(shè)備可以在幾個(gè)小時(shí)內(nèi)被黑客入侵,如果沒(méi)有網(wǎng)絡(luò)安全,可以在幾分鐘內(nèi)被黑客入侵。
本文是系列文章的第三部分,該系列文章探討了現(xiàn)實(shí)世界的物聯(lián)網(wǎng)黑客攻擊以及如何解決暴露的漏洞。目標(biāo)是通過(guò)提供可緩解攻擊的控制措施,幫助您提高物聯(lián)網(wǎng)設(shè)備的網(wǎng)絡(luò)安全。在第一篇文章“從殖民地管道攻擊中吸取的教訓(xùn)”中,我們回答了為什么勒索軟件攻擊導(dǎo)致操作技術(shù)系統(tǒng)(即管道)關(guān)閉的問(wèn)題。第二篇題為《汽車網(wǎng)絡(luò)安全:進(jìn)展,但仍有改進(jìn)空間》,通過(guò)比較5年前的努力水平和攻擊結(jié)果與去年披露的攻擊結(jié)果,回顧了汽車網(wǎng)絡(luò)安全的進(jìn)展程度。
在這里,我們將回顧網(wǎng)絡(luò)對(duì)手用來(lái)攻擊物聯(lián)網(wǎng)設(shè)備的工具。揭露辦公室電話中真實(shí)漏洞的方法將說(shuō)明這些工具的用法。通過(guò)使用硬件和軟件工具,發(fā)現(xiàn)了許多缺陷。但是,基本安全功能(包括軟件更新和加密代碼)可緩解攻擊。在這種情況下,代碼加密不僅是為了保護(hù)敏感數(shù)據(jù),也是為了保護(hù)設(shè)備的整體安全免受這些黑客工具的攻擊,使代碼的純文本列表幾乎不可能獲得。
在33種不同的VoIP辦公電話中發(fā)現(xiàn)40個(gè)漏洞的工作是由弗勞恩霍夫FIT的斯蒂芬·胡貝爾和菲利普·羅斯科什完成的,并在DEFCON 27上進(jìn)行了介紹。發(fā)現(xiàn)的漏洞類型多種多樣。總共有13個(gè),包括錯(cuò)誤的加密,堆棧溢出以及無(wú)需身份驗(yàn)證即可更改的密碼。從閃存轉(zhuǎn)儲(chǔ)固件以訪問(wèn)代碼的純文本列表被廣泛使用。這對(duì)逆向工程工作和識(shí)別漏洞有很大幫助。靜態(tài)和動(dòng)態(tài)分析都用于提取的純文本代碼。如果這些手機(jī)包括安全啟動(dòng),閃存加密和安全軟件更新,那么訪問(wèn)純文本列表并找到要利用的弱點(diǎn)將變得更加困難。
嘗試獲取純文本代碼通常是黑客采取的第一步。由于純文本列表的價(jià)值,嘗試了許多不同的方法來(lái)提取它。在這項(xiàng)研究中,一個(gè)是檢查固件是否直接從制造商處獲得。另一種方法是觸發(fā)軟件更新,如果未加密,則嗅探已下載網(wǎng)絡(luò)流量的數(shù)據(jù)包以獲取純文本代碼列表。使用 HTTPS(即加密)發(fā)送的更新可關(guān)閉此漏洞。第三種方法,也是最常用的方法,是從手機(jī)本身獲取代碼。
有數(shù)量驚人的逆向工程/黑客工具可用。電話研究使用工具來(lái)獲取root訪問(wèn)權(quán)限,提取代碼并模擬提取的代碼。用于提取代碼的工具包括快速優(yōu)化和 JTA 檢測(cè)器。兩者都使用串行終端和來(lái)自PC的USB連接。BuSPIrate被描述為“開(kāi)源黑客多工具”。它可以與 I2C、SPI、JTAG 和其他幾個(gè)接口接口。JTA 檢測(cè)器將檢測(cè)與 JTAG/IEEE 1149.1、ARM 單線調(diào)試 (SWD) 或 UART 引腳的連接。當(dāng)電路板的調(diào)試接口未知時(shí),JTAGulator的檢測(cè)功能使建立連接變得更加容易,因?yàn)樗鼤?huì)自動(dòng)識(shí)別接口類型。它將通過(guò)不同的引腳排列運(yùn)行,并尋找與這三種協(xié)議之一的匹配。
一旦從手機(jī)中提取了純文本代碼,就使用軟件模擬工具。其中包括QEMU和獨(dú)角獸。QEMU是一個(gè)開(kāi)源的模擬器/虛擬化器,支持模擬特定的操作系統(tǒng)(Linux,視窗等)和指令集(MIPS,ARM,x86)。在這項(xiàng)研究中,QEMU工具的ARM / MIPS處理器內(nèi)核仿真功能與gdb一起使用,以獲取代碼痕跡。獨(dú)角獸是基于QEMU的CPU仿真器,但重量更輕,并提供一些附加功能,包括儀器儀表。
其他未用于手機(jī)安全研究但值得一提的仿真工具是Ghidra(由NSA開(kāi)發(fā)),IDA Pro和Angr。吉德拉和 IDA Pro 是逆向工程工具,支持對(duì)多種處理器類型(包括 x86、ARM、PPC、MIPS、MSP430 和 AVR32)的二進(jìn)制文件進(jìn)行反編譯。Angr 是用于分析二進(jìn)制文件的 Python 框架。它使用靜態(tài)和動(dòng)態(tài)符號(hào)分析。
由于這些工具很容易實(shí)現(xiàn)物聯(lián)網(wǎng)設(shè)備的逆向工程,從而揭示代碼中的漏洞,因此保護(hù)物聯(lián)網(wǎng)設(shè)備免受這些工具的利用至關(guān)重要。為了防止代碼被輕易提取,串行/JTAG接口應(yīng)該被鎖定。此外,對(duì)于縱深防御方法,代碼也應(yīng)該加密。這提供了另一層保護(hù),以防器件的接口受到損害,或者使用其他方法來(lái)破壞非易失性存儲(chǔ)器。
采用了多種方法從各種手機(jī)的閃存中獲取代碼。布施浦酸鹽和 JTA 檢測(cè)器器件用于通過(guò) SPI、UART 或 JTAG 接口獲得訪問(wèn)。已檢查 UART 接口是否具有命令接口的引導(dǎo)加載程序或?qū)?Linux 外殼的可能根訪問(wèn)權(quán)限。基于 IP 的方法會(huì)導(dǎo)致內(nèi)存轉(zhuǎn)儲(chǔ)和 Telnet 命令注入產(chǎn)生根訪問(wèn)權(quán)限。如果閃存中的代碼是加密的,則訪問(wèn)代碼清單將更加困難。
由于訪問(wèn)純文本代碼,多個(gè)漏洞被利用。如果沒(méi)有這些代碼清單,識(shí)別這些缺陷將更加困難。它們有助于識(shí)別以下漏洞:未經(jīng)授權(quán)遠(yuǎn)程更改管理員密碼,在代碼中找到管理員密碼的硬編碼密鑰以及弱密碼加密方案。在另一部手機(jī)中,使用了DES加密方案,該方案并不安全。DES于40多年前推出,現(xiàn)在可以使用一臺(tái)現(xiàn)代PC在合理的時(shí)間內(nèi)(幾天)進(jìn)行暴力破解。
這項(xiàng)工作中存在的許多漏洞在運(yùn)行時(shí)被利用。這突出了擁有良好運(yùn)行時(shí)保護(hù)的重要性,例如使用受信任的執(zhí)行環(huán)境,如TrustZone和入侵檢測(cè)系統(tǒng)(IDS)軟件,這些軟件可以檢測(cè)由于攻擊而導(dǎo)致的代碼操作變化。
審核編輯:郭婷
-
物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
2903文章
44269瀏覽量
371231 -
python
+關(guān)注
關(guān)注
56文章
4782瀏覽量
84452
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論