OrionProtocol yeniden giriş saldırısına uğradı, 2.9 milyon dolar şifreleme varlığı kaybedildi.

robot
Abstract generation in progress

OrionProtocol Reentrancy Saldırı Olayı Analizi

2023 yılının 2 Şubat'ında, Ethereum ve Binance Akıllı Zinciri üzerindeki OrionProtocol, sözleşme açığı nedeniyle yeniden giriş saldırısına uğradı ve yaklaşık 2,9 milyon dolar kaybetti. Bu kaybın içinde Ethereum üzerinde 2.844.766 USDT ve Binance Akıllı Zinciri üzerinde 191.606 BUSD bulunmaktadır.

OrionProtocol Reentrancy Attack Analysis with PoC

Saldırı Süreci Analizi

Saldırgan öncelikle bir Token sözleşmesi oluşturdu ve ilgili transfer ve yetkilendirme işlemleri gerçekleştirdi, böylece sonraki saldırıya hazırlık yaptı. Ardından, saldırgan UNI-V2'nin swap yöntemini kullanarak borç aldı ve ExchangeWithAtomic sözleşmesinin swapThroughOrionPool yöntemini çağırarak token değişimi yaptı. Değişim yolu USDC → saldırganın oluşturduğu Token → USDT olarak ayarlandı.

OrionProtocol Reentrancy Attack Analysis with PoC

Dönüşüm sürecinde, saldırganlar tarafından oluşturulan Token sözleşmesinde geri çağırma işlevi bulunduğundan, ExchangeWithAtomic.swapThroughOrionPool yönteminin yürütülmesi sırasında Token.Transfer aracılığıyla ExchangeWithAtomic.depositAsset yöntemine sürekli geri çağırma gerçekleşmiş ve bu da yeniden giriş saldırısına yol açmıştır. Bu, depozito miktarının sürekli birikmesine neden olmuş ve sonuç olarak saldırgan, para çekme işlemiyle kâr elde etmiştir.

OrionProtocol Reentrancy Attack Analysis with PoC

Fon Akışı

Saldırganın başlangıç fonları, bir ticaret platformunun sıcak cüzdan hesabından gelmektedir. Elde edilen 1.651 ETH'nin 657,5'i hala saldırganın cüzdan adresinde bulunuyor, geri kalanı ise karıştırma hizmetleri aracılığıyla transfer edilmiştir.

OrionProtocol Geri Dönüş Saldırı Analizi ile PoC

Açık Analizi

Açığın temel sorunu doSwapThroughOrionPool fonksiyonunda ortaya çıkıyor. Bu fonksiyon, _doSwapTokens fonksiyonunu çağırıyor ve bu fonksiyonda, token transfer işlemi curBalance güncellenmeden önce gerçekleşiyor. Saldırganlar, özelleştirilmiş Token'ın transfer fonksiyonuna eklenen geri çağırma işlevini kullanarak, curBalance güncellenmeden önce depositAsset fonksiyonunu yeniden çağırıyorlar, bu da curBalance'ın yanlış güncellenmesine neden oluyor. Sonuç olarak, saldırganlar, flash loan'ı geri ödedikten sonra, withdraw fonksiyonunu çağırarak fonları çekerek saldırıyı tamamlıyorlar.

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ısı analizi ile PoC

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

OrionProtocol Reentrancy Saldırı Analizi ve PoC

OrionProtocol Reentrancy Attack Analysis with PoC

Önleme Önerileri

  1. Sözleşme tasarımı sırasında, birden fazla Token ve değişim yollarının olası risklerini dikkate almak gerekir.

  2. "Önce kontrol et, sonra değişkenleri güncelle, en son dış çağrılar yap" kodlama standartlarına (Checks-Effects-Interactions modeli) uymak, sözleşme güvenliğini etkili bir şekilde artırabilir.

  3. Token değişim fonksiyonu uygulanırken, özellikle tekrar giriş saldırısı riskine dikkat edilmesi gerekir; koruma için tekrar giriş kilidi gibi mekanizmalar kullanılabilir.

  4. Fon hareketlerini içeren kritik fonksiyonlar için, çeşitli sınır durumları ve istisnai senaryoların simülasyonunu da kapsayan kapsamlı bir güvenlik denetimi ve test yapılması önerilir.

  5. Düzenli olarak sözleşme güvenlik kontrolleri yapın, potansiyel açıkları zamanında güncelleyin ve düzeltin.

Bu önlemleri alarak, akıllı sözleşmelerin saldırıya uğrama riskini önemli ölçüde azaltabilir ve projenin genel güvenliğini artırabilirsiniz. Web3 ekosisteminde güvenlik her zaman en önemli hususlardan biridir.

TOKEN-2.69%
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
  • Repost
  • Share
Comment
0/400
GasFeeCriervip
· 21h ago
Sözleşme korumasını düzgün yapmıyor musun? Hak ettin!
View OriginalReply0
AirdropBuffetvip
· 08-12 21:06
Başka bir akıllı sözleşme gitti~
View OriginalReply0
ZenMinervip
· 08-12 21:05
Böyle büyük bir açık varken neden beni denetlemeye çağırmadınız?
View OriginalReply0
HallucinationGrowervip
· 08-12 21:00
Yine bir Rug Pull fırsatı
View OriginalReply0
TokenStormvip
· 08-12 20:57
Ah, script hazırlandı, bir adım kaldı.
View OriginalReply0
ZKProofEnthusiastvip
· 08-12 20:36
Yine bir Rug Pull tuzak mı?
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)