背景
2021年1月27日,據慢霧區情報,SushiSwap再次遭遇攻擊,此次問題為DIGG-WBTC交易對的手續費被攻擊者通過特殊的手段薅走。慢霧安全團隊在收到情報后立馬介入相關事件的分析工作,以下為攻擊相關細節。
SushiMaker是什么
SushiMaker是SushiSwap協議中的一個重要的組件,其用于收集SushiSwap每個交易對的手續費,并通過設置每個代幣的路由,將不同交易對的手續費最終轉換成sushi代幣,回饋給sushi代幣的持有者。這個過程就是發生在SushiMaker合約上。
說說恒定乘積
恒定乘積的公式很簡單,在不計算手續費的情況下,恒定乘積的公式為
PeckShield征求建議以確定如何發出黑客攻擊警報,大多數用戶支持其標記受影響的協議和交易:8月10日消息,PeckShield稱其檢測到黑客攻擊時發布警報可能會引起人們對黑客的關注并暴露受影響的協議,因此可能會引起爭議,發布投票向社區征求建議,以確定檢測到黑客攻擊時應如何發出警報。當前投票已結束,66.8%的用戶選擇“標記受影響的協議+tx”、18.4%的用戶選擇“Alert TG seal 911 bot”、9.9%的用戶選擇“公開黑客+tx”、4.9%的用戶選擇“僅Xeet匿名黑客”。[2023/8/10 16:18:10]
也就是說每次兌換,其實都是遵循這個公式,及交易前后K值不變,在兌換的過程中,由于要保持K值不變,公式的形式會是這個樣子
Terra生態行情網站Coinhall:無論Terra2.0最終結果如何,將繼續支持以完成集成:5月18日消息,Terra生態行情網站Coinhall發推稱,不知道Terra2.0的結果是什么,也無法評論最好的提案會是什么樣子,但將在繼續支持Terra1.0的基礎上完成集成,以便Terra用戶仍然可以在任一鏈上使用這個熟悉的平臺。[2022/5/18 3:25:02]
其中X代表賣掉的代幣,Y代表要購買的代幣,那么每次能兌換到的代幣數量會是這個樣子(具體的推導過程就不演示了:D)
從公式上可以看到,當輸出代幣Y的兌換數量上限取決于Y代幣的數量,而和X代幣數量的大小無關,反過來說,如果要賣掉的X代幣數量很大,但是Y代幣的數量很小,那么就會造成大量的X代幣只能兌換出少量的Y代幣,而這個兌換價格相比正常的交易價格會偏離很多,這就是所謂的滑點,是本次攻擊中的關鍵。
動態 | 英國信息專員辦公室對Facebook發出如何保護個人數據的質詢函:據路透社報道,英國信息專員辦公室周一表示,其已經向Facebook和其他28家Libra項目背后的公司發送了一份聲明,要求他們提供有關如何根據與項目相關的數據保護法處理客戶個人數據的詳細信息。其同時呼吁,世界各地同行對Facebook提出的天秤幣采取更多開放態度。目Facebook沒有立即對其進行回復。[2019/8/6]
攻擊流程
2020年11月30日,SushiSwap就曾因為SushiMaker的問題出現過一次攻擊(詳解參閱:以小博大,簡析SushiSwap攻擊事件始末),本次攻擊和第一次攻擊相似,但流程上有區別。相較于舊合約,在新的合約中,手續費在兌換的過程中會通過bridgeFor函數為不同交易對中的代幣尋找特定的兌換路由,然后進行兌換。
聲音 | 光大證券彭文生:Libra的發展關鍵要看監管機構如何在支持創新和監管之間的平衡:近日,光大集團研究院副院長、光大證券全球首席經濟學家彭文生表示,和比特幣等代幣相比,Libra尚未問世引來如此高的關注度,一是數字經濟下科技巨頭平臺公司和貨幣的網絡規模優勢有協同效應;二是Libra作為一攬子貨幣的衍生品,屬于數字貨幣中的穩定幣。而比特幣等代幣僅僅是數字資產,其未來價值取決于使用者對其的“信仰”,故其價格波動幅度會比較大。他還指出,未來Libra要成為貨幣,在起步階段,支付手段可能是突破口;但發展到一定規模后,儲值工具的作用更重要,是推動Libra能成為一種真正貨幣的主要力量。Libra現在是0,按常理起步會較慢,但不能低估其社區網絡帶來的規模效應。不過Libra的發展關鍵還要看監管機構如何在支持創新和監管之間的平衡。[2019/7/30]
其中,brdigeFor函數的邏輯如下:
根據bridgeFor的邏輯,我們不難發現,如果沒有手動設置過特定幣種的bridge,那么默認的bridge是WETH,也就是說,在未設置bridge的情況下,默認是將手續費兌換成WETH。而DIGG這個幣,就是正好沒有通過setBridge設置對應的bridge的。
但是這里還有一個問題,就是在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:?慢霧安全團隊
Tags:DIGIGGETHDIGGDigital Currency AggregatePIGGYeth價格今日行情人民幣DOGEDIGGER幣
尊敬的XT用戶: 為慶祝MATIC成功上線XT.COM交易所,XT.COM交易所將聯合MATIC舉辦兩周的交易量大賽.
1900/1/1 0:00:00尊敬的WBF用戶: NUC節點升級已完成,WBF現已恢復NUC的充幣和提幣業務,請您提前做好相應準備,在此期間給您帶來的不便敬請諒解,如有疑問,請咨詢WBF官方客服.
1900/1/1 0:00:00Dearusers, KEX?system?upgrade?hasbeencompleted.?Tradingservicesonourplatform?hasbeen?resumedalrea.
1900/1/1 0:00:00親愛的用戶: BigONE為支持CosmosNetwork的網絡升級和硬分叉,將于2021年1月27日19:00暫停ATOM的充值和提現服務,待ATOM的硬分叉和網絡升級完成,網絡運行穩定后.
1900/1/1 0:00:00?盡管中國公開中央銀行數字貨幣計劃的技術細節并不多,但數字人民幣已經引起人們對隱私,國家安全和權力的擔憂.
1900/1/1 0:00:00尊敬的用戶: FIL即將在WBF創新區上線,具體時間安排如下:上線時間:2021-1-2616:00星際文件系統IPFS是一個面向全球的、點對點的分布式版本文件系統.
1900/1/1 0:00:00