OrionProtocol, 2.9 milyon dolar değerinde bir reentrancy saldırısına uğradı; çalınan fonların analizi ve önleme önerileri.

robot
Abstract generation in progress

OrionProtocol'un Reentrancy Saldırısı Olayı Analizi

2023 yılının 2 Şubat'ında, Ethereum ve Binance Akıllı Zinciri üzerindeki OrionProtocol sözleşmesi bir güvenlik açığı nedeniyle yeniden giriş saldırısına uğradı. Saldırgan, Ethereum zincirinde 2,844,766 USDT ve Binance Akıllı Zinciri'nde 191,606 BUSD dahil olmak üzere yaklaşık 2.9 milyon dolar değerinde fonu çalmayı başardı.

Saldırı Süreci Analizi

Saldırgan önce özel bir Token sözleşmesi dağıttı ve bu Token üzerinde transfer ve yetkilendirme işlemleri gerçekleştirdi, böylece sonraki saldırı için hazırlık yaptı. Ardından, saldırgan Uniswap V2'nin swap fonksiyonunu kullanarak borç aldı ve token takası yapmak için OrionProtocol'ün ExchangeWithAtomic.swapThroughOrionPool yöntemini çağırdı.

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

Değişim yolu olarak ayarlandı: USDC → Saldırganın özel Token'ı → USDT

Dönüşüm sürecinde, saldırganın özel Token sözleşmesinde bulunan geri çağırma işlevi nedeniyle, Token transferi sırasında ExchangeWithAtomic.depositAsset yönteminin tekrar çağrılmasına olanak tanınmıştır. Bu reentrancy saldırısı, yatırılan miktarın tekrar hesaplanmasına yol açarak, sonunda saldırganın gerçekte yatırılan miktardan fazla fon çekmesine izin vermiştir.

OrionProtocol Yeniden Giriş Saldırı Analizi ile PoC

Fon Akışı

Saldırganın başlangıç fonları, büyük bir ticaret platformunun sıcak cüzdanından gelmektedir. Saldırı sonucu elde edilen 1,651 ETH'nin 657.5 ETH'si hâlâ saldırganın cüzdan adresinde bulunmakta, geri kalan kısmı ise karıştırma hizmeti aracılığıyla transfer edilmiştir.

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

Açık Analizi

Açığın temel sorunu doSwapThroughOrionPool fonksiyonunda ortaya çıkmaktadır. Bu fonksiyon, token transferi gerçekleştirildikten sonra curBalance değişkenini günceller, bu da yeniden giriş saldırıları için koşullar yaratır. Saldırgan, özelleştirilmiş Token'ın transfer fonksiyonuna geri çağırma mantığı ekleyerek, curBalance güncellenmeden önce depositAsset fonksiyonunun tekrar tekrar çağrılmasına neden olur ve bu da bakiye hesaplamasında hatalara yol açar.

OrionProtocol Reentrancy Saldırı Analizi ve PoC

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

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

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

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

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

OrionProtocol Yeniden Giriş Saldırı Analizi ile PoC

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

Önleme Önerileri

Benzer saldırıları önlemek için proje ekibi aşağıdaki noktalara dikkat etmelidir:

  1. Sıkı erişim kontrolü ve yetki yönetimi uygulayın.
  2. Akıllı sözleşmeleri "Kontroller-Etkiler-Etkileşimler" (Checks-Effects-Interactions) modeline göre yazın.
  3. Reentrancy saldırılarını önlemek için reentrancy kilidi veya benzeri mekanizmalar kullanın.
  4. Token değişimi ile ilgili işlevler için, çeşitli Token türlerinin ve değişim yollarının getirebileceği güvenlik risklerini dikkate almak gerekir.
  5. Kapsamlı bir güvenlik denetimi gerçekleştirin, statik analiz, dinamik testler ve manuel inceleme dahil.
  6. Sözleşme faaliyetlerini sürekli izleyin ve hızlı yanıt mekanizması kurun.

Bu olay, akıllı sözleşmelerin geliştirilmesi ve uygulanmasında güvenliğin her zaman en önemli öncelik olması gerektiğini bir kez daha vurgulamaktadır. Proje sahipleri, kullanıcı varlıklarını korumak ve platform itibarını sürdürmek için güvenlik önlemlerini sürekli olarak geliştirmelidir.

TOKEN0.65%
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
  • 7
  • Repost
  • Share
Comment
0/400
CryptoCrazyGFvip
· 08-16 01:00
Yine yine yine coin çalındı. Ayı Piyasası performans için gerçekten de işte.
View OriginalReply0
FUD_Vaccinatedvip
· 08-14 03:57
Yine Emiciler Tarafından Oyuna Getirilmek için geldiler.
View OriginalReply0
GateUser-aa7df71evip
· 08-13 22:35
Bir başka enayiler biçak, arkamda analiz dersine bak.
View OriginalReply0
CoinBasedThinkingvip
· 08-13 22:34
Yine bu eski numara tekrarlandı.
View OriginalReply0
HalfBuddhaMoneyvip
· 08-13 22:29
Yine bir akıllı sözleşme klasiği başarısız oldu, enayiler paralarını kaybetti.
View OriginalReply0
NewPumpamentalsvip
· 08-13 22:26
Yine bir yeniden giriş saldırısı, ne zaman bitecek bu iş?
View OriginalReply0
ShibaOnTheRunvip
· 08-13 22:23
Yine saldırıya uğradım, biraz panik oldum.
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)