據Neodyme 的安全研究人員稱,Solana 協議庫(SPL) 中的一個漏洞——一組Solana項目的參考文檔——可能導致攻擊者以每小時2700 萬美元的速度從多個Solana項目中竊取資金。
受影響的項目包括收益聚合器Tulip Protocol 和借貸協議Solend 和Larix。這些項目目前管理著17 億美元的資金(儘管在今天的市場崩盤之前這個數字要高得多)。
發現一個價值10 億美元的漏洞
在一個 博文, Neodyme 解釋說這個bug 是首先 公開披露 由Neodyme 的一位審計員Simon 於6 月在文件共享平台GitHub 上發表。當時,安全研究人員不知道它是否可以被利用或它的影響有多大。這個錯誤沒有被注意到。
12 月1 日,Simon 看到問題仍然存在並且錯誤尚未修復。由於他的擔憂,Neodyme 的安全研究人員開始測試是否有可能利用該漏洞,並評估其嚴重程度。根據Neodyme 的說法,這個錯誤是一個“看似無害的捨入錯誤”,但他們很快發現它有可能竊取一筆財富——數以百萬計的小塊。
該錯誤的工作方式如下。簡而言之,對於Solana 應用程序,有一種機制可以讓你何時投入資金並取出資金。如果協議遵循SPL 參考文件,那麼他們會在提款時將資金四捨五入到最接近的整數。只有當用戶欠下最小參考單位的一小部分時才會發生這種情況,稱為Lamport(這類似於satoshi,最小數量的比特幣)。
現在這兩種方式都有效。有些人最終會得到他們代幣的額外部分。其他人最終會得到比他們欠的略少的錢。但這對每個人來說是微不足道的,平均來說大致相等。
但是,研究人員想知道,是否有人在玩弄這個系統,他們最終肯定會拿走那一點點額外的錢嗎?如果他們一遍又一遍地這樣做,也許他們可以賺很多錢。
研究人員在區塊鏈的副本上在實踐中測試了他們的理論。他們提交了一項旨在利用該漏洞的交易,由於舍入錯誤,該交易成功竊取了0.000001 BTC(0.047 美元)。
研究人員估計,他們可以在單筆交易中執行150-200 次這個錯誤,並將其中的許多交易放在一個區塊中。他們認為這種漏洞可以以每秒7,500 美元或每小時2,700 萬美元的速度竊取資金。
就總共有多少可能被盜而言,在這種漏洞被發現並採取保護措施之前,這種漏洞可能會持續多長時間,這是一個懸而未決的問題。這將取決於攻擊者的明目張膽,以及他們是快速還是緩慢地進行攻擊。但研究人員知道有超過10 億美元的風險。
研究人員迅速聯繫了他們認為受此漏洞影響的多個Solana項目。由於許多Solana項目都是閉源的,這是一項艱鉅的任務,他們錯誤地確定了幾個項目。但是他們設法與Solend、Tulip 和Larix 取得了聯繫,他們都修復了錯誤。
由於漏洞被披露,Solana Labs 還修復了參考文檔,以確保遵循其說明的新項目不會再次引入。
如需更多此類突發故事,請務必關注The Block 推特.
© 2021 The Block Crypto, Inc. 保留所有權利。本文僅供參考。它不提供或旨在用作法律、稅務、投資、財務或其他建議。
聲明:以上內容採集自THEBLOCKCRYPTO,作品版權歸原創作者所有內容均以傳遞信息為目的,不代表本站同意其觀點,不作為任何投資指導。幣圈有風險,投資需謹慎