「沒有對手?我有話說!」Gate廣場挑戰賽——秀操作贏$2,000,百萬流量加持!
你是下一個明星交易員嗎?
想讓自己的名字閃耀廣場熱搜?想吸引數萬追隨者?百萬流量已就位,就等你來承接!
🎉 雙重豪禮,贏家通喫!
1️⃣ 曬單排行榜獎勵
收益率排名前10的用戶,瓜分 $1,500合約體驗券!巔峯對決等你來戰!
2️⃣ 曬單幸運獎
隨機抽取10位用戶,每人贈送 $50跟單包賠券!即使不是大神,也有機會躺贏!
🎮 參與方式超簡單!
✅ 在 Gate廣場 曬出你的交易戰績,並成爲帶單員!
✨ 發帖要求:
內容必須原創,並帶上 #CopyTrading# 或 #跟单# 標籤
附上 收益率截圖 或 交易卡片,並分享你的 獨家交易心得
嚴禁AI生成虛假交易,一經發現取消資格
觀點犀利、邏輯清晰,乾貨越多越吸粉!
⏰ 活動截止:8月15日 10:00(UTC+8)
【立即發帖】 展現你的王者操作,承接百萬流量,成爲下一個交易傳奇!
💬 還在等什麼?Gate廣場,等你來戰! 💪
Jarvis Network遭閃電貸重入攻擊 663,101 MATIC被盜
Jarvis Network項目遭受閃電貸重入攻擊分析
2023年1月15日,Jarvis_Network項目遭到攻擊,導致663,101個MATIC被盜。這起事件引發了對項目安全性的關注。
通過對交易調用棧的分析,發現攻擊者利用了重入漏洞。在重入過程中,對同一合約的相同函數調用,雖然輸入參數相同,但返回值卻有顯著差異。這種差異主要發生在remove_liquidity函數中。
重入攻擊主要針對某智能合約的remove_liquidity函數。該函數在移除流動性時會將用戶添加的代幣返回。由於Polygon和EVM鏈的同構性,在MATIC轉帳給合約時觸發了重入邏輯。
進一步分析發現,問題出在getUnderlyingPrice函數的實現上。該函數涉及多個未開源的合約,增加了分析難度。然而,通過檢查存儲槽和調用棧,我們可以推斷出關鍵變量的值和函數調用路徑。
攻擊的核心在於get_virtual_price函數的返回值在重入前後發生了顯著變化。這個變化與self.D變量的更新時機有關。正常情況下,self.D應該在轉帳完成後更新,但在此次攻擊中,由於重入的發生,導致價格計算出現錯誤。
remove_liquidity函數的執行流程包括:1) 銷毀用戶LP代幣;2) 發送質押資金給用戶;3) 更新self.D值。攻擊者在第二步進行重入,利用未及時更新的self.D值進行借貸,從而獲取了不當利益。
值得注意的是,雖然remove_liquidity函數使用了@nonreentrant('lock')裝飾器來防止重入,但由於攻擊者重入後進入了其他合約進行借貸,這個重入鎖並未起到預期效果。
這次攻擊暴露了智能合約中變量更新時機的重要性。爲提高安全性,建議項目方採取以下措施:
通過實施這些最佳實踐,可以顯著提升智能合約的安全性和穩定性,爲Web3生態系統提供更可靠的基礎設施。