作者:yudan@慢霧安全團隊
背景
2021年1月27日,據慢霧區情報,SushiSwap再次遭遇攻擊,此次問題為DIGG-WBTC交易對的手續費被攻擊者通過特殊的手段薅走。慢霧安全團隊在收到情報后立馬介入相關事件的分析工作,以下為攻擊相關細節。
SushiMaker是什么
SushiMaker是SushiSwap協議中的一個重要的組件,其用于收集SushiSwap每個交易對的手續費,并通過設置每個代幣的路由,將不同交易對的手續費最終轉換成sushi代幣,回饋給sushi代幣的持有者。這個過程就是發生在SushiMaker合約上。
說說恒定乘積
恒定乘積的公式很簡單,在不計算手續費的情況下,恒定乘積的公式為
Terra 2.0 社區已啟動就有關如何分配 0.5% 應急資金提案的投票:6月9日消息,Terra 2.0 社區已啟動就有關如何分配 0.5% 應急資金提案的投票,該提案建議將這部分資金分配給在 Terra Classic 上推出過符合市場需求的產品,包括產生了一定量的 TVL 和沒有產生 TVL 的項目以及尚未推出過符合市場需求產品的項目,并提議向以上三類項目分別分配 250 萬枚 LUNA、100 萬枚 LUNA 和 150 萬枚 LUNA。此外,該提案建議組件一個由部分 Terra 社區的長期成員組成的理事會監督分配工作。[2022/6/9 4:13:09]
直播|Elsa > 區塊鏈企業錢包如何防護數字資產安全:金色財經 · 直播主辦的《 幣圈 “后浪” 仙女直播周》第8期20:00準時開始,本期“后浪”仙女太壹科技 首席品牌官 Elsa將在直播間聊聊“區塊鏈企業錢包如何防護數字資產安全”,感興趣的朋友掃碼移步收聽![2020/7/12]
也就是說每次兌換,其實都是遵循這個公式,及交易前后K值不變,在兌換的過程中,由于要保持K值不變,公式的形式會是這個樣子
其中X代表賣掉的代幣,Y代表要購買的代幣,那么每次能兌換到的代幣數量會是這個樣子(具體的推導過程就不演示了:D)
趙錫軍:央行數字貨幣重點在于如何與傳統貨幣進行融合:對于“數字貨幣研發重點和難點”的看法,中國人民大學財政金融學院副院長趙錫軍指出,其中涉及兩個問題。一是技術是否成熟。比特幣實際上就是數字貨幣最初的雛形,從技術層面來講,比特幣是有一些缺陷的,一旦支付量變大,就會出現支付困難或者效率下降。另外,比特幣出現過被盜等安全問題。而據央行貨幣研究所所長穆長春的一個內部研討會指出,央行數字貨幣,效率是非常高的,支付能力很強,說明已經克服技術方面的問題。二是數字貨幣被引入后,如何與傳統的貨幣和貨幣管理運行體系進行融合。數字貨幣的發行,是基于區塊鏈的基礎,它是有上限的,從目前來講它的發行規模取決于互聯網的算力。盡管穆長春所長也提到,央行數字貨幣現在可以突破區塊鏈的上限限制,但是破獲以后,它的發行究竟是怎么樣的,是否能夠跟我們目前的人民幣發行順利融合,這需要在制度層面有所安排。(澎湃新聞)[2020/4/22]
大咖零距離 | 半年收益38倍教你如何成就自己的交易系統:3月10日18:00,金色盤面邀請實盤大V以太坊大手子做客金色財經《大咖零距離》直播間,將分享《半年收益38倍教你如何成就自己的交易系統》,敬請關注,欲進群觀看直播掃描下圖二維碼報名即可![2020/3/10]
從公式上可以看到,當輸出代幣Y的兌換數量上限取決于Y代幣的數量,而和X代幣數量的大小無關,反過來說,如果要賣掉的X代幣數量很大,但是Y代幣的數量很小,那么就會造成大量的X代幣只能兌換出少量的Y代幣,而這個兌換價格相比正常的交易價格會偏離很多,這就是所謂的滑點,是本次攻擊中的關鍵。
攻擊流程
2020年11月30日,SushiSwap就曾因為SushiMaker的問題出現過一次攻擊(詳解參閱:以小博大,簡析SushiSwap攻擊事件始末),本次攻擊和第一次攻擊相似,但流程上有區別。相較于舊合約,在新的合約中,手續費在兌換的過程中會通過bridgeFor函數為不同交易對中的代幣尋找特定的兌換路由,然后進行兌換。
在惡性通脹的委內瑞拉,比特幣如何成了\"硬通貨\":3月26日消息,據國外媒體報道,在世界各地,比特幣主要是一種投機性投資,其飆升的價格往往被人們視為數字貨幣泡沫。而在委內瑞拉,由于國家的通貨膨脹率畸高,持有數子貨幣成為了當地民眾的生存手段。[2018/3/26]
其中,bridgeFor函數的邏輯如下:
根據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?
據Siliconrepublic2月2日報道,總部位于都柏林的全球銀行集團We.trade籌集了550萬歐元,這些資金將用于進一步開發基于IBM的跨境交易平臺.
1900/1/1 0:00:00寫在前面 伴隨著區塊鏈的技術發展,零知識證明技術先后在隱私和Layer2擴容領域得到越來越多的應用,技術也在持續的迭代更新.
1900/1/1 0:00:00目錄 數據區塊鏈歷史狀態見證數據節點類型P2P協議 數據 Header 即以太坊協議所定義的Header對象.
1900/1/1 0:00:00當前,全球經濟越來越呈現數字化特征,人類社會正在進入以數字化為主要標志的新階段。數字經濟已經成為世界的主要經濟形態,也成為推動我國經濟社會發展的核心動力.
1900/1/1 0:00:00金融隱私公鏈Findora宣布與區塊鏈服務網絡BSN國際展開合作,增強金融資產的隱私保護和可審計性.
1900/1/1 0:00:001月30日,CFTC公布了最新一期CME比特幣期貨周報,最新統計周期內BTC出現了約6000美元的大幅回調,并一度跌破30000美元整數大關.
1900/1/1 0:00:00