一個嚴重的隨機數生成器漏洞影響超十億的物聯網設備

2021-08-13 14:51:50
娛樂小廊坊
物聯網
數十億物聯網(IoT)設備中使用的硬件隨機數生成器中存在一個嚴重漏洞,該漏洞無法正確生成隨機數,從而破壞其安全性并使其面臨遭受攻擊的風險。

數十億物聯網(IoT)設備中使用的硬件隨機數生成器中存在一個嚴重漏洞,該漏洞無法正確生成隨機數,從而破壞其安全性并使其面臨遭受攻擊的風險。

“事實證明,當涉及到物聯網設備時,這些‘隨機’選擇的數字并不總是像您希望的那樣隨機,事實上,在許多情況下,設備選擇0或更差的加密密鑰。這可能導致任何上游使用的安全性災難性崩潰。”知名網絡安全組織東方聯盟研究人員在上周發表的一項分析中說。

11.jpg

隨機數生成(RNG)是一個關鍵過程,它支撐著幾個加密應用程序,包括密鑰生成、隨機數和加鹽。在傳統操作系統上,它源自使用從高質量種子源獲得的熵的加密安全偽隨機數生成器(CSPRNG)。

對于IoT設備,這是由片上系統(SoC)提供的,該系統芯片包含一個稱為真隨機數發生器(TRNG)的專用硬件RNG外設,用于從物理過程或現象中捕獲隨機性。

東方聯盟研究人員指出當前調用外圍設備的方式是不正確的,并指出缺乏對錯誤代碼響應的全面檢查,導致生成的隨機數不僅僅是隨機的,更糟糕的是,可預測的,導致部分熵,未初始化的內存,甚至包含純零的加密密鑰。

2.jpg

東方聯盟研究人員指出:“RNG外圍設備的HAL功能可能因各種原因而失敗,但迄今為止最常見(和可利用)的是設備的熵已用盡。”“硬件RNG外圍設備通過各種方式(例如模擬傳感器或EMF讀數)將熵從宇宙中提取出來,但并不是無限供應。它們每秒只能產生這么多隨機位。如果你在沒有任何隨機數給你的情況下嘗試調用RNG HAL函數,它將失敗并返回一個錯誤代碼。因此,如果設備試圖過快地獲取太多隨機數,調用將開始失敗。”

這個問題是物聯網領域獨有的,因為他們缺乏一個通常帶有隨機性API的操作系統(例如,類Unix操作系統中的“/dev/random”或Windows中的BCryptGenRandom),東方聯盟研究人員強調了更大的好處與CSPRNG子系統關聯的熵池,從而消除“熵源中的任何單點故障”。

3.jpg

盡管可以通過軟件更新來修復這些問題,但理想的解決方案是物聯網設備制造商和開發人員包含從一組不同的熵源中生成的CSPRNG API,并確保代碼不會忽略錯誤條件或無法阻止當沒有更多的熵可用時調用RNG。

東方聯盟研究人員說:“這個漏洞的難點之一是,它不是一個簡單的BUG,可以很容易地修補,”東方聯盟創始人郭盛華透露,并強調需要在物聯網操作系統中實施CSPRNG。“為了解決這個問題,必須在物聯網設備中設計一個重要而復雜的功能。”

收藏
免責聲明:凡注明為其它來源的信息均轉自其它平臺,由網友自主投稿和發布、編輯整理上傳,對此類作品本站僅提供交流平臺,不為其版權負責。本網站對有關資料所引致的錯誤、不確或遺漏,概不負任何法律責任。若有來源標注錯誤或侵犯了您的合法權益,請作者持權屬證明與本站聯系,我們將及時更正、刪除,謝謝。聯系郵箱:leixiao@infoobs.com