加密貨幣交易所 加密貨幣交易所
Ctrl+D 加密貨幣交易所
ads

技術拆解YFValue合約漏洞,一行代碼如何鎖定上億美元?_STA:StarbaseUniverse

Author:

Time:1900/1/1 0:00:00

編者按:本文來自慢霧科技,Odaily星球日報授權轉載。前言

據鏈聞消息,DeFi項目YFValue發布公告稱,團隊于昨日在YFV質押池中發現一個漏洞,惡意參與者借此漏洞對質押中的YFV計時器單獨重置。目前已有一個惡意參與者正試圖借此勒索團隊。慢霧安全團隊對此進行了深入分析,以下是相關技術細節。細節分析

以上是YFValue的官方說明(來源:https://medium.com/),從聲明中我們可以得知是YFV抵押池出現了問題,惡意的用戶可重置YFV抵押者的計時器,對YFV的抵押者造成不便,但這并不會導致資金損失。通過登陸YFValue的官方網站,(https://yfv.finance/staking),可以發現在YFValue的體系中,用戶可通過質押相關的代幣獲取對應的獎勵,目前YFValue支持的質押代幣池有以下幾個:

中國區塊鏈發展報告:區塊鏈技術成數字文化發展重要保障:金色財經報道,北京區塊鏈技術應用協會與社會科學文獻出版社日前在京共同發布《區塊鏈藍皮書:中國區塊鏈發展報告(2023)》。藍皮書認為,對于目前數字文化產業存在的各種法律問題(如新型的盜版模式使得盜版行為更加分散化、隱蔽化,打擊難度更大;網絡盜版各環節更加細分,責任認定難度更大等),區塊鏈技術也許可以提供一種成本更低、更有效率的解決思路。

使用區塊鏈技術,可以通過時間戳、哈希算法對作品進行確權,證明一段文字、視頻、音頻的存在性、真實性和唯一性。一旦在區塊鏈上被確權,作品的后續交易都會被實時記錄,文創產業的全生命周期可追溯、可追蹤,這為IP權利證明、司法取證等提供了一種強大的技術保障和可信度很高的證據。[2023/8/11 16:19:48]

Composable Finance首席技術官Karel Kubat宣布離職:金色財經報道,Composable Finance首席技術官Karel Kubat表示,他將離開 Composable Finance,同時在 Twitter 上抨擊去中心化金融組織缺乏財務透明度。Composable Finance 還在 Twitter 上發布了與高管告別的消息。[2023/2/21 12:20:08]

可以看到,目前由于漏洞的原因,YFV的抵押池已經在UI界面關閉了抵押功能,但是合約上目前還沒關閉代幣抵押的功能,我們需要跟蹤代碼來分析具體的細節點。根據官網提供的Github地址,我們溯源到了相關的代碼倉庫(https://github.com/yfv-finance/audit),關于YFV抵押的相關邏輯在YFV_Stake.sol合約中,合約中關于抵押的函數有2個,分別是stake函數和stakeOnBehalf函數,以下是具體的代碼:

動態 | 印度IT巨頭為員工提供區塊鏈等新技術培訓:印度IT巨頭Tech Mahindra表示正在重新培訓員工,主要針對數字和下一代技術領域,如區塊鏈、網絡安全、人工智能、機器學習、機器人、自動化和5G。該公司的目標是在不久的將來,至少50%的收入來自數字業務。[2019/3/20]

通過代碼不難發現,無論是stake函數還是stakeOnBehalf函數,邏輯基本是一樣的,首先是校驗了抵押金額不能為0,接著分別調用上層的tokenStake和tokenStakeOnBehalf函數。緊接著更新用戶的抵押時間。只不過stakeOnBehalf函數可以用于為他人抵押。tokenStake和tokenStakeOnBehalf的代碼如下:

聲音 | 騰訊金融科技副總裁郭銳:區塊鏈亟需長期建設技術標準、行業標準:金色財經10月9日訊,今日,由中國信息通信研究院、中國通信標準化協會聯合主辦的2018可信區塊鏈峰會在北京召開,并首次公布2018首批可信區塊鏈標準評測結果,騰訊區塊鏈獲評第一名。騰訊金融科技副總裁郭銳在會上表示:“區塊鏈亟需長期建設技術標準、行業標準。技術需要標準,如區塊鏈包含哪些技術、哪些必選哪些可選、技術指標的定義是什么、每一項技術達到什么指標才叫合格,廠商間不能各說各話。另一方面,場景應用需要標準,如不同行業和應用場景需要有定義和標準,區塊鏈在場景應用中發揮的價值需要有共識。”[2018/10/9]

可以看到這里只是簡單的把對應的token用transferFrom的方式轉入到合約中,沒有什么特別的邏輯點。到這里整個抵押流程就很清晰了,接下來是收益的過程。計算用戶收益的是stakeReward函數,領取收益的為withdraw函數,代碼分別如下:

通過分析計算收益和領取收益的代碼,發現邏輯也很簡單,stake函數首先是通過updateReward修飾器更新了用戶的獎勵,然后使用getReward函數計算了用戶的獎勵,并把抵押時間設置成當前區塊時間。最后,用戶在提取獎勵的時候,withdraw函數會首先計算當前的區塊時間,再與unfrozenStakeTime函數中計算出的時間進行對比,只有當前區塊時間大于unfrozenStakeTime計算出的時間,才允許提現。unfrozenStakeTime的代碼如下:

從代碼中得知,unfrozenStakeTime是使用用戶的上次抵押時間加上FROZEN_STAKING_TIME常量得出鎖定時間,只要超過時間,就能通過withdraw函數提現收益。整個抵押和領取收益的簡化流程如下:

分析了一大堆,回到我們最初的問題,惡意的用戶是怎么鎖定其他用戶的資產的呢?回到用戶抵押的邏輯,可以發現抵押邏輯中的stakeOnBehalf函數本意是幫助進行抵押,但是這里有個問題,如果這個用戶先前已經有抵押了呢?那通過對已經抵押的用戶再次進行抵押,比方說抵押1個YFV,是不是就能以極低的成本重置已抵押的用戶的計時器,導致用戶在withdraw時無法成功調用。更進一步,假設YFV抵押用戶已經成功調用了stakeReward函數,在快要達到unfrozenStakeTime所規定的時間時,惡意的用戶可以通過stakeOnBehalf函數給這個用戶抵押少量資產,即可再次對抵押獎勵進行鎖定,理論上這樣往復循環,即可使用戶無法取出自己的資產,但這個問題并不會導致資金損失。攻擊流程如下:

前車之鑒

這是本月出現的第二個沒有經過審計的DeFi項目所暴露出的風險,根據YFValue的官方聲明(https://medium.com/),項目代碼是由富有經驗的開發者進行開發的,同時借鑒了其他成功的項目的代碼,但是仍無可避免的出現了風險。術業有專攻,安全審計一方面需要項目方的正向思維,另一方面,還是需要專業的安全團隊的逆向思維,從專業的黑客角度進行模擬對抗,發現問題。修復方案

通過分析代碼和漏洞細節,針對本次漏洞,修復方案也很簡單,只要在抵押的時候檢查用戶的抵押狀態是否為已經抵押,如果已經抵押,則不允許再次抵押。或者對每次的抵押進行單獨的處理,不能對先前的抵押狀態產生影響。

Tags:STASTAKSTAKE區塊鏈StarbaseUniversepstake幣能漲到多少美元NFT2Stake區塊鏈域名還有市場前景嗎

酷幣下載
一文讀懂Polkadot通證經濟學_DOT:polkadotstingray樂隊

目錄 ·簡介組織架構·NPoS支付和通貨通脹通貨膨脹模型支付細節在驗證人插槽中的支付分配波卡網絡將會采用一種名為DOT的原生代幣.

1900/1/1 0:00:00
“9·4”再演瀑布,比特幣跌破10000美元是好機會嗎?_比特幣:DEF

編者按:本文來自巴比特資訊,作者:BillyBambrough,編譯:隔夜的粥,星球日報經授權發布。時隔3年,幣圈在9月4日再次迎來了瀑布,只不過這一次并沒有政策方面的因素.

1900/1/1 0:00:00
瘋狂「壽司」暗藏無常損失風險_SHI:sushi幣什么時候出來的

編者按:本文來自蜂巢財經News,作者:凱爾,Odaily星球日報經授權轉載。被投資者稱為「壽司」的SushiSwap莫名傳遍了炒幣群,緊接著,在HBO三大所上快速出現,上線不到一周,鎖倉13億.

1900/1/1 0:00:00
壽司“新大廚”SBF:遷移完成后,或基于Serum組合各項DeFi業務_USH:SWAP

編者按:本文來自巴比特資訊,作者:TatianaKoffman,翻譯:隔夜的粥,星球日報經授權發布.

1900/1/1 0:00:00
誰來拯救擁堵的以太坊和高額的Gas費?_以太坊:OMG

編者按:本文來自Cointelegraph中文,作者:ANTóNIOMADEIRA,Odaily星球日報經授權轉載。以太坊網絡上的交易費用最近達到了每小時的新紀錄.

1900/1/1 0:00:00
七夕這個早上,全都用來挖Filecoin了_FIL:FILDA

經歷數次跳票之后,8月25日早6點,獎勵高達410萬FIL的Filecoin激勵測試網終于啟動了。各大礦商礦工群也再度活躍,各礦商紛紛通過錄視頻、發快訊的方式表達“塵埃落定”的喜悅.

1900/1/1 0:00:00
ads