嚴(yán)重的隨機數(shù)生成器漏洞披露,數(shù)十億IoT設(shè)備受影響
研究人員披露了數(shù)十億物聯(lián)網(wǎng)(IoT)設(shè)備中使用的隨機數(shù)生成器嚴(yán)重漏洞,這意味著大量用戶面臨潛在攻擊風(fēng)險。
網(wǎng)絡(luò)安全組織Bishop Fox的研究人員Dan Petro和Allan Cecil在上周發(fā)表的一項分析中表示:
| “事實證明,在物聯(lián)網(wǎng)設(shè)備中,這些'隨機'選擇的數(shù)字并不總是像你希望的那樣隨機,在許多情況下,設(shè)備會隨機選擇0或更弱的加密密鑰,這可能導(dǎo)致任何上游服務(wù)器出現(xiàn)崩潰,從而面臨安全問題。” | 
隨機數(shù)生成(RNG)是一個支撐加密應(yīng)用的關(guān)鍵過程,其中包括密鑰生成、隨機數(shù)和加鹽。在傳統(tǒng)的操作系統(tǒng)中,RNG是由加密安全偽隨機數(shù)生成器 (CSPRNG)分化而來,后者使用了高質(zhì)量種子源中的熵。
在物聯(lián)網(wǎng)設(shè)備中,系統(tǒng)級芯片(SoC)裝有一個專門的硬件RNG外設(shè),稱為真隨機數(shù)生成器(TRNG),用于從物理過程或現(xiàn)象中捕獲“隨機性”。
研究人員指出,當(dāng)前調(diào)用外部設(shè)備的方式是不正確的,他們注意到因缺乏對錯誤代碼響應(yīng)的全面檢查,導(dǎo)致產(chǎn)生的隨機數(shù)不是簡單的隨機,更糟糕的是可預(yù)測的情況,包含部分熵、未初始化的內(nèi)存,甚至包含純零的密碼密鑰泄露。
| “RNG外圍設(shè)備的HAL功能可能因各種原因而失效,但到目前為止最常見的或者說最可利用的設(shè)備已經(jīng)耗盡了熵。硬件RNG外設(shè)通過各種方式(如模擬傳感器或電磁場讀數(shù))從宇宙中提取熵,但并不能夠無限供應(yīng)。” | 
RNG每秒鐘只能產(chǎn)生這么多的隨機位。如果在RNG HAL函數(shù)沒有任何隨機數(shù)可以給你的時候調(diào)用它,它就會失敗并返回一個錯誤代碼。因此,如果設(shè)備試圖過快的獲得太多的隨機數(shù),調(diào)用將失敗。
這個是物聯(lián)網(wǎng)領(lǐng)域的獨有的問題。因為物聯(lián)網(wǎng)設(shè)備通常缺乏帶有隨機性API的操作系統(tǒng)(例如,類似Unix的操作系統(tǒng)中的"/dev/random "或Windows中的BCryptGenRandom),研究人員認為與CSPRNG子系統(tǒng)相關(guān)的熵池有更大的好處,從而消除了 "熵源中的任何單點故障"。
雖然這些問題可以通過軟件更新來補救,但理想的解決方案是物聯(lián)網(wǎng)設(shè)備制造商和開發(fā)人員從一組不同的熵源中生成CSPRNG API,并確保代碼不會忽略錯誤條件,或在沒有更多的熵可用時能阻止對RNG的調(diào)用。
研究人員強調(diào):“這不是一個簡單的漏洞。為了防范這種風(fēng)險,物聯(lián)網(wǎng)操作系統(tǒng)中確實需要一個類似CSPRNG的復(fù)雜功能設(shè)計。”
















 
 
 







 
 
 
 