- +1
Vyper語(yǔ)言漏洞致CurveFinance遭攻擊,超1億美元加密資產(chǎn)面臨風(fēng)險(xiǎn)

CurveFinance作為Vyper語(yǔ)言的使用者,其多個(gè)穩(wěn)定幣池遭到攻擊并損失了約2500萬(wàn)美元。
7月30日,智能合約編程語(yǔ)言Vyper的部分版本被發(fā)現(xiàn)存在嚴(yán)重漏洞,包括CurveFinance在內(nèi)的重要項(xiàng)目因此遭受了攻擊,損失數(shù)千萬(wàn)美元,此次攻擊事件為智能合約的安全性敲響了警鐘。
本次漏洞源于Vyper語(yǔ)言版本0.2.15至0.3.0之間的重入鎖機(jī)制失效。對(duì)于區(qū)塊鏈項(xiàng)目來(lái)說(shuō),重入鎖功能失效問(wèn)題可能會(huì)導(dǎo)致合約的執(zhí)行流程被打斷或者產(chǎn)生不可預(yù)期的結(jié)果,從而影響整個(gè)系統(tǒng)的穩(wěn)定性。
CurveFinance在推特發(fā)表聲明稱,使用Vyper0.2.15編寫的多個(gè)穩(wěn)定幣池(alETH/msETH/pETH)遭到了攻擊。事件發(fā)生后,CurveFinance作為Vyper語(yǔ)言的使用者,其多個(gè)穩(wěn)定幣池遭到攻擊并損失了約2500萬(wàn)美元。CRV代幣價(jià)格也在各交易所遭遇閃崩,最小跌至0.08美元。
重入鎖防御失效
北京時(shí)間7月30日,Vyper團(tuán)隊(duì)在推特上披露,其智能合約編譯器的最新版本(0.2.15、0.2.16和0.3.0)沒(méi)有正確實(shí)現(xiàn)防止重入攻擊的保護(hù)措施,導(dǎo)致了多個(gè)使用Vyper編寫的DeFi(去中心化金融)項(xiàng)目的重入鎖防御失效。Vyper團(tuán)隊(duì)在推特上發(fā)表的公告中強(qiáng)烈建議,所有使用了這些受影響版本的項(xiàng)目應(yīng)立即與他們?nèi)〉寐?lián)系,以獲取及時(shí)的技術(shù)支持和解決方案。
Curve是以太坊DeFi生態(tài)系統(tǒng)中心的穩(wěn)定幣交易所,專注于穩(wěn)定幣和其他低波動(dòng)性資產(chǎn)的交易。據(jù)悉,Vyper是一種用于支持Curve系統(tǒng)某些部分的編程語(yǔ)言。目前,該平臺(tái)上的幾個(gè)穩(wěn)定幣池已經(jīng)被黑客攻擊并盜走了資金。
重入攻擊(ReentrancyAttack)是智能合約領(lǐng)域的一個(gè)常見(jiàn)漏洞。它指的是合約函數(shù)可以在一個(gè)函數(shù)執(zhí)行過(guò)程中,被同一合約的其他函數(shù)再次調(diào)用。如果合約邏輯不嚴(yán)密,就可能被利用進(jìn)行重復(fù)提取資金等惡意操作。
舉例來(lái)說(shuō),假設(shè)有一個(gè)智能合約提供了存款和取款的功能。取款函數(shù)的邏輯是先將用戶的余額減去取款金額,然后將取款金額轉(zhuǎn)給用戶。如果用戶是一個(gè)惡意合約,它可以在接收到轉(zhuǎn)賬時(shí),再次調(diào)用取款函數(shù),因?yàn)榇藭r(shí)合約還沒(méi)有更新用戶的余額,所以可以重復(fù)取款。這樣就可以將銀行合約中的資金全部轉(zhuǎn)走。
據(jù)悉,Curve運(yùn)營(yíng)著232個(gè)不同的池,其團(tuán)隊(duì)成員mimaklas在Discord上宣布,只有使用Vyper0.2.15、0.2.16和0.3.0版本的池存在風(fēng)險(xiǎn),其他池子是安全的。Curve的部分流動(dòng)性池使用了Vyper編寫的智能合約,因此受到了該漏洞的影響。據(jù)估計(jì),Curve的CRV/ETH池被盜走了價(jià)值約2500萬(wàn)美元的資金。此外,Alchemix(alETH發(fā)行方)、JPEG'd(pETH發(fā)行方)、Metronome(msETH發(fā)行方)等其他使用Curve池機(jī)制的DeFi項(xiàng)目也遭到了類似的攻擊。mimaklas表示,“所有受影響的池已經(jīng)被抽空或白帽黑客攻擊,團(tuán)隊(duì)正在與受影響的團(tuán)隊(duì)評(píng)估情況?!?/p>
值得一提的是,并非所有的攻擊者都是惡意的。部分白帽黑客和MEVBot(最大可提取價(jià)值機(jī)器人)將盜取的資金返還給了受影響的項(xiàng)目,以減輕他們的損失。例如,CRV/ETH池被攻擊后,一個(gè)MEV機(jī)器人部署者向Curve部署者返還了價(jià)值約539萬(wàn)美元的2879.54ETH。另一個(gè)MEV機(jī)器人部署者也向Alchemix返還了價(jià)值約1000萬(wàn)美元的ETH。
據(jù)區(qū)塊鏈技術(shù)安全公司派盾(PeckShield)統(tǒng)計(jì),此次重入攻擊事件已造成約5200萬(wàn)美元的損失。其中,Curve的CRV/ETH池被盜走了價(jià)值約2500萬(wàn)美元的資金,Alchemix(alETH發(fā)行方)、JPEG'd(pETH發(fā)行方)、Metronome(msETH發(fā)行方)等其他使用Curve池機(jī)制的DeFi項(xiàng)目也遭到了類似的攻擊,損失了價(jià)值約2700萬(wàn)美元。
CRV代幣暴跌
這些攻擊引發(fā)了社區(qū)對(duì)CurveDAO的CRV代幣價(jià)格波動(dòng)和清算風(fēng)險(xiǎn)的擔(dān)憂。CRV是Curve平臺(tái)上的治理和獎(jiǎng)勵(lì)代幣。事件發(fā)生后,CRV在去中心化交易所上一度暴跌了86%,從4.5美元跌至0.6美元。然而,在鏈上數(shù)據(jù)顯示,攻擊者還沒(méi)有開(kāi)始出售他們盜取的價(jià)值約450萬(wàn)美元的CRV,因此價(jià)格可能還會(huì)進(jìn)一步下跌。
極端情況之下,由于CRV的鏈上流動(dòng)性儲(chǔ)備未能有效承接集中拋壓,今晨CRV在多個(gè)DEX上的交易價(jià)格均出現(xiàn)了劇烈波動(dòng),其中,在3:05至3:15期間,Uniswap(基于以太坊的去中心化交易協(xié)議)上CRV/WETH交易對(duì)的瞬時(shí)價(jià)格幾乎歸零,最低一度跌至0.08美元左右。
幸運(yùn)的是,這一極端瞬時(shí)價(jià)格并沒(méi)有被Chainlink預(yù)言機(jī)所報(bào)出,作為當(dāng)前業(yè)內(nèi)最常用的預(yù)言機(jī)服務(wù),Chainlink在3:05至3:15時(shí)段所報(bào)出的最低價(jià)格為0.59美元。這一操作有效地避免了大規(guī)模的清算潮,阻止了CRV幣價(jià)格進(jìn)一步暴跌,使DeFi生態(tài)免于陷入深淵。此前,Chainlink預(yù)言機(jī)由于采用了CEXs+DEXs的加權(quán)報(bào)價(jià)機(jī)制引發(fā)爭(zhēng)議,但在這個(gè)特殊時(shí)刻,它發(fā)揮了制動(dòng)器的作用,保護(hù)了DeFi生態(tài)中大量使用CRV幣作為抵押品或流動(dòng)性資產(chǎn)的用戶和項(xiàng)目,幫助整個(gè)行業(yè)避免了更大的災(zāi)難。
這次事件也引起了人們對(duì)Curve創(chuàng)始人邁克爾·埃戈羅夫(MichaelEgorov)巨額借貸行為的再一次關(guān)注。埃戈羅夫在Aave、Fraxlend、Abracadabra和InverseFinance等頂級(jí)借貸協(xié)議上,使用了價(jià)值超過(guò)1億美元的CRV代幣作為抵押物,借入了大量的穩(wěn)定幣。如果CRV的價(jià)格跌破清算線,埃戈羅夫的倉(cāng)位將被清算,這將對(duì)Aave和其他借貸協(xié)議造成巨大的壞賬損失,因?yàn)镃RV的鏈上流動(dòng)性不足以清算埃戈羅夫的倉(cāng)位。據(jù)悉,埃戈羅夫在事件發(fā)生后,迅速償還了部分債務(wù),并增加了抵押物,將他在DeFi借貸平臺(tái)Aave上的清算線降低到了$0.37。
目前,為了防止CRV的價(jià)格波動(dòng)導(dǎo)致的連鎖清算,DeFi借貸平臺(tái)Aave和其他協(xié)議已經(jīng)暫停了CRV的借款功能,并提高了借貸費(fèi)用。
Vyper創(chuàng)建于2017年,與Solidity一樣,都是一種面向智能合約的編程語(yǔ)言,可編譯為以太坊虛擬機(jī)(EVM)的字節(jié)代碼,運(yùn)行在EVM上。
Vyper的編譯器使用Python進(jìn)行編寫,是一種基于Python且兼容EVM的編程語(yǔ)言,具有強(qiáng)類型、小型編譯器代碼和高效的字節(jié)碼生成的特點(diǎn),這也使其成為想要進(jìn)入Web3的Python開(kāi)發(fā)人員的最佳選擇之一。
目前的Vyper也是僅次于Solidity的第二大兼容EVM的智能合約編程語(yǔ)言。從采用率角度,在目前的DeFi開(kāi)發(fā)格局中(TVL占比維度),Solidity以94.71%的市場(chǎng)份額占據(jù)絕對(duì)壟斷地位,而Vyper以3.04%的市場(chǎng)份額位列第二名。
這次Vyper語(yǔ)言漏洞導(dǎo)致的安全事件,無(wú)疑給開(kāi)發(fā)者選擇編程語(yǔ)言帶來(lái)了警示。本次事件突顯了Vyper在防范重入攻擊方面的漏洞,這也給該語(yǔ)言的發(fā)展帶來(lái)了打擊。雖然Vyper具有Python語(yǔ)法的易用性,但安全隱患的存在可能會(huì)使很多開(kāi)發(fā)者三思。





- 報(bào)料熱線: 021-962866
- 報(bào)料郵箱: news@thepaper.cn
滬公網(wǎng)安備31010602000299號(hào)
互聯(lián)網(wǎng)新聞信息服務(wù)許可證:31120170006
增值電信業(yè)務(wù)經(jīng)營(yíng)許可證:滬B2-2017116
? 2014-2025 上海東方報(bào)業(yè)有限公司




