|
SHA-1沖突可以打破SVN代碼存儲庫。灰鴿子遠程控制軟件,灰鴿子下載WebKit存儲庫已損壞,有人提交兩個沖突的PDF文件到它
![]()
最近公布的SHA-1沖突攻擊有可能破壞使用Subversion(SVN)修訂控制系統(tǒng)的代碼存儲庫。第一個受害者是WebKit瀏覽器引擎的存儲庫,在某人提交了兩個具有相同SHA-1哈希值的不同PDF文件后,該引擎被損壞。
這個事件發(fā)生在幾個小時后,荷蘭的谷歌和Centrum Wiskunde&Informatica(CWI)的研究人員在星期四宣布對SHA-1哈希函數(shù)的第一次實際碰撞攻擊。他們的演示包括創(chuàng)建兩個具有不同內(nèi)容的具有相同SHA-1摘要的PDF文件。
這證明毫無疑問,SHA-1是加密破解的,因為散列函數(shù)應(yīng)該總是為不同的數(shù)據(jù)或文件片段產(chǎn)生不同的摘要(哈希)。 SHA-1是用于計算用作文件或數(shù)據(jù)片的加密表示的字母數(shù)字字符串的散列函數(shù)。
WebKit開發(fā)人員希望構(gòu)建一個測試,以證明在WebKit的依賴于SHA-1的磁盤緩存重復(fù)數(shù)據(jù)刪除功能的上下文中,所展示的沖突不能用于緩存中毒。為了做到這一點,他將由CWI和Google生成的兩個PDF文件上傳到WebKit SVN,然后開始發(fā)出錯誤。
看來,即使在刪除文件后,仍然存在一些問題,需要進一步的手動干預(yù)來修復(fù)它們。
問題不是特定于WebKit的存儲庫,而是所有基于SVN的存儲庫。 Subversion開發(fā)人員發(fā)布了一個腳本,SVN管理員可以使用該腳本來防止SHA-1沖突文件被提交到其存儲庫。同時,正在進行更永久的修復(fù)工作。
Git,一個競爭和更受歡迎的版本控制系統(tǒng),也內(nèi)部使用SHA-1,根據(jù)CWI和谷歌研究人員,在理論上是脆弱的。
研究人員在他們的shattered.io網(wǎng)站上說,“基本上可以創(chuàng)建兩個具有相同頭部提交哈希和不同內(nèi)容的GIT存儲庫,比如一個良性的源代碼和一個后端的哈希。 “攻擊者可以選擇性地為目標用戶提供服務(wù)。
這種攻擊需要攻擊者計算自己的沖突,這時需要大量的資源。它花了谷歌超過九個SHA-1計算,相當于一年的連續(xù)計算在110 GPU或6500個CPU。
Linus Torvalds是Linux和git的創(chuàng)始人,似乎對攻擊的影響并不太關(guān)心,部分原因是它可以通過添加一些簡單的檢查,使得攻擊不值得。
“與一些”簽署pdf“攻擊不同,Git從根本上不依賴于SHA1作為某種絕對安全,”Torvalds在關(guān)于git郵件列表的討論中說。 “如果我們有g(shù)it中的最小的機器只是注意到攻擊,攻擊基本上消失了,攻擊者可以浪費無限的CPU時間,如果它很便宜,我們注意到,它完全解除所有的攻擊工作。
后來在同一個討論中,Git開發(fā)人員決定使用CWI研究人員提供的碰撞檢測代碼來構(gòu)建一些保護。同時將git移動到另一個散列函數(shù)作為目標進行討論,SHA3似乎是所選擇的候選,因為它具有比SHA2更好的性能。
“我懷疑天空正在下降作為一個源代碼控制管理工具,”Torvalds在他的一封電子郵件中總結(jié)。 “我們想遷移到另一個哈希嗎?是的,SHA1就像人們想說的”游戲結(jié)束“,可能不是,遠程控制軟件, 遠程控制。
即使長期以來已知SHA-1在理論上容易受到?jīng)_突攻擊,但是對于文件同步,重復(fù)數(shù)據(jù)刪除和備份系統(tǒng)的實際攻擊的真實世界的影響還有待觀察。在90天內(nèi),Google和CWI研究人員計劃公開他們用于生成沖突的PDF文件的代碼,如果他們有必要的計算資源,將允許其他人創(chuàng)建類似的沖突。
|
|