前言
昨晚突然看到群里的一個消息,揭秘uniswap-defi項目漏洞-割韭菜新手法,心想還有這事?而且還是中英文介紹。
到底什么是DeFi?網絡上有很多關于?DeFi的定義,目前通用的定義是這樣的:DeFi是自己掌握私鑰,以數字貨幣為主體的金融業務這個定義包含三個層面的意思:
自己掌握私鑰
以數字貨幣為主體
金融業務
DeFi是DecentralizedFinance的縮寫,也被稱做OpenFinance。它實際是指用來構建開放式金融系統的去中心化協議,旨在讓世界上任何一個人都可以隨時隨地進行金融活動。
在現有的金融系統中,金融服務主要由中央系統控制和調節,無論是最基本的存取轉賬、還是貸款或衍生品交易。DeFi則希望通過分布式開源協議建立一套具有透明度、可訪問性和包容性的點對點金融系統,將信任風險最小化,讓參與者更輕松便捷地獲得融資。
幾年前區塊鏈行業還沒有DeFi這個概念,從默默無聞,一躍成為區塊鏈行業的熱門話題,DeFi只用了短短幾年時間。Uniswap作為完全部署在以太坊鏈上的DEX平臺,促進ETH和ERC20代幣數字資產之間的自動兌換交易,為DeFi發展提供了良好的支持。
數據:當前DeFi協議總鎖倉量為2165億美元:2月6日消息,據Defi Llama數據顯示,目前DeFi協議總鎖倉量2165億美元,24小時增加1.55%。鎖倉資產排名前五分別為Curve(191.4億美元)、MakerDAO(169.7億美元)、Convex Finance(133.9億美元)、AAVE(123.8億美元)、WBTC(108.8億美元)。[2022/2/6 9:34:30]
作者抓住當下區塊鏈熱門話題DeFi作為文章主題介紹如何利用?uniswap-defi項目漏洞割韭菜。很顯然經過精心思考。
分析
打開教程鏈接,原文教程提醒
Full?open?source?code----only?for?research?and?testing,?don't?cheat?using?this?method
作者特別提醒:完全開放源碼----僅用于研究和測試,不要使用這種方法作弊。
教程中提到合約代碼可以在如下鏈接下載
Click?to?enter?edit?mode?and?copy?the?code?into?it?(download?address?of?the?contract?code:https://wwr.lanzous.com/i4MJOg6f2rg)
Avalanche鏈上DeFi協議總鎖倉量為92.4億美元:金色財經報道,據DefiLlama數據顯示,目前Avalanche鏈上DeFi協議總鎖倉量為92.4億美元,24小時增加1.60%。鎖倉資產排名前五分別為AAVE(24.7億美元)、TraderJoe(12.9億美元)、Benqi(10.2億美元)、Curve(9.76億美元)、multichan(8.12億美元)。[2022/2/4 9:31:09]
根據教程提供的鏈接,下載代碼查看
首先看到onlyOwner函數,而且條件判斷中的address是硬編碼的,這里說一下以太坊中的地址
以太坊地址
以太坊中的地址的長度為20字節,一字節等于8位,一共160位,所以address其實亦可以用uint160來聲明。以太坊錢包地址是以16進制的形式呈現,我們知道一個十六進制的數字占4位,160/4=40,所以錢包地址ca35b7d915458ef540ade6068dfe2f44e8fa733c的長度為40。
很明顯,攻擊者特意使用uint160來編碼地址,起到了障眼法作用。如果不認真看,不會注意到這個address函數轉換后的地址。
DeFi基準利率平緩波動:金色財經報道,據同伴客數據顯示,06月03日DeFi去中心化金融基準利率為3.284%,較前一日上漲0.002%。同期美國國債抵押回購率(Repo Rate)為0.01%,二者利率差為3.274%。
DeFi基準利率代表了DeFi融資難易程度,利率越高說明融資成本越高,利率越低說明融資成本越低。其與Repo Rate的利率差則便于DeFi與傳統市場作進行同類比較。[2021/6/3 23:08:18]
通過對地址進行轉換
即:address(724621317456347144876435459248886471299600550182)?對應地址:0x7eed24C6E36AD2c4fef31EC010fc384809050926,這個地址即位合約實際控制賬戶地址。
繼續往下看原文教程
首先部署合約
然后添加到?Uniswapv1?資金池
這里介紹下?Uniswap
UniswapV1
UniswapV1基于以太坊區塊鏈為人們提供去中心化的代幣兌換服務。UniswapV1提供了ETH以及ERC20代幣兌換的流動性池,它具有當前DeFi項目中最引人注目的去中心化、無須許可、不可停止等特性。
DeFi平臺Cheese Bank遭到閃電貸攻擊損失330萬美元:金色財經報道,基于以太坊的DeFi平臺Cheese Bank最近因黑客攻擊遭受了330萬美元的損失。據悉,黑客利用閃電貸漏洞即時借入、交換、存款并再次借入大量代幣。因此,他們可以在單個交易所(例如Uniswap、Curve)上人為地操縱特定代幣的價格。區塊鏈安全公司PeckShield周一在博客中表示,Value DeFi和Akropolis最近遭受了類似的DeFi黑客攻擊。[2020/11/17 21:00:24]
UniswapV1實現了一種不需要考慮以上特點的去中心化交易所。它不需要用戶進行掛單,不需要存在需求重疊,可以隨買隨賣。得益于ERC20代幣的特性,它也不需要用戶將資產存入特定的賬戶。UniswapV1模型的優點在于根據公式自動定價,通過供需關系實現自動調價。
UniswapV1的運行機制的關鍵在于建立了供給池,這個供給池中存儲了A和B兩種貨幣資產。用戶在用A兌換B的過程中,用戶的A會發送到供給池,使供給池中的A增多,同時,供給池的B會發送給用戶。這里的關鍵的問題在于如何給A和B的兌換提供一個匯率。UniswapV1定價模型非常簡潔,它的核心思想是一個簡單的公式x*y=k。其中x和y分別代表兩種資產的數量,k是兩種資產數量的乘積。
Ampleforth推出DeFi流動性獎勵功能Geyser:Ampleforth通過其新功能Geyser引入流動性獎勵。質押其加密貨幣的用戶將獲得Ampleforth原生代幣AMPL,年化收益率(APY)預計高達134.51%。該功能由非托管去中心化金融平臺Uniswap提供支持。Ampleforth也在與其他公司合作。區塊鏈審計公司Certik已經批準Geyser,并給予它98%的及格分數。與此同時,Nexus正在為該項目的用戶提供保險。(Cryptobriefing)[2020/6/24]
假設乘積k是一個固定不變的常量,可以確定當變量x的值越大,那么y的值就越小;相反x的值越小,y的值就越大。據此可以得出當x被增大p時,需要將y減少q才能保持等式的恒定。為了做一些更實用的工作,將x和y替換為貨幣儲備金的儲備量,這些儲備金將被存儲在智能合約中。
即用戶可以把部署的合約可以添加到UniswapV1中,通過充入資產提供流動性,獲得該資金池產生的交易手續費分紅,過程完全去中心化、無審核上幣。
接著
You?don't?have?to?worry?that?you?will?lose?money,?because?other?people?can?only?buy?and?can't?sell?it??in?this?contract.?When?the?trading?pair?is?created,?you?can?change?for?another?wallet?(the?wallet?address?of?the?contract?can?be?bought?and?sold)?to?buy?it,?and?then?test?whether?it?can?be?sold.?Here's?the?information?for?selling`
這是為什么?看看代碼
合約代幣101行,require(allow==true),即轉賬地址from需要在allow這個mapping中為布爾值true。
而修改allow在addAllow函數中,且需要合約Owner權限。
通過合約Ownable代碼第13行可知,onlyOwner屬性中,只有地址為724621317456347144876435459248886471299600550182即前面提到的0x7eed24C6E36AD2c4fef31EC010fc384809050926用戶可以通過校驗,而且是硬編碼。這也是原文攻擊者為什么使用了以太坊地址的uint160格式來編碼地址,而不是直觀的十六進制地址。
最終部署的合約SoloToken直接繼承了Ownable合約
即只要用戶部署該合約,合約Owner權限都在攻擊者0x7eed24C6E36AD2c4fef31EC010fc384809050926手中。攻擊者可以隨時轉移合約權限。
在教程中攻擊者還提到
如果你想吸引買家,資金池必須足夠大,如果只投入1-2個ETH,其他人將無法購買它,因為基金池太小。即希望部署合約的用戶在資金池中添加更多的eth數量。攻擊者為什么要單獨Notice呢?
合約代碼第124行,mint函數,Owner權限用戶可以直接增發代幣。這是合約最關鍵部分。即攻擊者可以直接在合約中給指定地址增發代幣,然后利用增發得來的代幣去UniswapV1直接兌換合約部署用戶存放在?UniswapV1?資金池中的?eth?。這也是為啥教程作者著重提示多添加?eth?數量的根本原因。
截止目前,攻擊者地址0x7eed24C6E36AD2c4fef31EC010fc384809050926中已經獲利大約36eth。
總結
Uniswap?因無需訂單薄即可交易的模型創新引來贊譽,也因投機者和詐騙者的涌入遭到非議,在業內人士看來,Uniswap?的自動做市商機制有著特別的價值,作惡的不是Uniswap,但惡意與貪婪正在這個去中心化協議中一覽無余。
流動性挖礦點燃DeFi烈火,火勢燒到去中心化交易所Uniswap。它憑借支持一鍵兌幣、做市可獲手續費分紅,迅速成為最炙手可熱的DeFi應用之一。
財富故事在這里上演,某個新幣種可能在一天之內制造出數十倍的漲幅,讓參與者加快實現「小目標」;泡沫和罪惡也在此滋生,完全去中心化、無審核上幣,讓Uniswap成了人人可發幣割韭菜的溫床。
DeFi作為當下區塊鏈熱門話題,很容易吸引人們的注意。攻擊者利用人們貪圖便宜的好奇心理。使用所謂的?uniswap-defi項目漏洞?教程一步一步帶用戶入坑。以當下區塊鏈中最火的DeFi類為主題,分享了?揭秘uniswap-defi項目漏洞-割韭菜新手法?教程。如果用戶不注意看合約代碼,很容易掉入攻擊者精心構造的陷阱中去。成為真正的韭菜。
REF
UNISWAPissuingtokens-enhancingtokens(consumerscanonlybuybutcannotsell)
https://note.youdao.com/ynoteshare1/index.html?id=a41d926f5bcbe3f69ddef765ced5e27b&type=note?auto
代幣合約
https://wwr.lanzous.com/i4MJOg6f2rg
Tags:DEFEFIDEFISWAPYearn DeFi ForkEFI幣World of Defishpawswap幣上線
自從11多年前,比特幣誕生以來,比特幣的用例和敘事發生了很大的變化,從點對點的現金到匿名暗網貨幣再到數字黃金等等。在這一歷程中,有一個核心部分可以說沒有改變:它的去中心化金融方式.
1900/1/1 0:00:00頭條 ▌SushiSwap創始人ChefNomi返還3.8萬枚ETH在遭到公眾強烈抗議后,SushiSwap化名創始人ChefNomi周五表示,已向該項目返還了約38000枚以太坊.
1900/1/1 0:00:00早上持幣者的文章里寫到過關于階段性拉漲的問題,這個階段性拉漲趨勢是早間3點左右已經形成,在今日11點30分左右,又出現了階段性的拉漲.
1900/1/1 0:00:00親愛的用戶:為了更好地服務用戶,幣安逐倉杠桿已增加以下資產與交易對:新增逐倉可抵押資產:RSR、DIA、OCEAN新增逐倉可借貸資產:RSR、DIA、OCEAN新增逐倉交易對:RSR/BTC、R.
1900/1/1 0:00:00ePro的中國項目。 此前,以太坊聯合創始人之一V神也表示支持路印的zkRollups二層擴容技術。Coinbase和V神為何都不約而同的看好路印?《比推》對路印協議創始人王東進行了專訪.
1900/1/1 0:00:00尊敬的LBank用戶: 為回饋LBK社區用戶,LBank將開啟「LBK雙倍價格回購」第二期。本次活動將于9月18日啟動,本輪回購金額待定.
1900/1/1 0:00:00