背景
2021年1月27日,據慢霧區情報,SushiSwap再次遭遇攻擊,此次問題為DIGG-WBTC交易對的手續費被攻擊者通過特殊的手段薅走。慢霧安全團隊在收到情報后立馬介入相關事件的分析工作,以下為攻擊相關細節。
SushiMaker是什么
SushiMaker是SushiSwap協議中的一個重要的組件,其用于收集SushiSwap每個交易對的手續費,并通過設置每個代幣的路由,將不同交易對的手續費最終轉換成sushi代幣,回饋給sushi代幣的持有者。這個過程就是發生在SushiMaker合約上。
說說恒定乘積
恒定乘積的公式很簡單,在不計算手續費的情況下,恒定乘積的公式為
美國國會成員置評美聯儲CBDC報告:美聯儲未能表明其如何保護數據:1月21日消息,美國國會參議院共和黨成員Toomey置評美聯儲央行數字貨幣(CBDC)報告:美聯儲未能表明其如何保護數據,這讓人深感擔憂。[2022/1/21 9:03:35]
也就是說每次兌換,其實都是遵循這個公式,及交易前后K值不變,在兌換的過程中,由于要保持K值不變,公式的形式會是這個樣子
其中X代表賣掉的代幣,Y代表要購買的代幣,那么每次能兌換到的代幣數量會是這個樣子(具體的推導過程就不演示了:D)
從公式上可以看到,當輸出代幣Y的兌換數量上限取決于Y代幣的數量,而和X代幣數量的大小無關,反過來說,如果要賣掉的X代幣數量很大,但是Y代幣的數量很小,那么就會造成大量的X代幣只能兌換出少量的Y代幣,而這個兌換價格相比正常的交易價格會偏離很多,這就是所謂的滑點,是本次攻擊中的關鍵。
直播|陸遙遠 :普通用戶如何參與DeFi獲得高額收益:金色財經 · 直播主辦的金點Trend《2020 DeFi Dai飛嗎?》馬上開始!DeFi生態里,我們還應該狙擊哪些項目?成長空間是多少?應該關注哪些風險?11:00準時開播!本場嘉賓來自老陸的區塊鏈筆記的作者/ 麥子錢包PM陸遙遠分享“普通用戶如何參與DeFi獲得高額收益”,請掃碼移步收聽![2020/7/31]
攻擊流程
2020年11月30日,SushiSwap就曾因為SushiMaker的問題出現過一次攻擊(詳解參閱:以小博大,簡析SushiSwap攻擊事件始末),本次攻擊和第一次攻擊相似,但流程上有區別。相較于舊合約,在新的合約中,手續費在兌換的過程中會通過bridgeFor函數為不同交易對中的代幣尋找特定的兌換路由,然后進行兌換。
聲音 | Ripple CEO:正與監管機構會面解釋如何使用加密技術:Ripple CEO Brad Garlinghouse在接受采訪時表示其正在告訴銀行,“加密不是一個壞詞”。他稱,“我正在做很多事情是與監管機構、銀行高層會面,向他們解釋如何使用加密技術,特別是XRP來解決實際問題,而不是規避監管。一旦人們理解了這一點,他們很快就會解除武裝,加密這個詞就不再是一個貶義詞”。(CoinTeleraph)[2020/2/20]
其中,brdigeFor函數的邏輯如下:
根據bridgeFor的邏輯,我們不難發現,如果沒有手動設置過特定幣種的bridge,那么默認的bridge是WETH,也就是說,在未設置bridge的情況下,默認是將手續費兌換成WETH。而DIGG這個幣,就是正好沒有通過setBridge設置對應的bridge的。
動態 | Block.one 總裁發文闡述區塊鏈如何解決銀行的 KYC 和 AML 問題:據 IMEOS 報道,Block.one 總裁 Rob Jesudason 十分鐘前發文《How Blockchain Offers an Answer to Banks’ KYC and AML Issues 》闡述區塊鏈如何解決銀行的 KYC 和 AML 問題。他認為區塊鏈不是官僚或新聞中想象的監管雷區; 相反,它可以成為監管機構的資產。
文中提及在過去十年中,許多世界領先的銀行都因反洗錢問題而被罰款,罰款總數達260億美元之多。而在過去12個月中,監管機構如何考慮如何鼓勵使用區塊鏈技術方面取得了進展。區塊鏈技術可以減輕數據模糊性并減少欺詐的可能性。如果所有銀行都在區塊鏈上,那么KYC和AML數據可以以安全,透明和無縫的方式在金融機構之間共享。[2018/10/16]
但是這里還有一個問題,就是在swap的過程中,如果這個交易對不存在,兌換的過程是失敗的。本次攻擊中,DIGG-WETH這個交易對一開始并不存在,所以攻擊者預先創建一個DIGG-WETH的交易對,然后添加少量的流動性。這個時候如果發生手續費兌換,根據前面說的恒定乘積的特性,由于DIGG-WETH的流動性很少,也就是DIGG-WETH中的WETH上限很小,而SushiMaker中的要轉換的手續費數量相對較大,這樣的兌換會導致巨大的滑點。兌換的過程會拉高DIGG-WETH交易對中WETH兌DIGG的價格,并且,DIGG-WETH的所有DIGG手續費收益都到了DIGG-WETH交易中。通過觀察DIGG-WETH交易對的流動性情況,流動性最大的時候也才只有不到2800美元的流動性,這個結果也能和公式的推導相互驗證。
攻擊者在SushiMaker完成手續費轉換后,由于?DIGG-WETH交易對中WETH兌DIGG的價格已經被拉高,導致少量的WETH即可兌換大量的DIGG,而這個DIGG的數量,正是DIGG-WBTC交易對的大部分手續費收入。
總結
本次攻擊和SushiSwap第一次攻擊類似,都是通過操控交易對的兌換價格來產生獲利。但是過程是不一樣的。第一次攻擊是因為攻擊者使用LP代幣本身和其他代幣創建了一個新的交易對,并通過操縱初始流動性操控了這個新的交易對的價格來進行獲利,而這次的攻擊則利用了DIGG本身沒有對WETH交易對,而攻擊者創建了這個交易對并操控了初始的交易價格,導致手續費兌換過程中產生了巨大的滑點,攻擊者只需使用少量的DIGG和WETH提供初始流動性即可獲取巨額利潤。
相關參考鏈接如下:
SushiMaker歸集手續費交易:
https://etherscan.io/tx/0x90fb0c9976361f537330a5617a404045ffb3fef5972cf67b531386014eeae7a9
攻擊者套利交易:
https://etherscan.io/tx/0x0af5a6d2d8b49f68dcfd4599a0e767450e76e08a5aeba9b3d534a604d308e60b
DIGG-WETH流動性詳情:
https://www.sushiswap.fi/pair/0xf41e354eb138b328d56957b36b7f814826708724
Sushi第一次被攻擊詳解:
https://mp.weixin.qq.com/s/-Vp9bPSqxE0yw2hk_yogFw
By:?慢霧安全團隊
上午給出的行情分析,日內建議反彈高空為主。給出的操作建議:反彈32000附近空單入場,目標31000-30500-30000,止損32500,5分鐘線來看,17:20大餅跌至30616.9一線,
1900/1/1 0:00:00尊敬的Hotbit用戶:目前,Hotbit的注冊用戶已突破100萬,上線的幣種數量突破1000個。Hotbit秉承著去中心化的管理理念,致力于將Hotbit打造成區塊鏈市場的亞馬遜.
1900/1/1 0:00:00親愛的用戶: CoinW將于1月28日~2月3日開啟社群交易打卡活動,本期打卡獎勵包括:每日交易獎勵、新用戶交易獎勵、邀請新用戶交易獎勵.
1900/1/1 0:00:00以太坊價格突破歷史新高后,短暫的興奮并未能持續多久,更多人開始意識到以太坊的使用成本越來越高。而在ETH2.0分片實施之前,許多人開始尋求能改善當前網絡擁堵和高昂手續費的解決方案.
1900/1/1 0:00:00日前,前美國商品期貨交易委員會主席、加密專家GaryGensler確認當選美國證券交易委員會主席.
1900/1/1 0:00:00好花盛開,就該盡先采摘。正所謂舟循川則游速,人順路則不迷,找到正確的方向才能不費努力,與其等你資金到位,不如盡早走上正軌.
1900/1/1 0:00:00