OrionProtocol yeniden giriş saldırısına uğradı, yaklaşık 2.9 milyon dolar kaybetti.

OrionProtocol yeniden giriş saldırısı olayı analizi

2 Şubat 2023 15:40:20 UTC'de, Ethereum ve Binance Akıllı Zinciri üzerindeki OrionProtocol, sözleşme açığı nedeniyle yeniden giriş saldırısına uğradı. Saldırgan, Ethereum ağından 2,844,766 USDT, Binance Akıllı Zinciri'nden ise 191,606 BUSD kazandı ve toplam kayıp yaklaşık 2,9 milyon dolar.

Saldırı Süreci Analizi

Saldırgan önce özel bir Token sözleşmesi dağıttı ve bir dizi hazırlık yaptı. Daha sonra, saldırgan belirli bir DEX'in swap fonksiyonu aracılığıyla borç aldı ve token değişimi için OrionProtocol'ün ExchangeWithAtomic.swapThroughOrionPool yöntemini çağırdı. Değişim yolu, saldırgan tarafından oluşturulan Token sözleşmesi adresini içeriyordu ve bu, sonraki geri çağırma saldırısı için bir zemin hazırladı.

Dönüşüm sürecinde, saldırganın Token sözleşmesinde geri çağırma mantığı bulunduğundan, her para aktarımı ExchangeWithAtomic.depositAsset yöntemine yeniden giriş çağrısını tetikler. Bu, depozito miktarının birden fazla kez birikmesine neden olur ve sonunda saldırgan, para çekme işlemi ile aşırı kar elde eder.

OrionProtocol Reentrancy Attack Analysis with PoC

Fon Akışı

Saldırganın başlangıç sermayesi bir ticaret platformunun sıcak cüzdanından gelmektedir. Saldırı başarılı olduktan sonra, elde edilen 1,651 ETH'nin 657.5 ETH'si saldırganın cüzdan adresinde kalmış, geri kalan kısmı karışık hizmetler aracılığıyla transfer edilmiştir.

OrionProtocol yeniden giriş saldırısı analizi ile PoC

Açık Analizi

Açığın temelinde ExchangeWithAtomic sözleşmesinin doSwapThroughOrionPool ve _doSwapTokens fonksiyonları bulunmaktadır. Bu fonksiyonlar, token transferi gerçekleştikten sonra curBalance değişkenini güncellediğinden, saldırganlara yeniden giriş saldırılarından faydalanma fırsatı vermektedir. Saldırgan, özel Token'ın transfer fonksiyonuna geri çağırma mantığı ekleyerek curBalance'ın yanlış güncellenmesine neden olur ve böylece ani kredi geri ödenmesine rağmen ek fonları çekebilme imkanı bulur.

OrionProtocol yeniden giriş saldırısı analizi ile PoC

OrionProtocol Yeniden Giriş Saldırısı Analizi ve PoC

OrionProtocol yeniden giriş saldırısı analizi ile PoC

OrionProtocol Yeniden Giriş Saldırı Analizi ile PoC

Saldırı Yeniden Üretimi

Araştırmacılar, saldırı sürecini simüle eden bir kısım POC kodu sağladı. Test sonuçları, saldırganların sözleşme açığını kullanarak ek USDT elde etmeyi başardıklarını gösterdi.

OrionProtocol Reentrancy Attack Analysis with PoC

OrionProtocol Yeniden Giriş Saldırısı Analizi ile PoC

OrionProtocol tekrar giriş saldırısı analizi ve PoC

OrionProtocol Yeniden Giriş Saldırısı Analizi ile PoC

OrionProtocol Yeniden Giriş Saldırısı Analizi ve PoC

Güvenlik Tavsiyeleri

Bu tür saldırılara karşı proje sahiplerine önerilir:

  1. Sözleşmede token takas işlevini gerçekleştirirken, çeşitli token türlerinin ve takas yollarının getirebileceği güvenlik risklerini dikkate almak gerekir.
  2. "Kontroller-Etkiler-Etkileşimler" (Checks-Effects-Interactions) kodlama modeline sıkı sıkıya uyulmalıdır; yani önce koşul kontrolü yapılmalı, ardından durum değişkenleri güncellenmeli ve son olarak dış çağrılar gerçekleştirilmelidir.
  3. Yeniden giriş saldırılarını önlemek için anahtar durum değişkenlerini güncellemeden önce yeniden giriş kilidi veya benzeri bir mekanizma kullanın.
  4. Düzenli olarak kod denetimi ve güvenlik testleri yaparak potansiyel güvenlik açıklarını zamanında tespit edip düzeltin.

Bu olay, akıllı sözleşmelerin güvenliğinin önemini bir kez daha vurguladı. Proje ekipleri güvenlik sorunlarına sürekli dikkat etmeli ve kullanıcı varlıklarının güvenliği ile projenin uzun vadeli istikrarlı gelişimini sağlamak için kapsamlı koruma önlemleri almalıdır.

TOKEN-2.65%
ETH-1.66%
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
  • 10
  • Repost
  • Share
Comment
0/400
ColdWalletGuardianvip
· 08-14 12:21
Açıklar önlenemez.
View OriginalReply0
NestedFoxvip
· 08-14 11:36
Bu gerçekten çok şaşırtıcı mı?
View OriginalReply0
ImpermanentLossEnjoyervip
· 08-14 11:01
Kalıcı Kayıp'ın günlükleri
View OriginalReply0
rug_connoisseurvip
· 08-12 04:38
Yine bir akıllı sözleşme başarısız oldu.
View OriginalReply0
SchroedingerGasvip
· 08-11 18:57
Yine kim tarafından yolunmuş?
View OriginalReply0
DAOTruantvip
· 08-11 18:57
Bir sözleşme daha alındı.
View OriginalReply0
MainnetDelayedAgainvip
· 08-11 18:56
Yine istatistik veritabanına bir örnek daha, gerçekten olmamalı.
View OriginalReply0
GateUser-5854de8bvip
· 08-11 18:51
Yine sözleşme çalındı...
View OriginalReply0
MEV_Whisperervip
· 08-11 18:51
Yine reentrancy, kaçtım kaçtım.
View OriginalReply0
SignatureVerifiervip
· 08-11 18:37
*sigh* başka bir ders kitabı reentrancy hatası. yetersiz doğrulama kontrolleri ile istatistiksel olarak kaçınılmaz. bunu görmüştüm açıkçası.
View OriginalReply0
View More
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)