Poolz遭算術溢出攻擊 損失66.5萬美元 多鏈資產受影響

robot
摘要生成中

Poolz遭遇算數溢出攻擊,損失約66.5萬美元

近日,一起針對Poolz的攻擊事件在以太坊、幣安智能鏈和Polygon網路上發生。根據鏈上數據監控,攻擊發生於2023年3月15日凌晨3點16分(UTC時間)。此次攻擊涉及多種代幣,包括MEE、ESNC、DON、ASW、KMON、POOLZ等,總計損失約66.5萬美元。

Poolz因算數溢出問題遭受攻擊,損失約665K美元!

攻擊者利用了Poolz智能合約中的一個算數溢出漏洞。具體來說,問題出在CreateMassPools函數中的getArraySum函數。該函數在計算用戶批量創建池子時提供的初始流動性時,未能正確處理大數相加導致的溢出情況。

攻擊過程如下:

  1. 攻擊者首先在某去中心化交易所兌換了少量MNZ代幣。

  2. 隨後調用CreateMassPools函數,傳入精心構造的參數。其中_StartAmount數組包含兩個值:一個接近uint256上限的大數,以及一個正常的代幣數量。

  3. 由於getArraySum函數中的累加操作導致溢出,最終返回值爲1。然而,合約在記錄池子屬性時仍使用了原始的_StartAmount值。

  4. 這導致攻擊者實際只轉入1個代幣,卻在合約中記錄了一個巨大的流動性數量。

  5. 最後,攻擊者調用withdraw函數提取代幣,完成攻擊。

Poolz因算數溢出問題遭受攻擊,損失約665K美元!

爲防止此類問題再次發生,建議開發者採取以下措施:

  1. 使用較新版本的Solidity編譯器,這些版本會自動進行溢出檢查。

  2. 如果必須使用舊版Solidity,可以引入第三方安全庫來處理整數運算,如OpenZeppelin的SafeMath庫。

  3. 在處理用戶輸入時,特別是涉及大數運算的場景,應該進行嚴格的邊界檢查和異常處理。

  4. 定期進行代碼審計,特別關注可能涉及整數溢出的部分。

  5. 考慮引入多重籤名或時間鎖等機制,爲緊急情況下的響應爭取時間。

Poolz因算數溢出問題遭受攻擊,損失約665K美元!

這起事件再次提醒我們,在智能合約開發中,安全性應始終是首要考慮因素。即使是看似簡單的算術操作,也可能成爲攻擊者利用的突破口。

Poolz因算數溢出問題遭受攻擊,損失約665K美元!

查看原文
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 4
  • 分享
留言
0/400
zkProofInThePuddingvip
· 07-31 01:15
又黑又亏 太菜了吧
回復0
雏菊独角兽vip
· 07-31 01:15
来看漏洞小花盛开的大戏喽~ 又一个没算好数的蜜罐溢溢溢了呢
回復0
Crypto凤凰vip
· 07-31 01:14
又一个项目倒下...站起来还需要时间去修复信仰[翻白眼]但市场总能重建!
回復0
链上流浪诗人vip
· 07-31 00:55
66w...铜臭的诗都写不出来了
回復0
交易,隨時隨地
qrCode
掃碼下載 Gate APP
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)