@UniLend_Finance是一個去中心化的無許可貨幣市場協議,通過智能合約為用戶提供借貸服務。
在UniLend平臺上,用戶可以將其加密貨幣作為質押物投入網絡,借用其他加密資產。為了確保借貸安全,借貸者通過支付利息來獲得資金,而借出者則根據每個區塊的複合年化收益率(APY)賺取利息。
UniLend協議V2主要通過以下三個技術功能來運作:
1、雙資產池模型
UniLend為每個ERC20/ERC20兼容的資產對設置了獨立的雙資產池。這樣一來,一個資產的波動不會影響到其他資產,從而增加了安全性和穩定性。用戶可以在多個區塊鏈上創建和管理不同的借貸池,涵蓋多種資產。
2、供應與借款機制
3、 利率模型
UniLend採用動態利率模型,通過使用率(U)來設定利率,公式如下:
Ux=借款x借款x+現金x
借款利率:
借款利率x=10%+(Ux×30%)
當使用率越高時,利率就會相應上升,以平衡供需。
供給利率x=借款利率x×Ux×(1−S)
這樣一來,供應商可以確保獲得持續的回報,同時平臺也能保持盈利。
這三大功能共同運作,打造出一個安全、高效且可擴展的去中心化貨幣市場。
2025年1月12日,UniLend協議的一個安全漏洞被攻擊者利用,導致UniLend池中約20萬美元的資金被盜。攻擊者通過操控抵押物的計算,錯誤評估了用戶的健康因子,從而使得攻擊者能夠在沒有足夠抵押的情況下提取60個stETH代幣。
被盜的資產包括60個stETH代幣,攻擊者利用協議對用戶代幣餘額的錯誤計算來實現這一操作。
攻擊者通過閃電貸啟動了攻擊,向UniLend池存入了大量的USDC。具體來說,他們存入了6000萬USDC,從而大幅增加了他們在池中的抵押物。
閃電貸是一種無需抵押物的借貸方式,借款人在同一筆交易內必須歸還借款。通過這一機制,攻擊者無需事先擁有資金,就能獲得所需的USDC,從而在人為膨脹的抵押物基礎上發起攻擊。
在存入USDC後,攻擊者開始借入stETH代幣。協議會根據池中用戶的代幣餘額來計算抵押物的價值。然而,由於實現上的漏洞,協議錯誤地使用池合約中的當前代幣餘額來進行計算,而非基於健康因子檢查時實際轉移的代幣數量。結果,用戶的代幣餘額被高估,尤其是在流動性較大的池中。
這一操控的根本原因在於userBalanceOfToken函數。在流動性較大的池中,即使實際的借出份額較少,該函數仍可能返回較高的借出餘額。這種高估使得攻擊者獲得了比實際擁有更多的抵押物,從而能夠借出超過其實際抵押物的stETH代幣。
利用膨脹後的抵押物價值,攻擊者繼續贖回他們的USDC和stETH。攻擊者調用了redeemUnderlying函數,銷燬了與其存款相關的LP代幣。然而,由於健康因子檢查發生在代幣轉移之前,系統錯誤地認為攻擊者擁有足夠的抵押物,允許其提取超出實際應得的代幣。這一漏洞使得攻擊者能夠在沒有足夠抵押物的情況下提取60個stETH代幣,實際上是免費獲得了這些代幣。
為了避免類似的攻擊,UniLend 應該調整 redeemUnderlying函數中的操作順序。具體來說,應該在把代幣轉給用戶後再進行健康因子檢查。這樣,協議可以確保用戶的實際代幣餘額準確反映他們的抵押物情況。
區塊鏈安全至關重要,不能忽視。選擇 Three Sigma 來保護您的智能合約和 DeFi 協議,Three Sigma 是區塊鏈審計、智能合約漏洞評估和 Web3 安全領域的可靠合作伙伴。
點擊此處, 立即審核您的智能合約。
UniLend 這次漏洞攻擊造成了約 20 萬美元的財務損失,影響了 UniLend 池的資金儲備,降低了平臺的流動性,可能會影響其他用戶的借貸活動。
在攻擊發生後,UniLend 迅速採取了措施修復漏洞,並安撫用戶情緒。
他們宣佈,將向負責任的人員提供 20% 的獎勵,以安全歸還資金。
相關地址
攻擊交易地址:
攻擊者地址:
UnilendV2 核心地址:
@UniLend_Finance是一個去中心化的無許可貨幣市場協議,通過智能合約為用戶提供借貸服務。
在UniLend平臺上,用戶可以將其加密貨幣作為質押物投入網絡,借用其他加密資產。為了確保借貸安全,借貸者通過支付利息來獲得資金,而借出者則根據每個區塊的複合年化收益率(APY)賺取利息。
UniLend協議V2主要通過以下三個技術功能來運作:
1、雙資產池模型
UniLend為每個ERC20/ERC20兼容的資產對設置了獨立的雙資產池。這樣一來,一個資產的波動不會影響到其他資產,從而增加了安全性和穩定性。用戶可以在多個區塊鏈上創建和管理不同的借貸池,涵蓋多種資產。
2、供應與借款機制
3、 利率模型
UniLend採用動態利率模型,通過使用率(U)來設定利率,公式如下:
Ux=借款x借款x+現金x
借款利率:
借款利率x=10%+(Ux×30%)
當使用率越高時,利率就會相應上升,以平衡供需。
供給利率x=借款利率x×Ux×(1−S)
這樣一來,供應商可以確保獲得持續的回報,同時平臺也能保持盈利。
這三大功能共同運作,打造出一個安全、高效且可擴展的去中心化貨幣市場。
2025年1月12日,UniLend協議的一個安全漏洞被攻擊者利用,導致UniLend池中約20萬美元的資金被盜。攻擊者通過操控抵押物的計算,錯誤評估了用戶的健康因子,從而使得攻擊者能夠在沒有足夠抵押的情況下提取60個stETH代幣。
被盜的資產包括60個stETH代幣,攻擊者利用協議對用戶代幣餘額的錯誤計算來實現這一操作。
攻擊者通過閃電貸啟動了攻擊,向UniLend池存入了大量的USDC。具體來說,他們存入了6000萬USDC,從而大幅增加了他們在池中的抵押物。
閃電貸是一種無需抵押物的借貸方式,借款人在同一筆交易內必須歸還借款。通過這一機制,攻擊者無需事先擁有資金,就能獲得所需的USDC,從而在人為膨脹的抵押物基礎上發起攻擊。
在存入USDC後,攻擊者開始借入stETH代幣。協議會根據池中用戶的代幣餘額來計算抵押物的價值。然而,由於實現上的漏洞,協議錯誤地使用池合約中的當前代幣餘額來進行計算,而非基於健康因子檢查時實際轉移的代幣數量。結果,用戶的代幣餘額被高估,尤其是在流動性較大的池中。
這一操控的根本原因在於userBalanceOfToken函數。在流動性較大的池中,即使實際的借出份額較少,該函數仍可能返回較高的借出餘額。這種高估使得攻擊者獲得了比實際擁有更多的抵押物,從而能夠借出超過其實際抵押物的stETH代幣。
利用膨脹後的抵押物價值,攻擊者繼續贖回他們的USDC和stETH。攻擊者調用了redeemUnderlying函數,銷燬了與其存款相關的LP代幣。然而,由於健康因子檢查發生在代幣轉移之前,系統錯誤地認為攻擊者擁有足夠的抵押物,允許其提取超出實際應得的代幣。這一漏洞使得攻擊者能夠在沒有足夠抵押物的情況下提取60個stETH代幣,實際上是免費獲得了這些代幣。
為了避免類似的攻擊,UniLend 應該調整 redeemUnderlying函數中的操作順序。具體來說,應該在把代幣轉給用戶後再進行健康因子檢查。這樣,協議可以確保用戶的實際代幣餘額準確反映他們的抵押物情況。
區塊鏈安全至關重要,不能忽視。選擇 Three Sigma 來保護您的智能合約和 DeFi 協議,Three Sigma 是區塊鏈審計、智能合約漏洞評估和 Web3 安全領域的可靠合作伙伴。
點擊此處, 立即審核您的智能合約。
UniLend 這次漏洞攻擊造成了約 20 萬美元的財務損失,影響了 UniLend 池的資金儲備,降低了平臺的流動性,可能會影響其他用戶的借貸活動。
在攻擊發生後,UniLend 迅速採取了措施修復漏洞,並安撫用戶情緒。
他們宣佈,將向負責任的人員提供 20% 的獎勵,以安全歸還資金。
相關地址
攻擊交易地址:
攻擊者地址:
UnilendV2 核心地址: