您的位置:首頁 > 菜鳥學(xué)院 > SecureRandom漏洞技術(shù)分析詳解(CVE-2013-7372)

SecureRandom漏洞技術(shù)分析詳解(CVE-2013-7372)

來源:互聯(lián)網(wǎng) | 時間:2015-03-12 16:08:10 | 閱讀:56 |  標(biāo)簽: 漏洞 遠(yuǎn)程攻擊 網(wǎng)絡(luò)安全   | 分享到:

控制SecureRandom API的配置文件位于$JAVA_HOME/jre/lib/security/java.security。比如我們可以配置該文件里的securerandom.source屬性來指定SecureRandom中使用的seed的來源。比如使用設(shè)備相關(guān)的源,可以這樣設(shè)置:

securerandom.source=file:/dev/urandom securerandom.source=file:/dev/random

關(guān)于SecureRandom具體技術(shù)細(xì)節(jié),可參看文后參考鏈接2。

現(xiàn)在重點(diǎn)看下SecureRandomSpi抽象類,文件見鏈接3。該抽象類為SecureRandom類定義了功能接口,里面有三個抽象方法engineSetSeed,engineGenerateSeed,and engineNextBytes。如果Service Provider希望實(shí)現(xiàn)加密強(qiáng)度較高的偽隨機(jī)數(shù)生成器,就必須實(shí)現(xiàn)這三個方法。

然而Apache Harmony 6.0M3及其之前版本的SecureRandom實(shí)現(xiàn)中engineNextBytes函數(shù)存在安全漏洞。

0×03 Apache Harmony’s SecureRandom實(shí)現(xiàn)

Apache Harmony 是2005年以Apache License發(fā)布的一個開源的java核心庫。雖然2011年以后已宣布停產(chǎn),但是這個項(xiàng)目作為Google Android platform的一部分繼續(xù)被開發(fā)維護(hù)。

Apache Harmony's SecureRandom實(shí)現(xiàn)算法如下:

SecureRandom漏洞技術(shù)分析詳解(CVE-2013-7372)

Android里的PRNG使用SHA-1哈希算法、由操作系統(tǒng)提供的設(shè)備相關(guān)的種子來產(chǎn)生偽隨機(jī)序列。隨機(jī)數(shù)是通過三部分(即seed+counter+ padding)反復(fù)哈希求和計(jì)算產(chǎn)生的。算法如下圖

SecureRandom漏洞技術(shù)分析詳解(CVE-2013-7372)

其中計(jì)數(shù)器counter從0開始,算法每運(yùn)行一次自增一。counter和padding部分都可以稱為buffer。Padding遵守SHA-1的填充格式:最后的8 byte存放要hash的值的長度len,剩下的部分由一個1,后面跟0的格式進(jìn)行填充。最后返回Hash后的結(jié)果,也就是生成的偽隨機(jī)序列。

0×04 Apache Harmony’s SecureRandom漏洞細(xì)節(jié)

當(dāng)使用無參構(gòu)造函數(shù)創(chuàng)建一個SecureRandom實(shí)例,并且在隨后也不使用setSeed()進(jìn)行初始化時,插入一個起始值后,代碼不能正確的調(diào)整偏移量(byte offset,這個offset是指向state buffer的指針)。這導(dǎo)致本該附加在種子后面的計(jì)數(shù)器(8 byte)和padding(起始4 byte)覆蓋了種子的起始12 byte。熵的剩下8 byte(20 byte的種子中未被覆蓋部分),使得PRNG加密應(yīng)用無效。

小編推薦閱讀

好特網(wǎng)發(fā)布此文僅為傳遞信息,不代表好特網(wǎng)認(rèn)同期限觀點(diǎn)或證實(shí)其描述。

相關(guān)視頻攻略

更多

掃二維碼進(jìn)入好特網(wǎng)手機(jī)版本!

掃二維碼進(jìn)入好特網(wǎng)微信公眾號!

本站所有軟件,都由網(wǎng)友上傳,如有侵犯你的版權(quán),請發(fā)郵件[email protected]

湘ICP備2022002427號-10 湘公網(wǎng)安備:43070202000427號© 2013~2025 haote.com 好特網(wǎng)