Geçici depolama açığı, Marj Trade projelerinin 300.000 dolar değerinde on-chain soygununa uğramasına neden oldu.

robot
Abstract generation in progress

Ölümcül Kalıntı: Geçici Depolamanın Sebep Olduğu 300.000 Dolar Değerinde On-Chain Soygunu

30 Mart 2025'te, değeri 30.000 ABD Dolarından fazla olan bir on-chain soygunu Ethereum ağında gerçekleşti. Güvenlik izleme sisteminin gösterdiğine göre, kaldıraçlı işlem projesi SIR.trading saldırıya uğradı ve büyük kayıplar yaşadı. Güvenlik ekibi bu olayı derinlemesine analiz etti ve şimdi soruşturma sonuçlarını aşağıda yayımlıyor.

Ölümcül Kalıntı: Geçici Depolamanın Neden Olduğu 300.000 Dolarlık on-chain Soygun

Olay Arka Planı

Solidity 0.8.24 sürümü, 2024'ün Ocak ayında anlık depolama ( transient storage ) özelliğini tanıttı. Bu, geliştiricilere düşük maliyetli, işlem süresince geçerli geçici bir depolama yöntemi sunmak için tasarlanmış yeni bir veri depolama konumudur. Anlık depolama, iki yeni EVM komutu olan TSTORE ve TLOAD ile gerçekleştirilmektedir ve düşük gaz maliyeti, işlem içindeki kalıcılık ve otomatik temizleme gibi özelliklere sahiptir.

Ölümcül Kalıntı: Geçici Depolamanın Neden Olduğu 300,000 Dolar Değerinde Bir On-Chain Soygun

Saldırı Nedeni

Bu olayın temel nedeni, işlev içerisinde tstore kullanılarak geçici depolanan değerin işlev çağrısı sona erdikten sonra temizlenmemesidir. Saldırganlar bu özelliği kullanarak belirli kötü niyetli adresler oluşturarak yetki kontrolünü aşmayı başardılar ve token'ları başarıyla transfer ettiler.

Ölümcül Kalıntı: Geçici Depolama Tarafından Başlatılan 300.000 Dolar Değerinde Bir On-Chain Soygun

Saldırı Süreci

  1. Saldırgan, iki kötü niyetli token A ve B oluşturur ve bu iki token için bir DEX'te havuzlar oluşturarak likidite enjekte eder; burada A token, saldırı sözleşmesidir.

  2. Saldırgan, Vault sözleşmesinin initialize fonksiyonunu çağırarak A tokenini teminat tokeni, B tokenini borç tokeni olarak kullanarak kaldıraçlı işlem piyasası APE-21'i oluşturur.

  3. Saldırgan, Vault sözleşmesinin mint fonksiyonunu çağırarak, borç tokeni B'yi yatırarak kaldıraç tokeni APE'yi basar. Bu süreçte, DEX havuz adresi ve basım miktarı sırasıyla geçici depolamaya kaydedilir.

  4. Saldırgan, daha önceki geçici depolamada bulunan mint miktarıyla aynı olan kötü niyetli bir sözleşme oluşturur.

  5. Saldırgan, bu kötü niyetli sözleşme aracılığıyla Vault sözleşmesinin uniswapV3SwapCallback fonksiyonunu doğrudan çağırarak tokenları transfer eder. Geçici depolama alanındaki değerler temizlenmediği için kimlik kontrolü hatalı bir şekilde geçilmiş olur.

  6. Son olarak, saldırgan, saldırı sözleşmesi (A token) aracılığıyla Vault sözleşmesinin uniswapV3SwapCallback fonksiyonunu çağırarak, Vault sözleşmesindeki diğer tokenleri (WBTC, WETH) çıkararak kar elde eder.

Öldürücü Kalıntı: Geçici Depolamanın Neden Olduğu 300.000 Dolar Değerinde On-Chain Soygun

Öldürücü Kalıntı: Geçici Depolama Tarafından Başlatılan 300.000 Dolar Değerinde Bir On-Chain Soygun

Ölümcül Kalıntı: Geçici Depolamanın Neden Olduğu 300.000 Dolarlık on-chain Soygun

Ölümcül Kalıntı: Anlık Depolama ile Başlayan 300,000 Dolar Değerinde Bir On-Chain Soygun

