一、事件簡述
2020-06-18(文中所提及時間均為UTC時間),以太坊上的智能合約BancorNetwork被爆出存在嚴重漏洞。該漏洞由BancorNetwork團隊和白帽最先發現,并第一時間對存在被盜風險的資金進行了轉移,涉及資金50W余美元。此次事件中,存在漏洞的合約地址主要有如下三個:0x923cab01e6a4639664aa64b76396eec0ea7d3a5f0x8dfeb86c7c962577ded19ab2050ac78654fea9f70x5f58058c0ec971492166763c8c22632b583f667f2020-06-183:06:48,BancorNetwork團隊利用此漏洞對存在被盜風險的用戶資金進行轉移,截至2020-06-186:56,BancorNetwork團隊共計轉移資金約合$409,656。另外兩個公開郵箱信息的地址:0x052ede4c2a04670be329db369c4563283391a3ea0x1ad1099487b11879e6116ca1ceee486d1efa7b00也于同一時間利用此漏洞對用戶資金進行轉移,分別轉出資金$131,889和$2346。到目前為止:EtherScan已經將存在此漏洞的合約進行標注,如下圖所示
成都鏈安:Wuliangye NFT項目疑似Rug Pull,共獲利70.5個ETH:8月11日,成都鏈安鷹眼監測顯示,Wuliangye NFT項目疑似Rug Pull,官網和社群已關閉。成都鏈安安全團隊通過鏈必追-虛擬貨幣智能研判平臺追蹤發現,有595個地址購買了705個WLY NFT,項目方共獲利70.5個ETH,接著將ETH交換為111316.22個USDT,最終轉入0x28C6c06298d514Db089934071355E5743bf21d60地址(標記為Binance 14)。[2022/8/11 12:18:18]
圖一BancorNetwork團隊也已對此次事件做出了回應,
成都鏈安:Goldfinch項目的SeniorPool合約遭受攻擊,項目方累計損失超54萬美元:據成都鏈安“鏈必應-區塊鏈安全態勢感知平臺”安全輿情監控數據顯示,Goldfinch項目的SeniorPool合約遭受攻擊,攻擊者累計獲利28523個USDC,項目方累計損失541158個USDC。經成都鏈安技術團隊分析,本次攻擊原因是攻擊者可以利用Curve的FIDU-USDC池子獲取FIDU代幣,來獲取SeniorPool合約抵押USDC代幣的紅利。目前Curve中FIDU兌換USDC為1:1.03, 而在SeniorPool中的比例為1:1.07,這就產生了套利空間。[2022/6/28 1:36:11]
詳情見,并于UTC時間2020-06-1721:35:53部署了新的BancorNetwork合約,合約地址為0x2f9ec37d6ccfff1cab21733bdadede11c823ccb0二、原理分析
漏洞爆出后,成都鏈安安全團隊第一時間對本次事件進行跟蹤分析,根據鏈上分析結果發現,此次事件中漏洞產生的主要原因是智能合約BancorNetwork存在一個調用權限為public的函數safeTransferFrom,通過調用此函數,可以將用戶授權給智能合約BancorNetwork的資金轉出到任意地址。由源碼可以知,該函數為一個public函數,詳細代碼如下圖所示:
成都鏈安:whaleswap.finance項目遭受攻擊,至少損失5,946 個BUSD和5964個USDT:6月21日消息,據成都鏈安“鏈必應-區塊鏈安全態勢感知平臺”安全輿情監控數據顯示,whaleswap.finance項目遭受攻擊,成都鏈安技術團隊分析發現原因可能是因為whaleswap.finance Pair合約的K值校驗存在問題。每當用戶在進行交換時,K值校驗中傳入的參數量級存在問題,造成K值校驗失效。攻擊者先通過閃電貸借一筆BSC-USD,之后歸還閃電貸時K值校驗參數量級為10000^4。而K值校驗時采取的參數校驗量級為10000^2,導致K校驗失效。[2022/6/21 4:41:57]
圖二safeTransferFrom函數內部調用了execute函數。而execute函數的功能是調用safeTransferFrom參數中的_token代幣智能合約的transferFrom函數進行代理轉賬。execute函數源碼如下圖所示:
OneSwap智能合約代碼通過慢霧、成都鏈安、PeckShield安全審計:據海外媒體消息,OneSwap已9月6日順利通過智能合約代碼安全審計,此次審計工作由三家業內知名的安全公司慢霧科技,派盾PeckShield,成都鏈安完成。在審計過程中,三家獨立的審計團隊采取自身獨特的策略對OneSwap智能合約代碼進行全方位開展代碼審計工作,以最大程度確保及時發現漏洞。
審計團隊分別從攻擊漏洞測試、合約復雜度分析、代碼通用性、鏈上數據安全、代碼邏輯等方面對OneSwap智能合約代碼進行全方位的測試分析。OneSwap智能合約代碼均符合三家安全公司的安全審核標準,審計中發現的問題目前都已解決或正在解決中。
OneSwap是一個基于智能合約的完全去中心化的交易協議,在CFMM模型的基礎之上引入鏈上訂單簿來改善AMM用戶的交易體驗。上幣無需許可,可支持自動化做市、支持掛單挖礦、流動性挖礦和交易挖礦。據官方消息,Oneswap將在2020年9月7日正式上線并開啟公測。[2020/9/7]
成都鏈安CMO:交易所需建設一套完整的資金內控系統:3月11日晚8點,成都鏈安CMO Adolfo Gao做客“抹茶周三見”時發表觀點:交易所需建設一套完整的資金內控系統,并對每筆資金的出入都應該做好審核和記錄。此外他還指出,關鍵私鑰和轉賬授權的防護也是重中之重。成都鏈安科技是最早專門從事區塊鏈安全的公司,由前海母基金,聯想創投,復星國際,分布式資本等知名企業和創投戰略投資,電子科技大學楊霞教授,郭文生教授,高子揚博士聯合創立。“抹茶周三見”是MXC抹茶推出的一檔AMA活動,不定期邀請重量級嘉賓在周三進行分享。[2020/3/11]
圖三我們通過一筆鏈上交易可以清晰的看到調用此函數的具體作用。如地址“0xc802”發起一筆交易,調用了智能合約“0x5f58”的safeTransferFrom函數,使地址”0x8a39”中的0.000000000000000003代幣MFG發送到”0x2955”,具體如下圖所示:
圖四以上就是本次事件漏洞的原理分析,該漏洞的原理十分簡單,是因為函數的調用權限設置錯誤,將本應該只有合約本身調用的函數,設置成了任何人都可以調用。而當BancorNetwork擁有用戶的授權額度時,任何人都可以通過調用safeTransferFrom函數,以BancorNetwork的身份對用戶的資金進行代理轉賬。針對該漏洞,有兩點值得我們進行深入分析:1.為什么BancorNetwork合約的safeTransferFrom函數會將權限設置成public。2.BancorNetwork合約的主要功能是代幣轉換,并非一個錢包,為什么用戶會有未使用的授權。對于第一個問題,我們追蹤了safeTransferFrom函數的調用情況,發現safeTransferFrom函數只在handleSourceToken函數中被調用,用于將用戶的代幣轉移到本合約中。handleSourceToken函數源碼如下圖所示:
圖五既然只是在handleSourceToken函數中調用,那么顯然是沒有必要設置成public權限,且根據業務來看,BancorNetwork的主要作用是用于代幣交換,并不需要用戶主動調用safeTransferFrom,也就沒有必要將safetransferFrom設置為public權限。于是我們對比了合約中其他的幾個函數,這幾個函數均被設置成了public權限。如下圖所示:
圖六由此,針對第一個問題,我們推測將這些函數設置為public權限可能是因為合約開發人員的疏忽。而目前來看,BancorNetwork團隊新部署的合約也驗證了這個推測。根據鏈上代碼顯示,官方部署的新合約已經將相關函數權限全部進行了更改。具體代碼如下圖所示:
圖七針對第二個問題,我們跟蹤了漏洞爆出后被轉移資金的地址,發現這些地址在對BancorNetwork授權額度時,往往超過了所需要兌換代幣的數量,且在兌換完成后,并沒有收回額度。如下圖所示:
圖八“0x624f”開頭的地址對BancorNetwork合約授權了900000000000000個ONG代幣,此額度已經超過了ONG的發行量,相當于將“0x624f”所擁有的ONG代幣全部授權給BancorNetwork合約。而跟蹤“0x624f”開頭地址的交易我們發現,在進行完代幣兌換后,未使用完所有授權額度,但并未將授權額度收回。綜上所述,我們推測可能是用戶考慮到要隨時使用,為了方便,一次性將所有代幣都授權給了BancorNetwork合約。也可能是BancorNetwork的前端對授權金額設定了默認值。但這種行為存在巨大的風險,一旦智能合約爆發漏洞,資金極易被攻擊者竊取。而在對后續新的BancorNetwork合約進行分析時發現,BancorNetwork團隊和用戶似乎也意識到了此問題存在的巨大風險,并做出了相應的安全防護。如下圖九、十為用戶對新合約的授權情況,對比兩筆線上交易不難看出,兩次授權的時間間隔很短,當用戶成功兌換完代幣后,剩余授權即被收回。
圖九
圖十三、結語
BancorNetwork本次爆出的漏洞,是一個較為簡單的漏洞,此類漏洞在代碼審計過程中十分容易被發現,但此次漏洞的影響卻很大,上線僅兩天,涉及的資金就已經超過50w美元。幸而BancorNetwork團隊及時發現并修復了漏洞,否則后果不堪設想。成都鏈安-安全研究團隊在此提醒各大智能合約運營商,因區塊鏈合約部署后不可更改的特性,對比傳統軟件,上線前做好充分的代碼審計十分重要,此次事件雖未造成太大的經濟損失,但勢必會讓用戶對BancorNetwork團隊產品的安全性產生質疑。另外也提醒廣大用戶和運營商,在授權資金給第三方合約時,都應保持謹慎,切不可盲目相信“大公司”,對任何合約的授權都應當秉承最小原則,不要使自己的資金安全掌握在他人手中。
Tags:ANCORKBancorETWSaba FinanceTyphoon NetworkBancor Governance TokenTorah Network
編者按:本文來自巴比特資訊,作者:JonaHarris和AvivZohar,譯者:Kyle,星球日報經授權發布.
1900/1/1 0:00:00文|秦曉峰編輯|郝方舟出品|Odaily星球日報 一季度,受新冠肆虐與原油價格戰影響,各主要金融市場表現不佳,美股多次熔斷,比特幣腰斬暴跌.
1900/1/1 0:00:00編者按:本文來自巴比特資訊,作者:JoelJohn,翻譯:屏風,星球日報經授權發布。最近,Compound和"收益率"抓住了大家的眼球和心理.
1900/1/1 0:00:00編者按:本文來自深潮TechFlow,作者:邦妮,Odaily星球日報經授權轉載。不出意外的話,礦機生產商億邦國際將于北京時間6月26日晚9點30分于美國納斯達克上市,募資規模8694萬美元到1.
1900/1/1 0:00:00近日,黃金又站在了全球金融投資產品頂端。昨晚,黃金的價格短暫突破至1790美元上方,創2012年10月份以來的新高,在今年上半年大環境如此差勁的情況下,黃金的表現給其他所有抗通脹的金融投資產品上.
1900/1/1 0:00:00幣圈的市場階段變了。技術突破、優質項目、新用戶的增速都在放緩。圈內人經歷了周期與黑天鵝,告別“萌新”,變得更聰明謹慎,從問“投啥最賺錢”到問“投啥不虧錢”,從一味追求暴富過渡向兼顧守護財富.
1900/1/1 0:00:00