?在本文中,我們將列出十大最常見的汽車及嵌入式網(wǎng)絡(luò)安全漏洞?
漏洞10:數(shù)字錯誤 Numeric Errors
數(shù)字錯誤可以指幾類不同的問題,包括:
包圍錯誤。
數(shù)組索引的不正確驗證。
整數(shù)溢出。
字節(jié)排序不正確。
數(shù)字類型之間的轉(zhuǎn)換不正確。
數(shù)字錯誤占所有漏洞的3%。
不正確的計算。
數(shù)字錯誤漏洞的一個常見位置是在數(shù)學(xué)計算。另外,如果數(shù)據(jù)從一個溢出,它就會受到這種漏洞的影響。
漏洞9:密碼學(xué)問題Cryptographic Issues
與密碼學(xué)的使用有關(guān)的弱點,經(jīng)常讓許多開發(fā)者感到困惑。實踐中有很多動作可以導(dǎo)致密碼學(xué)問題,包括:
敏感數(shù)據(jù)的加密缺失。
密鑰管理錯誤。
缺少所需的加密步驟。
加密強度不足。
使用不安全或有風(fēng)險的加密算法。
使用可逆的單向散列。
未正確使用隨機初始化。
不適當(dāng)?shù)厥褂肦SA算法。
漏洞8:代碼注入Code Injection
任何人都可以向移動應(yīng)用程序發(fā)送不受信任的數(shù)據(jù),包括外部用戶、內(nèi)部用戶、應(yīng)用程序本身或移動設(shè)備上的其他惡意應(yīng)用程序。攻擊者加載簡單的基于文本的攻擊,這些攻擊利用移動應(yīng)用程序中目標解釋器的語法。而幾乎任何數(shù)據(jù)源都可以是注入向量。 作為社區(qū)中的一個常見漏洞。盡管這個漏洞主要出現(xiàn)在網(wǎng)站開發(fā)中,但當(dāng)涉及到汽車的信息娛樂系統(tǒng)和其他復(fù)雜的嵌入式系統(tǒng)時,它仍然經(jīng)常存在。
漏洞7:代碼Code
將代碼作為自己的漏洞可能看起來很奇怪,但我們談?wù)摰氖侨魏尾粚儆谔囟悇e的東西——所以認為這是一個包羅萬象的漏洞。形如:
密碼管理不善、存儲明文密碼、硬編碼密碼。
API 合同處理不當(dāng)。
錯誤處理不當(dāng)或缺失。
不恰當(dāng)?shù)靥幚頃r間和狀態(tài)。
代碼錯誤占所有漏洞的 4.4%。
代碼生成問題。
重要的是,開發(fā)人員不要自己進行加密——這顯然不值得。,因為逆向工程非常容易,當(dāng)它的表現(xiàn)不如預(yù)期時,這也將讓許多工程師感到沮喪和尷尬。
漏洞6:資源管理Resource Management Errors
錯誤資源管理錯誤包括許多事情,如:
系統(tǒng)資源管理不當(dāng)。
不受控制的資源消耗。
將私人資源轉(zhuǎn)移到新領(lǐng)域。
資源釋放或關(guān)閉不當(dāng)。
非對稱資源消耗。
資源鎖定。
雙重免費,免費后使用。
資源池不足。
沒有非堆內(nèi)存。
盡管這些問題在 C 和 C++ 等語言中更為常見,但牢記它們始終很重要。用Python和Java編碼的人常常認為他們對資源管理錯誤是免疫的,但事實并非如此。在這些語言中,很容易在不知不覺中達到內(nèi)存耗盡的地步,而沒有意識到它正在發(fā)生。
漏洞5:不當(dāng)?shù)脑L問控制 Improper Access Control
不當(dāng)?shù)脑L問控制是指軟件不限制或錯誤地限制未授權(quán)的參與者對資源的訪問。包括:
權(quán)限管理不當(dāng)。
所有權(quán)管理不當(dāng)。
授權(quán)不當(dāng)。
不正確的用戶管理。
不正確的身份驗證。
來源驗證錯誤。
對預(yù)期端點的通信通道限制不當(dāng)。
漏洞 4:輸入驗證不當(dāng)Improper Input Validation
不正確的輸入驗證包括從可能影響程序控制流或數(shù)據(jù)流的任何內(nèi)容中獲取不正確或缺失的信息。包括以下內(nèi)容:
不正確的路徑名限制。
不正確的路徑名等效解析。
配置設(shè)置的外部控制。
不適當(dāng)?shù)闹泻停钭⑷搿QL 注入、跨站點腳本等)。
缺少 XML 驗證。
不正確的日志無效化。
對內(nèi)存緩沖區(qū)邊界的限制不當(dāng)。
不正確的數(shù)組索引驗證。
復(fù)制到緩沖區(qū)而不檢查大小。
不正確的空終止。
通常來說,開發(fā)人員從外部世界獲取信息的任何地方都可能包含在此漏洞中。
漏洞3:信息泄露Information Exposure
信息泄露是指有意或無意地將信息透露給未經(jīng)明確授權(quán)的行為者。這種信息暴露往往是通過以下方式發(fā)生的。如:
發(fā)送的數(shù)據(jù)。
數(shù)據(jù)查詢。
差異性。
錯誤信息。
調(diào)試信息。
進程環(huán)境。
緩存。
索引私人數(shù)據(jù)。
開發(fā)人員往往會忘記通過錯誤消息和調(diào)試消息以及任何可能會進入日志文件的信息而泄露信息。出于這個原因,開發(fā)人員需要注意日志文件中的所有內(nèi)容,并確信那里沒有任何可能對攻擊者有價值的信息。
漏洞2:訪問控制Access Control
訪問控制是與管理權(quán)限、特權(quán)或其他安全功能有關(guān)的任何弱點。包括:
沙盒問題(chroot環(huán)境)。
權(quán)限問題(不適當(dāng)?shù)睦^承,允許的默認值,顛覆權(quán)限的符號鏈接。不當(dāng)?shù)臋?quán)限保存,等等)。
不當(dāng)?shù)乃袡?quán)管理。
不當(dāng)?shù)脑L問控制
漏洞1:內(nèi)存緩沖區(qū)問題Memory Buffer Problems
當(dāng)軟件可以讀取或?qū)懭雰?nèi)存緩沖區(qū)邊界之外的位置時,就會出現(xiàn)內(nèi)存緩沖區(qū)問題。包括:
在復(fù)制時不檢查輸入的大小。
允許寫到任意位置的錯誤。
結(jié)語:如何在黑客虎視眈眈中保持安全
通過持續(xù)關(guān)注上述 Top10 漏洞,可以確保代碼保持相對安全。當(dāng)然,及時發(fā)現(xiàn)了解資產(chǎn)的漏洞并加載補丁也是至關(guān)重要的——因為新的問題不斷會被發(fā)現(xiàn)。
Source: Top 10 Embedded Software Cybersecurity Vulnerabilities whitepaper
審核編輯 :李倩
-
嵌入式
+關(guān)注
關(guān)注
5046文章
18832瀏覽量
298788 -
漏洞
+關(guān)注
關(guān)注
0文章
203瀏覽量
15264 -
數(shù)組
+關(guān)注
關(guān)注
1文章
411瀏覽量
25830
發(fā)布評論請先 登錄
相關(guān)推薦
評論