Poolz, aritmetik taşma saldırısına uğradı, çoklu zincir kaybı 66.5 bin dolar.

robot
Abstract generation in progress

Poolz, aritmetik taşma saldırısına uğradı, yaklaşık 66.5 bin dolar zarar etti.

Son günlerde, birçok blok zinciri ağında ciddi bir güvenlik olayı meydana geldi. Blok zinciri veri izleme verilerine göre, 15 Mart sabahı Ethereum, BNB Akıllı Zincir ve Polygon ağlarındaki Poolz projesi siber saldırıya uğradı ve çok sayıda token çalındı.

Bu saldırı, MEE, ESNC, DON, ASW, KMON, POOLZ gibi çeşitli tokenleri içermektedir. Çalınan tokenlerin toplam değeri yaklaşık 665,000 dolardır. Şu anda, saldırganlar çalınan tokenlerin bir kısmını BNB'ye çevirmişlerdir, ancak henüz fonları saldırı adresinden transfer etmemişlerdir.

Poolz, hesaplama taşması sorunundan dolayı saldırıya uğradı, yaklaşık 665K dolar kaybetti!

Analizler, bu saldırının esas olarak Poolz akıllı sözleşmesindeki bir aritmetik taşma açığını kullandığını göstermektedir. Saldırgan, CreateMassPools fonksiyonunu çağırarak, token sayısı hesaplamasını ustaca manipüle etmiş ve çok az sayıda token ile büyük miktarda token elde etme amacına ulaşmıştır.

Özellikle, saldırganlar öncelikle belirli bir merkeziyetsiz borsa üzerinde az miktarda MNZ tokeni değiştirdiler. Ardından, saldırganlar CreateMassPools fonksiyonunu çağırarak likidite havuzlarını toplu olarak oluşturdu. Bu fonksiyon, kullanıcıların havuzları toplu olarak oluşturup başlangıç likiditesini sağlamaları için kullanılmalıdır.

Poolz, hesaplama taşması sorunu nedeniyle saldırıya uğradı, yaklaşık 665K dolar kaybetti!

Sorun, getArraySum fonksiyonunda. Bu fonksiyon, kullanıcı tarafından sağlanan başlangıç likidite miktarını hesaplamaktan sorumludur. Saldırgan, iki büyük sayıyı içeren özel olarak yapılandırılmış bir dizi gönderdi. Bu iki sayı toplandığında, uint256 türünün sınırlamaları nedeniyle, tam sayı taşması meydana geldi ve sonuç 1'e dönüştü.

Ancak, sözleşme havuzun özelliklerini kaydederken, orijinal girdi büyük değerlerini kullanıyor. Bu, ciddi bir tutarsızlık oluşturuyor: Saldırgan aslında yalnızca 1 token transfer etti, ancak sözleşme devasa bir değer kaydetti. Sonunda, saldırgan withdraw fonksiyonunu çağırarak kolayca büyük bir token miktarını çekti ve tüm saldırı sürecini tamamladı.

Poolz, hesap aşımı sorunu nedeniyle saldırıya uğradı, yaklaşık 665K dolar kaybetti!

Bu olay, akıllı sözleşmelerin güvenliğinin önemini bir kez daha vurguladı. Benzer sorunların önlenmesi için, geliştiricilere daha yeni sürümlerin Solidity programlama dilini kullanmaları önerilir, çünkü yeni sürümler derleme sırasında otomatik olarak taşma kontrolü yapar. Eski sürüm Solidity kullanan projeler için, tamsayı taşma sorununu çözmek amacıyla OpenZeppelin'in SafeMath kütüphanesinin kullanılmasının düşünülmesi önerilir.

Bu olay, görünüşte küçük bir programlama hatasının bile büyük ekonomik kayıplara yol açabileceğini hatırlatıyor. Blockchain projeleri, kullanıcı varlıklarının güvenliğini sağlamak için kod denetimi ve güvenlik testlerine daha fazla önem vermelidir.

Poolz, hesaplama taşması sorunu nedeniyle saldırıya uğradı, yaklaşık 665K dolar kayıp!

View Original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Reward
  • 5
  • Share
Comment
0/400
ShibaOnTheRunvip
· 07-12 01:15
Yine bir taşma açığı kötü niyetli kişi
View OriginalReply0
GateUser-ccc36bc5vip
· 07-11 10:27
Başka bir proje mahkum oldu.
View OriginalReply0
GasFeeNightmarevip
· 07-09 09:48
kripto dünyası bir günü, dünyada bir yıla eşittir
View OriginalReply0
BearMarketMonkvip
· 07-09 09:42
Emiciler Tarafından Oyuna Getirilmek yine başladı
View OriginalReply0
notSatoshi1971vip
· 07-09 09:38
Otonom denetim insanları öldürüyor
View OriginalReply0
Trade Crypto Anywhere Anytime
qrCode
Scan to download Gate app
Community
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)