加密貨幣交易所 加密貨幣交易所
Ctrl+D 加密貨幣交易所
ads

Uniswap和Lendf.Me遭攻擊始末:DeFi樂高組合下的“多米諾”式崩塌_UNI:END

Author:

Time:1900/1/1 0:00:00

編者按:本文來自PeckShield,Odaily星球日報經授權轉載。04月18日上午08:58開始,一DeFi平臺Uniswap被黑客利用重入漏洞實施了攻擊。PeckShield安全團隊迅速定位到問題,發現黑客利用了Uniswap和ERC777標準的兼容性問題缺陷實施了重入攻擊。糟糕的是,僅僅在24小時后,于04月19日上午08:45,又一知名DeFi平臺Lendf.Me也被黑客以類似的手段實施了攻擊。黑客攻擊的原理是:攻擊者利用以太坊ERC777標準的transferFrom()回調機制,在內部調用_callTokensToSend()回調函數時劫持交易,并在真正更新余額的_move()函數之前進行惡意攻擊。在Uniswap的攻擊案例中,攻擊者利用此漏洞消耗盡UniswapETH-imBTC池約1,278個ETH。而在Lendf.Me中,攻擊者則利用它來任意增加內部imBTC抵押金額,并通過從其他可用的Lendf.Me交易中借入10多種資產。

OmniBOLT與Unisat達成技術合作:5月23日消息,OmniBOLT 宣布與 Unisat 達成技術合作,并就如何拓展比特幣 Layer2、支持 BRC-20 閃電網絡支付、Ordinals 協議和錢包集成等問題進行了深入的技術交流,OmniBOLT 和 Unisat 雙方希望能突破目前比特幣主鏈交易的性能瓶頸,給用戶提供更高效更具性價比的產品。[2023/5/23 15:21:08]

PeckShield安全團隊認為這是自年初bZx遭攻擊之后,又兩起黑客利用DeFi系統性風控漏洞實施的攻擊。一個不容忽視的問題是,DeFi市場的風險可能不僅僅局限于平臺本身,單個平臺的模式創新很可能在與其他平臺業務接軌時產生漏洞風險。詳細漏洞攻擊細節,我們將在文章后面做詳細介紹。

Figure1:ERC777transferFrom()ERC777標準的業務組合兼容性問題

我們首先介紹下ERC777標準,ERC777出現的目的是對ERC20標準進行改進。其不但實現了功能擴展,還有ERC20標準一樣良好的兼容性,愿景是成為ERC20標準的有效繼承者。該標準擴展的功能之一是提供了“hook”機制,可以使普通地址或合約通過注冊一個tokensToSend()hook函數來控制或拒絕發送Token。這原本是在ERC20基礎上加強了對Token的風險控制接口,是一次有益的改進。不過由于DeFi項目的可組合特性,一個合約在不同產品之間相互調用時,其業務邏輯復雜度也會大大增加,這就給注入代碼攻擊提供了可能性。其中最關鍵的部分是,攻擊者可以通過注冊from的tokensToSend()來實行回調。我們從下面的代碼片段可以看到,ERC777標準中可以通過getInterfaceImplementer()獲得攻擊者的tokensToSend()接口,并在第1,056行調用此函數。而此處正是黑客劫持交易實施攻擊的入口。

Uniswap基金會任治理主管就商業源許可過期后跨鏈部署發布熱度檢查提案:4月7日消息,Uniswap基金會新任治理主管Erin Koen就商業源代碼許可證(BSL)過期后跨鏈部署和新uniswap.eth子域名創建發布熱度檢查提案,ErinKoen表示,BSL到期后,為每條鏈確定一個官方UniswapV3部署將是有益的,以便為用戶提供安全保障并明確Uniswap治理。此外,為了與在BSL到期后推薦的治理流程保持一致,Uniswap基金會建議創建一個新的ENS子域v3-deployments.uniswap.eth,以跟蹤Uniswap v3在L1和L2上的官方部署。該投票截止日期為4月14日06:29。[2023/4/7 13:49:43]

