2011年,德國(guó)魯爾大學(xué)的兩位博士花了3000美元和7個(gè)小時(shí)成功破解了Mifare DESFire MF3ICD40使用的安全算法,但這個(gè)破解在現(xiàn)實(shí)生活卻沒(méi)有任何價(jià)值,因?yàn)橐活wRFID芯片的價(jià)值只有幾分錢(qián),沒(méi)人傻到去花大錢(qián)去破解一個(gè)幾乎免費(fèi)的芯片。2019年,也是在魯爾大學(xué),霍斯特·戈茨IT安全研究所兩位博士Amir Moradi和Maik Ender博士與來(lái)自Bochum Max Planck研究所的Christof Paar博士在一項(xiàng)聯(lián)合研究項(xiàng)目中驚喜地發(fā)現(xiàn)FPGA中隱藏了一個(gè)安全漏洞(請(qǐng)注意 ,兩位博士用了vulnerability這個(gè)詞而不是Loophole,其實(shí)是說(shuō)這是一個(gè)脆弱性,隱憂(yōu),隱患,而不完全是個(gè)漏洞,很多媒體翻譯成漏洞,姑且就這樣說(shuō)吧)。他們稱(chēng)這個(gè)漏洞為“ StarBleed”。他們發(fā)現(xiàn),攻擊者可以利用此漏洞通同時(shí)攻破FPGA配置文件的加密(confidentiality)和鑒權(quán)(authenticity),并由此可以隨意修改FPGA中實(shí)現(xiàn)的邏輯功能。他們稱(chēng)這個(gè)漏洞并不能通過(guò)軟件補(bǔ)丁的方式修復(fù),一旦某個(gè)芯片被攻破,就只能通過(guò)更換芯片的方式修復(fù)。
這個(gè)發(fā)現(xiàn)讓很多自媒體首先高潮了,以為在CPU領(lǐng)域的安全漏洞已經(jīng)在FPGA領(lǐng)域重現(xiàn)。
但其實(shí)仔細(xì)看看這個(gè)所謂的“破解”,其所稱(chēng)的影響遠(yuǎn)沒(méi)有那么大。
首先,這次研究的是賽靈思的芯片,如果研究的是其他公司的芯片,是不是也有這個(gè)問(wèn)題?肯定會(huì)有!因?yàn)槠平馊藛T用的方法就是破解FPGA的比特流文件和或獲取鑒權(quán)密鑰這是所有FPGA都用的方法!
FPGA和CPU、ASIC等相比有很大不同,F(xiàn)PGA只相當(dāng)于一塊芯片半成品,它內(nèi)部只有大量的可編程邏輯資源和一個(gè)固化的硬核IP,也不需要運(yùn)行什么操作系統(tǒng),開(kāi)發(fā)者想要FPGA完成什么功能就把自己設(shè)計(jì)的系統(tǒng)邏輯導(dǎo)入到FPGA里,比如完成一個(gè)視頻編解碼,或者一個(gè)音頻處理等,要把自己的設(shè)計(jì)導(dǎo)入到FPGA里面,一般采取的方法就是通過(guò)一個(gè)“比特流(bitstream)”文件完成,它包含了FPGA設(shè)計(jì)的全部信息,一般對(duì)比特流文件的保護(hù)方式就是加密和鑒權(quán)。加密指的是使用特定算法對(duì)比特流文件進(jìn)行處理,將其轉(zhuǎn)換成密文,使得其中的內(nèi)容對(duì)外不可見(jiàn)。鑒權(quán)指的是對(duì)加密后的比特流文件進(jìn)行身份驗(yàn)證,防止對(duì)其進(jìn)行篡改和刪減。這次研究人員的破解就是在實(shí)驗(yàn)室理想情況下先對(duì)賽靈思的FPGA比特流文件進(jìn)行破解,然后破解鑒權(quán),獲得FPGA設(shè)計(jì)信息,由于比特流文件大小不同,一次破解的時(shí)間也不同,據(jù)悉,讀出一個(gè)32位字大概需要7.9毫秒,因此破解一個(gè)Kintex FPGA的比特流就大概需要3小時(shí)42分鐘。
其次,請(qǐng)注意我說(shuō)的是實(shí)驗(yàn)室理想情況下,這是被很多人忽視的,什么條件?就是在實(shí)驗(yàn)室在近距離進(jìn)行破解,說(shuō)穿了就好比你家里有個(gè)密碼鎖,有個(gè)賊想去破解,就蹲在你家門(mén)口進(jìn)行不斷的實(shí)驗(yàn)密碼,你覺(jué)得這個(gè)事情現(xiàn)實(shí)中可能發(fā)生嗎?在實(shí)際應(yīng)用中,沒(méi)有客戶(hù)會(huì)對(duì)外開(kāi)放一個(gè)任人隨意進(jìn)入的接口的。如果不是自己不加解密,不對(duì)外開(kāi)放接口,就必須是在像實(shí)驗(yàn)室這種物理上可以接近客戶(hù)系統(tǒng)的情況下才可以實(shí)現(xiàn)。而如果客戶(hù)可以以近距離接近系統(tǒng),那安全就不只是芯片了,對(duì)吧。所以一名賽靈思發(fā)言人對(duì)外媒表示,“要執(zhí)行所謂的Starbleed攻擊,唯一被證明有效的方式是在物理位置上接近系統(tǒng)。當(dāng)攻擊者在物理位置上接近系統(tǒng)時(shí),存在許多其他的威脅需要擔(dān)心,認(rèn)識(shí)到這一點(diǎn)也很重要。我們建議所有的客戶(hù)采用篡改保護(hù)機(jī)制設(shè)計(jì)系統(tǒng),以使物理位置上接近訪(fǎng)問(wèn)難以達(dá)成。
第三,這次破解的是賽靈思20nm的產(chǎn)品,主要是Spartan,Artix,Kintex和Virtex早期版本等,它們基本也都是10年前的產(chǎn)品,兩位博士也表示后續(xù)的賽靈思產(chǎn)品不存在這個(gè)問(wèn)題。另外,也有媒體說(shuō)這次破解說(shuō)明FPGA的可編程性變得不可靠了,這充分暴露了一些媒體小編的無(wú)知,簡(jiǎn)直堪比”吃飯會(huì)噎死人所以我們以后別吃飯了“這樣的論調(diào)。FPGA的可編程性是這個(gè)產(chǎn)品的的最大優(yōu)勢(shì),可編程性是沒(méi)有可靠不可靠之說(shuō)的,可編程性只是FPGA的一個(gè)芯片特性。如果說(shuō)可編程性不可靠就等于說(shuō)吃飯不可靠一樣可笑。綜合而言,這個(gè)漏洞的影響遠(yuǎn)沒(méi)有媒體傳言的那么大,我記得一位俄羅斯大神說(shuō)過(guò)“世界上沒(méi)有破解不了的東西”,是的,任何加密設(shè)計(jì)的產(chǎn)品背后都是一連串的數(shù)字代碼,只要有足夠的錢(qián)足夠的時(shí)間都可以進(jìn)行破解出來(lái),關(guān)鍵是這樣的破解成本和時(shí)間價(jià)值,其實(shí)這就是一個(gè)投入和產(chǎn)出的經(jīng)濟(jì)學(xué)問(wèn)題。安全很重要,但是安全就是一種設(shè)計(jì)和成本的妥協(xié)?,F(xiàn)在,疫情形勢(shì)很?chē)?yán)峻,我們沒(méi)必要在這里杞人憂(yōu)天,整天擔(dān)心自己的FPGA設(shè)計(jì)被破解,還是盡快開(kāi)發(fā)新設(shè)計(jì)吧。其實(shí),每天我們用的widows系統(tǒng)都在被黑客破解和攻擊,我們不是還在用它嗎?
-
FPGA
+關(guān)注
關(guān)注
1645文章
22046瀏覽量
618300 -
漏洞
+關(guān)注
關(guān)注
0文章
205瀏覽量
15692
原文標(biāo)題:FPGA 的 StarBleed 漏洞,真有那么可怕嗎?
文章出處:【微信號(hào):FPGA-EETrend,微信公眾號(hào):FPGA開(kāi)發(fā)圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
華邦電子安全閃存產(chǎn)品守護(hù)物聯(lián)網(wǎng)安全
如何維護(hù)i.MX6ULL的安全內(nèi)核?
如何利用iptables修復(fù)安全漏洞
微軟Outlook曝高危安全漏洞
AMD與谷歌披露關(guān)鍵微碼漏洞
對(duì)稱(chēng)加密技術(shù)有哪些常見(jiàn)的安全漏洞?
物聯(lián)網(wǎng)系統(tǒng)的安全漏洞分析
高通警告64款芯片存在“零日漏洞”風(fēng)險(xiǎn)
如何使用 IOTA?分析安全漏洞的連接嘗試

評(píng)論