據慢霧區消息,幣安智能鏈(BSC)DeFi項目ImpossibleFinance遭遇閃電貸攻擊。慢霧安全團隊第一時間介入分析,并將結果分享如下:
攻擊細節分析
ImpossibleFinance的DEX架構參考了Uniswapv2,但在Pair的實現上有所不同。ImpossiblePair分別實現了cheapSwap與swap兩個接口。cheapSwap函數限制了只由Router合約可進行調用,swap函數則是任意用戶都可調用進行代幣兌換操作。本次攻擊事件的根本原因正是出在這種特殊的代幣兌換架構上,接下來我們對此次攻擊進行具體分析:
首先攻擊者利用閃電貸從PancakeSwap中借出大量WBNB,并最終將其兌換成IF(ImpossibleFinance代幣)?。
聲音 | 推特首席執行官:比特幣將繼續被更廣泛地采用,但“不具備貨幣功能”:9月4日,Square和推特的首席執行官Jack Dorsey在接受澳大利亞金融評論的采訪時表示,比特幣(BTC)將繼續被更廣泛地采用,但將它視為一種貨幣還為時尚早。Dorsey稱,比特幣“不具備貨幣功能”,比特幣的高峰和低谷使其就像一種投資資產,相當于黃金。我們需要做的是讓它更有用,可以作為一種貨幣使用,但目前還沒有。Dorsey表示,一旦加密貨幣成為互聯網的貨幣,Square將更多地關注增加價值的服務,而不是那些能夠讓錢轉移的服務。[2019/9/5]
動態 | 德國監管機構建議投資者“不要插手”ICOs:據newsbtc報道,德國金融監管機構——德國金融監管局(BaFin)主席Felix Hufeld支持建立一套針對首次代幣發行(ICOs)的全球監管框架。Felix Hufeld對加密貨幣融資持批評態度,他建議私人投資者“不要插手此類事情”。[2018/10/31]
隨后攻擊者創建了一個由自己控制的代幣AAA(BBB),并與上一步驟中獲得的IF代幣添加流動性。
之后攻擊者通過Router傳入自定的兌換路徑(AAA->IF->BUSD)將AAA代幣兌換成BUSD代幣,而問題正是出現在此兌換過程中。通過鏈上記錄我們可以很容易的發現攻擊者在將AAA代幣兌換成IF代幣的過程中進行了兩次兌換操作:
CFTC委員:我們不想對創新者說“不”:今天在雅虎財經全市場峰會加密貨幣部分,CFTC委員Brian Quintenz接受CoinDesk總編的采訪時表示,昨天聽證會上需要注意的一點是,你們沒有聽說任何一位主席使用“不,絕對不是,這不是安全的,我們必須不惜一切代價”這樣的表達方式來描述加密貨幣。該委員表示,我們不想對創新者說“不”。他還建議加密貨幣投資者應該創建“某種自律組織”來制定規范和規則。[2018/2/8]
為什么在一次兌換過程中會進行兩次兌換操作呢?
Longfin首席執行官Venkat Meenavalli:公司達到的市場價值“不是很現實”:金融科技公司Longfin收購了一家加密貨幣公司后,其市場份額上升了1000%以上。但首席執行官認為不應該這樣。Longfin首席執行官Venkat Meenavalli 在CNBC的Fast Money中表示: “我們是一家盈利的公司,我們為此非常興奮狂熱。”他后來補充說,公司達到的市場價值“不是很現實”。[2017/12/20]
通過分析具體的內部調用流程我們可以發現,攻擊者在Router合約調用AAA合約的transferFrom函數將AAA代幣轉入Pair合約的過程中,同時調用了一次Pair合約的swap函數(即在transferFrom函數實現了正常轉賬與swap調用的邏輯)。然后再通過項目設計預期的cheapSwap再進行一次正常的代幣兌換操作。
通過以上分析我們可以知道攻擊者在一次代幣兌換過程中分別通過調用swap函數與cheapSwap函數進行兩次代幣兌換操作,最終收到了額外的BUSD代幣。那么既然是進行兌換操作,理論上每次兌換操作都將導致K值的變化,最終使得用戶無法獲得預期的代幣。
但通過分析ImpossiblePair的swap函數與cheapSwap函數的具體邏輯,我們發現一個驚人的情況:在swap函數中進行了K值檢查,而在cheapSwap函數卻未進行K值檢查而直接進行了update操作。這就導致了攻擊者進行了多次兌換操作獲得了額外的BUSD。
攻擊流程
1、攻擊者先通過PancakeSwap閃電貸借出WBNB,并將WBNB兌換成IF代幣。
2、創建惡意的代幣合約AAA(BBB),并在Impossible中添加了AAA代幣與IF代幣流動性。
3、通過AAA->IF->BUSD路徑進行AAA代幣到BUSD代幣的兌換,并在AAA代幣轉入Pair合約兌換成IF代幣的過程中進行了一次IF代幣與BUSD的兌換操作,隨后再進行正常的cheapSwap操作。最終獲得了額外的BUSD代幣。
4、之后重復以上操作進行獲利。
總結
本次攻擊的核心在于cheapSwap函數中未進行K值檢查,導致攻擊者可以通過在一次兌換過程中進行多次兌換操作以獲得額外的代幣。慢霧安全團隊建議DeFi協議在參考其他項目的基礎上進行創新的過程中應該充分的對其新的模型進行檢查驗證以避免此類安全事故的發生。
參考交易:
https://bscscan.com/tx/0x0220704a99ddfb982d26e65cc337f26b77dc057930b7aa1d848cc48ec77984a8
經過數月的社區合作,KeepNetwork與NuCypher于上周五完成了合并提案RC0的投票,合并后的項目代號為KEANU,這意味著雙方將進行鏈上網絡升級以結合兩個去中心化網絡.
1900/1/1 0:00:00分析師|Carol?編輯|Tong?出品|PANews去年此時,以太坊上的DeFi生態開始爆發.
1900/1/1 0:00:0002:00美聯儲FOMC公布利率決議、政策聲明及經濟預期。02:30美聯儲主席鮑威爾召開新聞發布會.
1900/1/1 0:00:00據監管數字歐元發展的央行執委表示,推出數字歐元將促進消費者隱私,并保護歐元區免受可能損害其貨幣主權的競爭性加密貨幣的“威脅”.
1900/1/1 0:00:002017年9月4日,中國人民銀行等七部門聯合發布《關于防范代幣發行融資風險的公告》,明確禁止代幣發行融資行為,打擊虛擬貨幣炒作.
1900/1/1 0:00:00北京剛剛又發放了20萬份數字人民幣紅包,領到紅包的幸運者可以在京東、滴滴等應用內體驗數字人民幣的支付.
1900/1/1 0:00:00