成都鏈安:YFV勒索事件分析

買賣虛擬貨幣

YFV是基於以太坊的一個DeFi專案,今天早些時候,YFV官方發文稱遭到勒索。攻擊者利用staking的合約漏洞,可以任意重置使用者鎖定的YFV。

並表示,此次事件可能和不久前的“pool 0”事件相關,勒索者極有可能是在“pool 0”事件中未取回資金的“憤怒的農民”。

漏洞分析

合約存在一個stakeOnBehalf函式使得攻擊者可以為任意使用者進行抵押,如下圖所示:

此函式中的 lastStakeTimes[stakeFor] = block.timestamp; 語句會更新使用者地址對映的laseStakeTimes[user]。而使用者取出抵押所用的函式中又存在驗證,要求使用者取出時間必須大於lastStakeTimes[account]+72小時。如下圖所示:

UnfrozenStakeTime如下圖所示:

綜上所述,惡意使用者可以向正常使用者抵押小額的資金,從而鎖定正常使用者的資金。

根據鏈上資訊,我們找到了兩筆疑似攻擊的交易,如下所示:

0xf8e155b3cb70c91c70963daaaf5041dee40877b3ce80e0cbd3abfc267da03fc9

0x8ae5e5b4f5a026bc27685f2b8cbf94e9e2c572f4905fcff1e263df24252965db

其中一筆如下圖所示:

此兩筆交易都來自同一地址,且均為極小值。由此我們可以基本判定這是一個測試鎖死問題的交易。

總結

針對於本次事件,究其根本原因,還是沒有做好上線前的程式碼審計工作。本次事件實際上是屬於業務層面上的漏洞。

根據成都鏈安在程式碼審計方面的經驗,個別專案方在進行程式碼審計時,未提供完整的專案相關資料,使得程式碼審計無法發現一些業務漏洞,導致上線後損失慘重。

成都鏈安·安全實驗室在此提醒各專案方:安全是發展的基石,做好程式碼審計是上線的前提條件。

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读

;