Figure2:ERC777-CompatibletokensToSend()Hijacking如2019年4月OpenZeppelin發布的帖子以及2019年7月發布的漏洞利用演示中所述,攻擊者可以自己定義函數tokensToSend(),并通過setInterfaceImplementer()來設置合約中的hook函數。

數據:Uniswap 24h交易量約9.74億美元跌8.79%:智能交易平臺Uniswap當前流動代幣總價值約為41.8億美元(-1.86%),24h交易量約為9.74億美元(-8.79%)。漲幅前三代幣:UNISTAKE(+63.81%)、UNN(+59.82%)、EPAN(+44.37%);跌幅前三代幣:CIBS(-44.18%)、FXF(-30.30%)、SPI(-26.27%)。[2021/2/11 19:31:20]

Figure3:OpenZeppelin'sExploitDemo(HookSetup)之后攻擊者就可以像傳統PC上的hook函數一樣,在tokensToSend()做任何事情。如下圖所示,攻擊者可以對同一筆交易進行多次交易。

庫幣被盜ERC20代幣已通過Uniswap交易266ETH:北京鏈安Chainsmap監測系統發現,截止北京時間今天下午5點,庫幣交易所被盜的ERC20代幣已經通過Uniswap交易獲利約266ETH。據北京鏈安鏈上安全專家SXWK介紹,今天涉案地址主要轉出了OCEAN、ORN、KAI三種ERC20代幣,部分經過中間地址跳轉后分配到三個地址,目前已經通過Uniswap交易的是OCEAN。

SXWK表示,通過DEX進行交易看似規避了中心化交易所的監管措施,但是它畢竟是幣幣交易,交易獲得的ETH依然存在一個接下來的處置問題。本次交易后,涉案者便將其中的118.6 ETH轉到了一個新的地址。[2020/9/27]

Figure4:OpenZeppelin'sExploitDemo(HookFunction)Uniswap攻擊分析

Uniswap被率先發現利用ERC777的兼容性問題實施了攻擊。就如此惡意交易在Bloxy中的截圖所示(hash:0x9cb1d93d6859883361e8c2f9941f13d6156a1e8daa0ebe801b5d0b5a612723c1),函數內部進行了一次tokenToEthSwapInput()調用。這意味著攻擊者可以先通過操縱交易匯率,然后再用另一筆imBTC以較低價格兌換更多的ETH。

Uniswap過去一周增加了1000個新交易對:去中心化交易所Uniswap在過去一周內增加了1000個新代幣交易對,其中許多的質量令人懷疑。自9月初以來,平均每天增加150對。對此,Messari去中心化金融分析師Jack Purdy表示,Uniswap上的交易對數量呈指數增長是“一件好事”,因為它“顯示了完全開放、無需許可的金融原始的力量”。(coindesk)[2020/9/10]

Figure5:UniswapHackLendf.Me攻擊分析

在Uniswap遭攻擊約24小時后,又一DeFi平臺Lendf.Me也遭到了黑客攻擊。下面是其中一個攻擊交易的截圖。如圖所示,supply()函數中調用真實轉賬函數transferFrom()時,被hook的攻擊者合約里嵌入了盜用Lendf.Me的withdraw()的提幣操作。

Figure6:Lendf.MeHack在這個交易例子中,攻擊者第一次supply()時確實向Lendf.Me存放了289.99999999個imBTC,而在第二個supply()中,攻擊者只存放0.00000001個imBTC,但由于攻擊者注冊了tokensToSend(),所以在執行doTransferIn()->IMBTC::transferFrom()時,調用了攻擊者函數tokensToSend(),攻擊者函數通過調用Lendf.Me的withdraw()函數把290個imBTC直接全部提走。需要注意的是,正常的業務邏輯應該是項目合約中的Balance會減去被攻擊者提走的290個imBTC,然而當supply()執行返回時,余額并未被重置,仍然為290imBTC。攻擊者就是通過控制修改Lendf.Me中攻擊者的imBTC抵押金額,有了足夠大的imBTC抵押,攻擊就可以從各種流動交易對中借出所有可用的10多種資產。

Figure7:Lendf.MeHackDetails資產流向