Öldürücü Kalan: Geçici Depolama Tarafından Başlatılan 300.000 Dolar Değerinde Bir On-Chain Soygun

Ölümcül Kalıntı: Geçici Depolama Tarafından Tetiklenen 300.000 Dolar Değerinde Bir On-Chain Soygun

Ölümcül Kalan: Geçici Depolamanın Neden Olduğu 300.000 Dolarlık on-chain Soygun

Ölümcül Kalıntı: Anlık Depolamanın Neden Olduğu 300.000 Dolar Değerinde Bir On-Chain Soygun

Öldürücü Kalıntılar: Anlık Depolama Tarafından Başlatılan 300,000 Dolar Değerinde Bir On-Chain Soygun

Ölümcül Kalan: Anlık Depolama Nedeniyle Ortaya Çıkan 300.000 Dolar Değerinde Bir On-Chain Soygun

Ölümcül Kalıntı: Geçici Depolamanın Neden Olduğu 300.000 Dolar Değerinde Bir On-Chain Soygun

Ölümcül Kalıntı: Geçici Depolamanın Neden Olduğu 300.000 Dolar Değerinde On-Chain Soygun

Fon Akışı Analizi

Zincir üstü analiz araçlarının verilerine göre, saldırgan yaklaşık 300.000 dolar değerinde varlık çaldı, bunlar arasında 17.814,8626 USDC, 1,4085 WBTC ve 119,871 WETH bulunmaktadır. Ardından, saldırgan bu varlıkları takas etti ve transfer etti:

  • WBTC 63.5596 WETH'e dönüştürüldü
  • USDC 9.7122 WETH olarak değiştirildi
  • Toplam 193.1428 WETH, belirli bir anonim ağa aktarıldı

Dikkate değer olan, saldırganın başlangıç fonunun belirli bir anonim ağdan yatırılan 0.3 ETH'den geldiğidir.

Öldürücü Kalan: Geçici Depolamanın Neden Olduğu 300.000 Dolar Değerinde Bir On-Chain Soygun

Ölümcül Kalıntı: Anlık Depolama Nedeniyle Gerçekleşen 300,000 Dolar Değerinde Bir On-Chain Soygun

Özet ve Öneriler

Bu saldırı, işlem süresince sabit kalan geçici depolama özelliğini kullanarak geri arama fonksiyonunun yetki doğrulamasını başarıyla aştı. Benzer olayların önlenmesi için proje sahiplerine önerilir:

  1. İş mantığına göre, fonksiyon çağrısı sona erdikten hemen sonra tstore(key, 0) geçici depolamadaki değeri temizleyin.
  2. Sözleşme kodu denetimini ve güvenlik testlerini güçlendirin, özellikle yeni özelliklerin kullanım risklerine dikkat edin.
  3. Tek bir kimlik kontrolüne bağımlı kalmadan çoklu doğrulama mekanizmaları uygulayın.
  4. Düzenli olarak güvenlik değerlendirmeleri yapın, potansiyel açıkları zamanında tespit edin ve düzeltin.

Bu olay, yeni teknolojilerin benimsenmesinde dikkatli olunması ve güvenlik etkilerinin kapsamlı bir şekilde değerlendirilmesi gerektiğini bir kez daha hatırlatıyor. Aynı zamanda, sürekli güvenlik denetimleri ve risk yönetimi, kullanıcı varlıklarını korumak için hayati öneme sahiptir.

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
  • 6
  • Share
Comment
0/400
GhostChainLoyalistvip
· 07-23 20:02
Kaçırmak oldu, yine insanları enayi yerine koymak bir proje.
View OriginalReply0
HypotheticalLiquidatorvip
· 07-23 17:12
300 bin? Bu, piyasa temizliğinin gerçekleştiği...
View OriginalReply0
P2ENotWorkingvip
· 07-20 21:17
Proje Ekibi yine derin uykuda.
View OriginalReply0
BlockchainRetirementHomevip
· 07-20 21:16
Yine akıllı sözleşmeler enayileri emmekte.
View OriginalReply0
DYORMastervip
· 07-20 20:49
Güzel görünüyor ama işe yaramıyor, kodları bile incelemiyor.
View OriginalReply0
DecentralizedEldervip
· 07-20 20:47
Götürdüler gitti, proje gerçekten çok kötü.
View OriginalReply0
  • Pin
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)