楊雨橋,趙博,王宇洋,王進杰,向云帆
(1.成都信息工程大學電子工程學院;2.成都信息工程網(wǎng)絡空間安全學院;3.成都信息工程大學控制工程學院,四川 成都 610000)
在2020年的世界信息安全大會上提出“新基建以安全為本”的主題,近年來,利用網(wǎng)絡安全技術(shù)對網(wǎng)絡能夠到達的領(lǐng)域的保護已有成效,但在網(wǎng)絡不易到達的硬件安全領(lǐng)域,存在著很多易被發(fā)現(xiàn)、易被利用的漏洞,這些安全漏洞會造成巨大的信息泄露以及財產(chǎn)損失,因此本文對電子信息工程在硬件安全中的應用進行探討,具有現(xiàn)實性研究意義。
電子信息工程是利用軟硬件進行信息處理和控制的技術(shù),它往往與計算機技術(shù),物聯(lián)網(wǎng)技術(shù),通信技術(shù)相結(jié)合,不僅出現(xiàn)在人們的日常生活如:智能手機、平板電腦等,還應用于工業(yè)控制領(lǐng)域。隨著社會的發(fā)展,芯片的能力越來越強,電子信息工程還有很大的發(fā)展空間。
硬件安全主要包括硬件設計的安全、固件安全、APP安全、物聯(lián)網(wǎng)安全、通信協(xié)議安全。硬件設計安全涉及到芯片安全、PCB板的安全、硬中斷安全;固件安全分為OS和非OS,往往通過逆向工程對其分析;APP應用的平臺通常是IOS和安卓,物聯(lián)網(wǎng)設備常會用APP進行人機交互,所以APP里可能出現(xiàn)安全隱患;通信安全包括設備各模塊之間的通信、與外部設備的通信、網(wǎng)絡通信和無線電通信的安全。
電子信息工程主要是通過硬件與系統(tǒng)命令相結(jié)合的方式處理信息,可以實現(xiàn)信息的批量,快速處理,所以其有便捷性。隨著現(xiàn)代科學技術(shù)的不斷發(fā)展,硬件設備也隨之進步,處理信息的速度得到更大程度提高的同時,其體積也可以制作的小巧,易攜帶,更加突出了電子信息工程的便捷性。
電子信息工程,可以根據(jù)需求對現(xiàn)有行業(yè)內(nèi)的架構(gòu)進行裁剪拼接,體現(xiàn)其專用性,也可集成多種功能于一體,來適應現(xiàn)實生活中的各種問題,體現(xiàn)出可集成性,總體突出其靈活性。
電子信息工程因為可以處理和應用信息,這一功能決定了電子信息工程覆蓋面廣,對信息進行處理和應用在各個行業(yè)中都是需要的。而且,隨著集成電路的發(fā)展,電子信息工程可以處理的信息種類和信息量也在迅速增加,覆蓋面會更加的廣闊。
安全問題主要出現(xiàn)在嵌入式的產(chǎn)品中和嵌入式的開發(fā)過程中,本節(jié)對各個層面面臨的安全問題進行一個簡單的分析總結(jié),如圖1所示。
圖1
(1)硬件層面。在一個嵌入式設備的體系中,硬件層的安全問題,往往是最致命的,如果攻擊者發(fā)現(xiàn)硬件底層的漏洞,并加以利用,就可以控制整個設備。
通過調(diào)試接口攻擊。調(diào)試接口往往是第一項被攻擊的地方,通過不安全的調(diào)試接口可以獲得最高權(quán)限的shell,進而攻擊者可以進行嚴重的破壞。flash芯片。設備的固件通常儲存在flash芯片上,如果在沒有設置讀-寫保護權(quán)限的情況下,攻擊者可以通過技術(shù)手段簡單的讀取flash芯片上的固件,進行固件逆向分析,以繞過接口訪問的認證。側(cè)信道分析攻擊。硬件進行加密時,會附帶產(chǎn)生一些物理狀態(tài)信息,如運行時間、功耗等,攻擊者可以利用上述信息通過其他算法,得到加密硬件所使用的的秘鑰進行破解。節(jié)點復制攻擊。Zhou等人指出攻擊者可以使用一個受其控制的虛擬設備替換掉受害者的真實設備,所有來自受害者用戶的控制命令都會暴露給這個虛擬設備,進而暴露給攻擊者.攻擊者還可以遠程接管設備,獲取傳感器讀取到的內(nèi)容來監(jiān)控受害者的家,甚至操控智能家居設備,造成數(shù)據(jù)泄漏。這種新的攻擊方式極大地擴展了嵌入式設備的攻擊層面。
(2)系統(tǒng)層面。固件修改。Basnight等人描述了攻擊者怎樣惡意修改固件,并將其上傳到可編程控制邏輯器上的過程,攻擊者可以通過逆向工程,得到固件更新的規(guī)律,由此修改配置文件,進而在固件更新中注入惡意代碼。操作系統(tǒng)。通常嵌入式設備移植的操作系統(tǒng)版本較低,不會及時更新,從而存在版本的漏洞,例如CVE-2017-1000405,攻擊者可以利用此漏洞輕易地繞過常用的漏洞防御方法,并且此漏洞的影響范圍廣,linux2.6.38以上的內(nèi)核都有可能有此隱患。此外因為硬件空間的限制與符合特定的功能要求,嵌入式設備的操作系統(tǒng)通常經(jīng)過裁剪與拼接,這符合電子信息工程的靈活性,但也因此可能會留下安全隱患。最后操作系統(tǒng)中存在很多公司自身編寫的驅(qū)動程序,拒絕服務攻擊或執(zhí)行惡意代碼都可能憑借此中漏洞完成。
(3)應用軟件層面。后門。利用設備中存在的用戶名和密碼進行攻擊,例如CVE-2020-29583,Zyxel產(chǎn)品中的后門漏洞,Niels Teusink等人描述了如何利用此漏洞,獲取用戶設備密碼,從而控制設備,這對中小企業(yè)無疑是毀滅性的打擊。第三方代碼復用。為了減少嵌入式設備的開發(fā)周期和降低開發(fā)難度,企業(yè)通常會采用第三方組件,但往往安全人員缺少安全意識,忽略組件的安全代碼審計,導致在產(chǎn)品中引入安全問題。例如CVE-2017-5638 第三方組件Apache Struts2曝出的高危漏洞。
(4)網(wǎng)絡服務層面。嵌入式網(wǎng)絡包括像HTTP,MQTT等這樣的上層協(xié)議,也含有像Bluetooth,WiFi等下層協(xié)議。遠程管理接口不安全。隨著物聯(lián)網(wǎng)技術(shù)的發(fā)展,嵌入式設備常常會提供遠程接口,但大部分是采用弱口令,甚至明文的通信協(xié)議。攻擊者可以通過此漏洞,獲取用戶信息,與構(gòu)建僵尸網(wǎng)絡。暴力搜索。攻擊者通過相關(guān)工具,掃描設備開放的端口,對端口的弱密碼進行腳本爆破,達到暴力破解的目的。
根據(jù)吳文慶闡述的工程化嵌入式系統(tǒng)開發(fā)方法,本節(jié)以此探討開發(fā)流程中可能存在的安全問題立項與調(diào)研。一方面在了解用戶需求的時候,未考慮到用戶的一些誤操作可能會導致設備安全出現(xiàn)問題被攻擊者利用。另一方面,在歸總開發(fā)成本時,縮減,甚至抹除硬件安全防護的預算。系統(tǒng)需求分析。在歸納需求時,忽略用于安全防護的功能或措施,系統(tǒng)分析員安全意識薄弱,在編寫《系統(tǒng)需求說明書》時,未編寫合理的安全防護措施。
系統(tǒng)設計與實現(xiàn)。在軟件設計方面和硬件設計方面都有可能因為社會的因素或個人的因素存在安全設計的漏洞,例如在軟件設計方面的Phantom設備攻擊
在硬件設計方面,可能因為設計缺陷存在著無關(guān)項硬件木馬。更多請參考3.2節(jié)調(diào)試、運行與維護。根據(jù)聶剛等人的闡述在此階段對設備進行的安全測試多為風險評估服務、安全加固服務、滲透測試服務。根據(jù)付明明的闡述,風險評估服務需要大量的安全行業(yè)經(jīng)驗,先進的安全技術(shù)以及足夠的時間和資金,對預算不足,工期緊張的項目,會留下部分安全隱患;根據(jù)馮溫迪對邊緣設備的安全加固的研究,和周俊禮電力信息網(wǎng)絡安全的加固方案,可以看出很多低級漏洞是在開發(fā)初期造成的,設備成型時,再發(fā)現(xiàn)進行安全加固,甚至返工,浪費多余的人力物力;很多嵌入式產(chǎn)品是ARM,MIPS,PowerPC結(jié)構(gòu),對應的滲透工具也運行在相應架構(gòu)上,且大多運行著如Linux操作系統(tǒng),RT—Thread,FreeRTOS,uC/OS等 實時操作系統(tǒng),而在電腦的X86架構(gòu)上模擬合適的環(huán)境對滲透人員也是一個不小的挑戰(zhàn)。不僅如此,對于滲透團隊而言,把太多精力浪費在低級的漏洞上,而對于一些困難并且危害巨大的漏洞往往因為時間的不充足等原因,而無法發(fā)現(xiàn),從而損害被滲透方的利益,與滲透方的名譽。目前,硬件安全從業(yè)人員供不應求,滲透測試成本較高,一些初創(chuàng)公司或個人難以承擔。
本節(jié)主要討論利用電子信息工程的便捷,靈活,和覆蓋范圍廣的特點,來解決硬件安全領(lǐng)域出現(xiàn)的問題,和彌補傳統(tǒng)信息安全技術(shù)對于硬件安全的不足。通過其對設備進行保護,和對設備進行滲透的兩個角度進行討論,如圖2所示
圖2
對于開發(fā)者,電子信息技術(shù)不止是開發(fā)的工具,還可以是保護設備的手段。
(1)硬件層面?!敖忖忂€須系鈴人”,傳統(tǒng)的安全技術(shù)難以對硬件層面進行保護,但我們可以用電子信息工程本身的技術(shù)來進行防御。OTP技術(shù)。采用OTP(One Time Programmable)儲存單元,利用其只可編程一次的特點對重要的固件等二進制文件進行存儲,防止攻擊者的篡改。
FPGA抗側(cè)信道攻擊。FPGA抗側(cè)信道攻擊的方法有時鐘擾亂法、高頻電路法、寬總線設計法,隨著社會的進步,時鐘擾亂,高頻電路法已不能滿足當代的安全需求,但寬總線設計法仍可以進行保護,李新超等人描述了一種使用寬總線法FPGA抗側(cè)信道攻擊的策略。抵抗硬件木馬。硬件木馬的攻擊,想通過軟件層防御幾乎不可能實現(xiàn),例如無關(guān)項木馬,只能利用電子信息工程本身的技術(shù)進行解決,例如屬性驅(qū)動的硬件安全驗證方法。偽裝IC。主要通過偽裝IC電路,來對抗IC逆向工程。楊然等人闡述了一種局部偽裝的IC保護方法LPerturb,簡單來說是硬件實現(xiàn)的,對于硬件的混淆。檢測惡意干擾波。在雷達遙感,自動駕駛,車聯(lián)網(wǎng)的發(fā)展下,毫米波雷達得到了廣泛應用,所以無線電安全變得尤為重要。李方偉等人闡述了干擾態(tài)勢感知方案,檢測惡意干擾波,可以利用電子信息工程的便捷性,將此方案用嵌入式方法實現(xiàn),安裝到實際設備上,使之廣泛使用。
(2)系統(tǒng)層面。關(guān)閉串口交互.可以用在啟動配置文件中加入關(guān)閉uboot,內(nèi)核,根文件系統(tǒng)的串口交互腳本,防止通過串口的信息泄露。外部檢測與保護。對于一些空間不足的嵌入式設備,可以利用電子信息工程的便捷性,制作外部嵌入式設備,運行保護程序。定制不同系統(tǒng)漏洞掃描工具。為了適應硬件設備多種多樣的操作系統(tǒng),可以利用電子信息工程的專用靈活性,制作不同操作系統(tǒng)的便捷式外部嵌入式設備,運行檢測不同系統(tǒng)的掃描工具,通過接口與被檢測設備連接進行檢測。固件反逆向。為了應對固件攻擊,對抗固件逆向需要加強固件反逆向技術(shù),例如崔晨[25]等人闡述的固件中斷向量表重構(gòu)技術(shù)。減少多余驅(qū)動程序。為了減少被攻擊者利用的風險,應在保證設備正常穩(wěn)定運行的基礎(chǔ)上,較少多余的驅(qū)動程序。
(3)網(wǎng)絡層面。由3.2.4節(jié)介紹,硬件設備的網(wǎng)絡通信多種多樣,并存在安全隱患,為了避免遠程管理接口,暴力搜索等安全隱患,我們就需要雙向的簽名驗證,以檢測設備身份。為了簽名驗證的安全性,可以結(jié)合電子信息工程采用硬件級加密算法。例如使用FPGA,將驗證從軟件層移挪到FPGA中,再結(jié)合不斷發(fā)展的密碼學增加驗證的安全性。這種驗證方法不僅可以體現(xiàn)FPGA并行計算的優(yōu)勢,提高驗證速度,還因為此方法采用黑盒攻擊破解幾乎不可能,利用逆向工程來獲取設計需要攻擊者較高的技巧和大量的時間??滋豙26]等人闡述了一種Zigbee通信協(xié)議中利用FPGA進行硬件認證和加密的算法。
電子信息工程在硬件安全的應用不止對開發(fā)者有益處,還對安全滲透者有一定的幫助。
(1)硬件層面。接口集成。為了方便調(diào)試被滲透設備,利用電子信息工程的可集成靈活性制做集成UART,JTAG,I2C,SPI等接口的工具,用以滲透調(diào)試。發(fā)出惡意干擾。根據(jù)武玲娟等人對硬件木馬的研究提供的基于頻率掃描的木馬檢測方法,采集設備在不同時鐘頻率下的電路時延,在特定的時鐘頻率下可能會激發(fā)硬件木馬,以用來檢測。
(2)系統(tǒng)層面。檢測內(nèi)核版本,獲取CVE報告。根據(jù)3.2.2節(jié)描述的問題,可以編寫一個滲透工具,其通過檢測設備內(nèi)核版本,利用CVE技術(shù)尋找版本漏洞,供滲透人員參考。檢測后門。根據(jù)3.2.3節(jié)描述的問題,可以編寫一個滲透工具,其通過掃描固件二進制文件,尋找用戶名和密碼,以檢查后門。檢測弱密碼,弱口令。根據(jù)3.2.4節(jié)描述的問題,可以編寫一個掃描設備開放端口的滲透工具,進行暴力搜索,以檢測弱密碼,與弱口令。
結(jié)合實際的生產(chǎn)情況與工作環(huán)境,本節(jié)充分利用電子信息工程的特點對上節(jié)提到的部分解決方法進行歸類優(yōu)化,已得到更切實際的解決措施。
首先制作一個嵌入式設備,為了體現(xiàn)電子信息工程的便捷性,此設備需制作得相對小巧,便于攜帶運送。為了體現(xiàn)電子信息工程的專用靈活性,此設備專用于硬件安全,其功能一方面是設備的防護,另一方面是設備的滲透。同時,移植制作適配此載體的不同操作系統(tǒng)固件,以應對被滲透,和被保護設備操作系統(tǒng)的多樣性。
為了充分體現(xiàn)電子信息工程的可集成靈活性,我們對4節(jié)所提及的部分功能分防護和滲透兩方面在5.1節(jié)描述的載體上進行集成。
(1)防護功能集成化。其一將4.1.1提到的干擾態(tài)勢感知方案用硬件方法實現(xiàn);其二將4.1.2的關(guān)閉串口交互腳本,外部防護程序,漏洞掃描程序,集成到載體上;其三可以內(nèi)置適當資源的FPGA,用于進行設備硬件的加密與驗證功能。
(2)滲透功能集成化。其一集成4.2.1提及的眾多硬件接口,發(fā)射惡意干擾的硬件電路;其二集成4.2.2描述的檢測后門,弱口令,弱密碼,和搜索CVE的程序腳本。
集成到一個嵌入式載體上解決了3.3節(jié)描述的安全問題,原因為其便捷性,可以進行快遞運送,在開發(fā)過程中隨時隨地進行安全監(jiān)測,而且對于在內(nèi)網(wǎng)中運行的設備,也可以進行檢測;此裝置利用電子信息工程的特點降低了滲透測試的成本與技術(shù)門檻,提高了安全測試的廣泛性,甚至讓個人開發(fā)者也可以享受到安全測試,與滲透人員一起工作提高效率。
綜上所述,加大電子信息工程在硬件安全的應用,不僅對于人們生活,更是對社會發(fā)展具有重要影響,利用電子信息工程的特點解決硬件安全中的問題,對當今社會的快速發(fā)展具有非常重要意義。