攻擊者0x538359共計從Lendf.Me獲利25,236,849.44美元,其中各個Token分布如下:

如上圖,攻擊者在獲利之后,馬上將各個Token轉移至其關聯賬號0xa9bf70之中,之后攻擊者數十次通過1inch.exchange,ParaSwap等平臺將其中比較搶手的WETH,PAX,BUSD等Token換成ETH,DAI,BAT代幣,另外將其中的TUSD,USDT代幣存入Aave借貸平臺。至此為止,攻擊者及其關聯賬號的余額如上所示。修復建議

PeckShield安全團隊在此建議開發者,可以采用“Checks-Effects-Interactions”方法來防止這類重入攻擊。舉個例子,Lendf.Me的supply()里如果是先更新token余額,再調用doTransferIn()。這將會讓攻擊在withdraw()之后沒有重置余額的可能性。另一方面,ERC777標準特性會不可避免地啟用hook機制,因此我們需要檢測并防止所有交易功能產生可以重入的風險。例如,如果supply()和withdraw()同時運行時加個互斥鎖,那么攻擊者就無法在supply()函數內部執行withdraw()操作。最后并不能被忽視的一點是,我們需要認真思考下DeFi業務組合可能存在的系統性風險問題,平臺方不僅要確保在產品上線前有過硬的代碼審計和漏洞排查,還要在不同產品做業務組合時考慮因各自不同業務邏輯而潛在的系統性風控問題。可能一個新創新,在原平臺一點問題都沒有,但組合接入另一個產品后就可能存在業務邏輯缺陷,進而成為黑客攻擊整個DeFi市場的入口。PS:此次黑客對Lendf.Me的攻擊對DeFi社區來說無疑是一場災難,在此建議廣大DeFi開發者務必注意業務存在的系統性風控風險,應盡可能和第三方安全公司合作排查一切潛在的安全風險。

Tags:UNISWAPUniswapENDUnirisAppleSwap AIuniswap幣Compendium.Fi

幣安交易所app下載
比特幣秘史(七十):他用27美元買了一套富人區的公寓_比特幣:KRI

本文來自:哈希派,作者:LucyCheng,星球日報經授權轉發。 前面我們說到,英國紐波特市有人因為丟失藏有7500枚比特幣的硬盤而懊悔至今;而挪威這位主人公KristofferKoch卻借著四.

1900/1/1 0:00:00
星球前線|Lendf.Me遭攻擊,dForce鎖倉價值暴跌至6美元_END:LFBTC價格

Odaily星球日報譯者|余順遂DeFi借貸協議Lendf.Me今日遭受攻擊。據悉,Lendf.Me是dForce生態系統中的借貸平臺,截至發稿時網站已無法訪問.

1900/1/1 0:00:00
312暴跌啟示:DeFi究竟缺了什么_Maker:MAKE

作者:NEST愛好者_九章天問312大跌,行業內很多人失去了信心,特別是DeFi領域。以穩定幣項目MakerDAO為代表,因為312的暴跌,導致抵押穩定幣的債倉出現穿倉情形,從而啟動了MKR的拍.

1900/1/1 0:00:00
如何讓DeFi生態不再“碎片化”?_EFI:DEFIDO

與傳統金融相比,DeFi的優勢之一是可組合性。目前以太坊生態系統上出現了MakerDAO、Compound、Uniswap這樣的“加密貨幣樂高”.

1900/1/1 0:00:00
BCH、BSV相繼減半,你對減半行情還有預期嗎?_BCH:ENV

昨天BTC短時波動劇烈,上演反復畫門行情,先是凌晨從7400美金跌至7100美金附近,隨后短時間內又拉升至7400美金。大盤行情震蕩的背后,其實與BCH、BSV相繼減半有關.

1900/1/1 0:00:00
SHA-256、MD-5,哈希散列函數這些原理你懂了嗎?_SHA:COI

編者按:本文來自區塊鏈大本營,作者:wagslane,譯者:火火醬,Odaily星球日報經授權轉載。本文對哈希函數進行簡要的介紹,旨在幫助讀者理解為什么要使用哈希函數,以及其基本工作原理.

1900/1/1 0:00:00
ads