出於安全起見,建議此前點擊過一封可疑郵件的用戶暫時撤銷對 OpenSea 的所有授權。
原文作者:Azuma
今晨,關於 OpenSea 疑似出現 bug 一事引發了大量關注與熱議。

事件起因為,多位用戶今晨於推特發布警告稱,OpenSea 昨日推出的新遷移合約(地址:0xa2c0946aD444DCCf990394C5cBe019a858A945bD)疑似出現 bug,攻擊者(地址:0x3e0defb880cd8e163bad68abe66437f99a7a8a74)正利用該 bug 竊取大量 NFT 並賣出套利。

從攻擊者錢包的截圖來看,當前失竊 NFT 涵蓋 BAYC、BAKC、MAYC、Azuki、Cool Cats、Doodles、Mfers 等多種高價值系列,其中部分已以地板價賣出,但也有一部分已原路轉回失竊地址(駭客還向部分失竊用戶打了些 ETH)。
所謂遷移合約,來自於 OpenSea 昨日發布的一項新升級。昨日,OpenSea 宣布其智能合約升級已完成,新的智能合約已經上線,用戶遷移智能合約需簽署掛單遷移請求,簽署此請求不需要 Gas 費,無需重新進行 NFT 審批或初始化錢包。在遷移期間,舊智能合約上的報價將失效。英式拍賣將於合約升級完成後暫時禁用幾個小時,新合約生效後,可以再次創建新的定時拍賣。現有智能合約的荷蘭式拍賣將於台灣時間 2 月 26 日 3 時在遷移期結束時到期。
事件發生後,OpenSea 於官方推特回應稱:“我們正在積極調查與OpenSea 智能合同有關的傳聞。這看起來像是來自OpenSea 網站外部的網路釣魚攻擊。不要點擊 http://opensea.io 之外的任何鏈接。”
Alchemix、Sushiswap 貢獻者,推特用戶 @0xfoobar 在事件發生後也於推特發布了關於此事的個人調查。@0xfoobar 稱,駭客使用 30 天前部署的輔助程式合約來調用 4 年前部署的 OpenSea 合約,該輔助合約同樣具有有效的 atomicmatch() 數據,這可能是起於幾個星期前的一場釣魚攻擊,駭客正趕著在所有掛單過期之前進行攻擊。

@0xfoobar 進一步分析稱,此事與 OpenSea 新遷移合約唯一的關係是,由於 OpenSea 智能合約升級後所有的歷史掛單都將在 6 天內到期,這其中也包含了所有來自已被釣魚攻破的地址的掛單,所以駭客不得不立即採取行動。換句話說,這是一場釣魚攻擊,而非一場通用智能合約漏洞,OpenSea 的合約並沒有出現問題。

@0xfoobar 的分析與其他一些大 V 不謀而合,gmDAO 創始人 Cyphr.ETH 發推稱,駭客使用了標準網路釣魚電子郵件複製了幾天前發出的正版 OpenSea 電子郵件,然後讓一些用戶使用WyvernExchange 簽署權限。OpenSea 未出現漏洞,只是人們沒有像往常一樣閱讀簽名權限。

至此,本次安全事件的原因已基本明了,受影響群體為曾點擊過上述郵件並簽署了權限的用戶,出於安全起見,建議這些用戶暫時撤銷 OpenSea 的所有授權。可用的合約授權簽署工具包括 https://revoke.cash/ 或 https://zapper.fi/revoke 或 https://etherscan.io/tokenapprovalchecker 或 https://approved.zone/ 或 https://tac.dappstar.io/#/ ,部分網站可能因當前訪問量過大無法打開,可以多試試。