2017年2月23日,初春的腳步剛剛走近, CWI(荷蘭阿姆斯特研究所)和Google在密碼學(xué)領(lǐng)域就干了一件大事——發(fā)布了世界上第一例公開的SHA-1哈希碰撞實例,將這個密碼學(xué)中最流行,網(wǎng)絡(luò)加密最常用的算法攻破了。
這讓整個安全世界體驗了一回倒春寒,基本宣布SHA-1這個曾經(jīng)在密碼學(xué)中最流行的算法死亡。這也許是件好事,SHA-1在實驗室中退出歷史舞臺,總好過在真正的安全戰(zhàn)場上被攻破。
在突然的震驚過后,讓我們先看看Google到底做了什么?
一句話:Google公開破解了密碼領(lǐng)域中的一個主要算法SHA-1。公司研究人員在博文中稱,有足夠的計算力(其中一個階段就花1個GPU大約110年的計算)就能實現(xiàn)碰撞,有效地破解算法。其實在之前,大家就知道這是可能的,但沒人這么做過。根據(jù)Google的披露政策,它將在90天后說明自己是怎么做的。一旦這種概念驗證方法公布出來,任何有足夠計算力的人都能實現(xiàn)SHA-1碰撞,也許仍然會花費數(shù)萬美元,但是如果收獲遠(yuǎn)遠(yuǎn)大于這個數(shù)字呢?也許Google都不是第一個這么做的(比如一些國家情報機關(guān)),但是第一個公開的。
攻擊使用的計算資源規(guī)模程度
那么問題來了,SHA-1是什么呢?
SHA是安全雜湊算法(Secure Hash Algorithm)的縮略語,它是一種能夠依據(jù)一段數(shù)字信息(可理解為計算機中的各種文件)計算出長度固定的雜湊值(數(shù)字信息摘要hash value,或稱哈希值)的算法。任何不同的數(shù)值信息,理論上都可以得出不同的雜湊值。
之所以說SHA安全,是基于以下兩點:
1、由雜湊值反推原信息,從算法理論上是非常困難的。
2、要找到兩組不同的原信息,對應(yīng)到相同的雜湊值,從算法理論上也是非常困難的。
SHA-1可產(chǎn)生的雜湊值長度為160位,也就是說產(chǎn)生一段數(shù)字信息,使其SHA-1雜湊值同給定的SHA-1雜湊值相同的難度是2^160。在SHA-1剛剛發(fā)布的1995年,以當(dāng)時的算法水平和計算能力,這個難度在理論上已經(jīng)是不可破被解的。從誕生以來,SHA-1被業(yè)內(nèi)廣泛用于數(shù)字簽名、文件完整性驗證、以及保護(hù)廣泛的數(shù)字資產(chǎn)(包括信用卡交易、電子文檔、開源軟件資源庫與軟件更新等)的加密標(biāo)準(zhǔn)。
知道了SHA-1,那什么叫碰撞呢?剛才說的“實現(xiàn)碰撞”是什么意思?
當(dāng)算法函數(shù)有漏洞,兩個文件產(chǎn)生相同的哈希值時,就產(chǎn)生了碰撞。它會讓攻擊者濫用惡意文件,因為它與合法文件有一樣的哈希值。
作為證明,Google在公布的結(jié)果中,顯示了兩個PDF文件,經(jīng)過SHA-1處理后,產(chǎn)生了相同的哈希值。實際上,被攻破的散列函數(shù)能用來攻擊另一個加密系統(tǒng)HTTPS,后者保護(hù)了全球超過一半網(wǎng)頁的安全。其實隨著算法理論的不段進(jìn)化,計算性能的飛速發(fā)展,我們都知道SHA-1已經(jīng)走到了懸崖邊上。Google就是那最后的一縷微風(fēng),輕輕的把SHA-1吹下了懸崖。
如果您是一位工業(yè)用戶,這個事情對您有什么影響呢?
前面說過,SHA-1被廣泛用于數(shù)字簽名、文件完整性驗證、以及保護(hù)電子文檔、開源軟件資源庫與軟件更新等,這些在幾乎所有工業(yè)系統(tǒng)中應(yīng)用十分廣泛,SHA-1碰撞算法的公布表明我們所有的工業(yè)系統(tǒng)都將暴露于危險之中。執(zhí)行一次碰撞攻擊的代價不菲,所以具有巨大經(jīng)濟(jì)價值的工業(yè)企業(yè)就將是其重點對象,更別說很多行業(yè)(比如電力、石油石化、燃?xì)?、軌道交通等)還具有巨大的政治、民生價值。
我們威努特人做了什么?
在震驚的同時,我們威努特人感到了一絲欣慰,因為我們早已預(yù)見了危機的存在,在我們保護(hù)工業(yè)主機的工控主機衛(wèi)士中前瞻性的使用了更加安全的加密算法。
所以,這一次危機,對我們威努特?zé)o效!對我們威努特產(chǎn)品防護(hù)的客戶無效!
安全領(lǐng)域就要面對這么殘酷的現(xiàn)實——如果你現(xiàn)在站在原野上,只顧欣賞風(fēng)景而止步不前,那敵人就會把懸崖挖到你腳下。久經(jīng)沙場的威努特人,深諧安全領(lǐng)域的真髓,早在主機衛(wèi)士產(chǎn)品立項階段就預(yù)見了核心加密算法的重要性和SHA-1的脆弱性,而選擇采用了國產(chǎn)商密算法SM3。SM3是國家密碼管理局于2010年12月發(fā)布的密碼雜湊算法,使用256位的雜湊值,大體相當(dāng)于SHA-256的強度,比SHA-1多了96位。破解難度大了2^96倍,這是一個大到讓人絕望的數(shù)字。
那么什么是威努特工控主機衛(wèi)士,它有什么作用呢?
威努特工控主機衛(wèi)士安裝套件
威努特工控主機衛(wèi)士是基于自有知識產(chǎn)權(quán)開發(fā)的工控主機系統(tǒng)安全防護(hù)軟件,是將應(yīng)用程序白名單技術(shù)應(yīng)用于可信計算機制之上,充分利用應(yīng)用程序白名單系統(tǒng)的高安全、高性能、高功效等特性,實現(xiàn)了工控主機系統(tǒng)啟動、加載、運行的全生命周期的安全保證。
威努特工控主機衛(wèi)士中的“白名單”,是指規(guī)則中設(shè)置的允許使用的名單列表,白名單技術(shù)采用了SM3安全雜湊算法,通過該算法計算出可執(zhí)行程序的雜湊值??蓤?zhí)行程序只有通過了威努特工控主機衛(wèi)士設(shè)置的多道安全閘門認(rèn)證后,它的雜湊值才會加入到白名單中。
威努特工控主機衛(wèi)士“白名單”技術(shù)即阻止了病毒自身的加載執(zhí)行,也確保了安全的可執(zhí)行程序不被攻擊和感染。兩把大鎖牢牢的把病毒鎖在安全大門之外。
“白名單”技術(shù)是威努特工控主機衛(wèi)士的核心功能之一,對工控主機的安全防護(hù)起到了至關(guān)重要的作用,“白名單”算法出現(xiàn)漏洞,病毒就會利用它攻入主機系統(tǒng)。如果白名單算法采用SHA-1算法,病毒就有可能偽裝成擁有相同雜湊值的程序,混入主機系統(tǒng)。因此,安全可靠的白名單算法,是主機衛(wèi)士正常工作的基礎(chǔ)。
威努特人在經(jīng)過充分的討論和驗證后,選擇了國密SM3算法,SM3算法的2^256的理論破解難度,也在國家層面經(jīng)過了充分的論證。使用SM3國密算法,既符合當(dāng)下國家安全的宏觀大局,也滿足了現(xiàn)階段密碼安全的理論要求,充分展示了威努特作為工業(yè)安全行業(yè)領(lǐng)航者的果敢與睿智。