物聯(lián)網(wǎng) (IoT) 支持基于互操作通信技術的物理和虛擬設備的互連。最終,這將導致大部分電子設備具有網(wǎng)絡連接性——這些設備的每個制造商都必然會進入軟件業(yè)務。這將嵌入式軟件置于物聯(lián)網(wǎng)技術發(fā)展的中心,因為它現(xiàn)在是其關鍵技術基礎。
由于物聯(lián)網(wǎng)的發(fā)展,由于責任范圍擴大到全新的平臺和服務類別,對安全性的需求重新定義。Gartner 預測,超過 50% 的物聯(lián)網(wǎng) (IoT) 設備制造商將仍然無法解決安全實踐薄弱所帶來的威脅。雖然安全漏洞在任何情況下都是有問題的,但對于物聯(lián)網(wǎng)應用程序,當安全性受到威脅時,安全性可能會成為一個問題,因為其中一些為醫(yī)療設備、汽車、制造設備等安全關鍵產(chǎn)品提供動力。
一旦開發(fā)人員開始編寫代碼,安全漏洞就會進入產(chǎn)品,不幸的是,許多漏洞直到很久以后才被發(fā)現(xiàn)。物聯(lián)網(wǎng)設備通常不使用通常關注安全緩解措施的傳統(tǒng)互聯(lián)網(wǎng)協(xié)議。相反,許多人使用傳統(tǒng)互聯(lián)網(wǎng)協(xié)議和行業(yè)特定/專有協(xié)議的組合,這使得現(xiàn)有的滲透工具(例如針對 HTTP 接口或 SQL 注入攻擊的工具)更難應用于物聯(lián)網(wǎng)嵌入式設備。嵌入式協(xié)議幾乎不受現(xiàn)有滲透工具的影響,僅僅是因為它們不了解所使用的協(xié)議。
因此,未診斷的網(wǎng)絡安全漏洞可能仍然潛伏著。為了應對這種威脅,需要在開發(fā)過程中解決安全問題,因為在這些先進系統(tǒng)已經(jīng)發(fā)貨后重新設計它們的成本太高。開發(fā)安全的應用程序需要在開發(fā)的所有階段始終保持警惕。這意味著在目標硬件上編寫代碼、集成模塊和測試編譯的二進制文件時,使用能夠檢測可能漏洞的工具。
一種識別和測試安全漏洞的新方法
當今安全測試人員最常用的工具之一是靜態(tài)應用程序安全測試 (SAST)。SAST 旨在分析應用程序源代碼、字節(jié)代碼和二進制文件中的常見漏洞,包括可能導致潛在安全漏洞的編碼和設計條件。從理論上講,采用 SAST 是一種很好的開發(fā)實踐,因為它使開發(fā)人員能夠了解軟件是否存在任何問題、有多少問題以及它們在哪里以及在哪里。
但是,此方法不是一個包羅萬象的解決方案,因為 SAST 工具實際上并不執(zhí)行代碼。相反,他們試圖通過分析語法、語義和變量估計等元素以及控制和數(shù)據(jù)流來識別代碼中的問題,從而了解代碼在“幕后”所做的事情,以識別錯誤所在。
SAST 工具通常也是基于規(guī)則的,并且在開發(fā)周期的后期運行,單獨使用的結果可能會產(chǎn)生潛在的誤報(當工具報告可能的漏洞而不是實際漏洞時)。這通常會讓安全工程師在識別真正的漏洞時尋找“大海撈針”。此外,許多 SAST 工具僅有助于零風險部分的代碼,以幫助開發(fā)人員更有效地發(fā)現(xiàn)缺陷,而不是自動發(fā)現(xiàn)實際的安全問題。這可能導致耗時的過程和不完整的分析,這可能對軟件開發(fā)過程有害。
為了解決這些問題,有一些新的動態(tài)單元測試方法通過生成測試用例和確認可利用性來實際暴露軟件缺陷。利用 MITRE 的常見弱點枚舉 (CWE) 分類,該方法使用自動化軟件測試方法來詢問應用程序的軟件代碼并識別可能的弱點。
社區(qū)開發(fā)的 CWE 列表用作描述架構和代碼中軟件安全漏洞的通用語言,并且是用于檢測此類潛在漏洞的工具的標準通用詞典。在 CWE 分類中,使用動態(tài)測試可以突出漏洞的許多弱點 - 特別是任何具有硬錯誤的東西,例如使用空指針或除以零。
使用動態(tài)測試,一旦發(fā)現(xiàn)潛在的 CWE,就會生成并執(zhí)行利用已識別問題的測試。執(zhí)行后,測試工具可以分析執(zhí)行跟蹤并確定潛在的 CWE 是否是真正的威脅。然后可以將該問題歸類為常見漏洞和暴露 (CVE)。

【圖1 | 動態(tài)單元測試方法可以通過生成測試用例并確認可利用性來暴露軟件缺陷。一旦發(fā)現(xiàn)潛在的 CWE,就會生成并執(zhí)行利用已識別問題的測試。執(zhí)行后,測試工具會分析執(zhí)行軌跡并判斷潛在的 CWE 是否是真正的威脅,然后將其歸類為 CVE。]
該方法基于導致特定軟件問題的執(zhí)行的“綜合”(例如,自動構建利用給定漏洞的動態(tài)測試),允許識別和自動測試未診斷的網(wǎng)絡安全漏洞。然后將此漏洞利用的構建與其動態(tài)執(zhí)行配對,以確定漏洞是否可利用。這種類型的動態(tài)測試對代碼進行前期分析,以檢測可能包含誤報的潛在問題(類似于靜態(tài)分析器)。但是,一旦確定了潛在問題,它還會嘗試執(zhí)行“自動漏洞利用構建”。
與基于靜態(tài)分析的方法不同,這種類型的軟件安全測試只會在真正可利用的情況下標記問題,從而減少誤報問題。測試工件的生成允許它們將來重新執(zhí)行,以證明軟件重新設計后潛在問題的緩解。
這變得至關重要,因為隨著新技術不斷發(fā)展改變威脅格局,安全性比以往任何時候都更加重要。每個開發(fā)團隊都需要一個全面的流程來實現(xiàn)其應用程序安全目標。動態(tài)測試可以通過生成測試用例并確認可利用性來更明確地發(fā)現(xiàn)漏洞,從而進一步暴露軟件中的缺陷,最終創(chuàng)建更安全的產(chǎn)品。
審核編輯:郭婷
-
物聯(lián)網(wǎng)
+關注
關注
2947文章
47911瀏覽量
416089 -
IOT
+關注
關注
190文章
4406瀏覽量
208876
發(fā)布評論請先 登錄
地平線智駕安全基座榮獲SGS ISO 26262功能安全產(chǎn)品證書
導遠電子獲得DEKRA德凱ISO 26262 ASIL-D汽車功能安全產(chǎn)品認證
SGS為商湯絕影頒發(fā)ISO 21448預期功能安全產(chǎn)品認證證書
Lora基站在物聯(lián)網(wǎng)應用的重要性
芯源半導體在物聯(lián)網(wǎng)設備中具體防護方案
請問如何協(xié)同工作來保障物聯(lián)網(wǎng)設備固件安全的?
在物聯(lián)網(wǎng)設備面臨的多種安全威脅中,數(shù)據(jù)傳輸安全威脅和設備身份安全威脅有何本質區(qū)別?
學習物聯(lián)網(wǎng)可以做什么工作?
ADI安全產(chǎn)品如何簡化不同機器人控制系統(tǒng)中安全機制的實現(xiàn)
解決物聯(lián)網(wǎng)世界中對更安全產(chǎn)品的需求
評論