Jarvis Network, Flaş Krediler ile yeniden giriş saldırısına uğradı, 663,101 MATIC kaybetti.

robot
Abstract generation in progress

Jarvis Network projesi Flaş Krediler yeniden giriş saldırısı analizi

15 Ocak 2023'te, Jarvis_Network projesi saldırıya uğradı ve 663,101 MATIC kaybetti. Bu saldırı esas olarak Flaş Krediler ve yeniden giriş açığından yararlanarak proje fonlarının kaybına yol açtı.

Jarvis Network Flaş Krediler yeniden giriş saldırısı olayı analizi

İşlem çağrı yığınını analiz ederek, saldırganın remove_liquidity fonksiyonunda yeniden giriş saldırısı gerçekleştirdiğini keşfettik. Bu fonksiyon, likiditeyi kaldırmaktan ve kullanıcı tokenlerini geri vermekten sorumludur. Polygon'un EVM zincir yapısına benzer olması nedeniyle, MATIC transferi sırasında sözleşme yeniden girişi tetiklendi.

Jarvis Network Flaş Krediler重入攻击事件分析

Reentrancy saldırısı fiyat sorgulama aşamasında meydana gelir. Saldırgan, likiditeyi kaldırırken MATIC'i saldırganın sözleşmesine aktarır. Geri çağırma sürecinde saldırgan, önce belirli bir tokenin fiyatını sorgular. Sözleşmedeki self.D değişkeninin güncellenmesi, transfer işleminin gerisinde kaldığı için, önceki fiyat alımında hata oluşur.

Jarvis Network Flaş Krediler重入攻击事件分析

remove_liquidity fonksiyonunun yürütülme süreci aşağıdaki gibidir:

  1. Kullanıcı LP tokenlerini yok etme
  2. Kullanıcılara teminat fonu gönder
  3. self.D değişkenini güncelle

Jarvis Network Flaş Krediler yeniden giriş saldırısı olayı analizi

self.D değişkeni fiyat hesaplaması için kullanılır ve likidite eklenip çıkarıldığında güncellenir. Saldırgan, büyük miktarda fon kullanarak self.D değerinin likidite eklerken önemli ölçüde artmasına neden oldu, ancak çıkarırken zamanında güncellenmedi.

Jarvis Network Flaş Krediler重入攻击事件分析

Remove_liquidity fonksiyonu @nonreentrant('lock') dekoratörünü kullanarak yeniden girişleri önlese de, saldırganlar bu kısıtlamayı çapraz sözleşme kredisi ile aştı.

Jarvis Network Flaş Krediler yeniden giriş saldırı olayı analizi

Bu saldırı, proje kodunun güvenlik açıkları içerdiğini ortaya koydu. Benzer sorunların önlenmesi için proje ekibinin aşağıdaki önlemleri alması önerilir:

  1. Sıkı güvenlik denetimleri gerçekleştirin
  2. Değişken değiştirme işlemini dış çağrıdan önce yerleştirin
  3. Fiyat alımında birden fazla veri kaynağı kullanmak
  4. "Kontroller-Etkiler-Etkileşimler" (Checks-Effects-Interactions) kodlama standartlarına uyun

Jarvis Network Flaş Krediler重入攻击事件分析

Kod mantığını optimize ederek ve güvenlik önlemlerini güçlendirerek, projenin güvenliğini ve istikrarını etkili bir şekilde artırabilir ve benzer saldırıların bir daha gerçekleşmesini önleyebilirsiniz.

Jarvis Network Flaş Krediler重入攻击事件分析

Jarvis Network Flaş Krediler reentrancy saldırı olayı analizi

Jarvis Network Flaş Krediler重入攻击事件分析

Jarvis Network Flaş Krediler重入攻击事件分析

Jarvis Network Flaş Krediler yeniden giriş saldırı olayı analizi

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
  • 9
  • Share
Comment
0/400
MEV_Whisperervip
· 6h ago
Bu tencere sadece geliştirilmek için kaldırılabilir.
View OriginalReply0
AirdropCollectorvip
· 6h ago
Bir bakışta almak istemiyorum.
View OriginalReply0
GateUser-e87b21eevip
· 07-20 04:01
Proje Ekibi koruma yeterli değil.
View OriginalReply0
StakeOrRegretvip
· 07-19 19:17
Başka bir proje daha basıldı...
View OriginalReply0
ZenMinervip
· 07-19 19:09
Bu güvenlik ne yapıyor?
View OriginalReply0
LayerZeroEnjoyervip
· 07-19 19:09
Eh yine re-entrancy, eski taktikler.
View OriginalReply0
LiquidityOraclevip
· 07-19 19:05
Kim dedi ki kod yazmak ciddiye alınmaz?
View OriginalReply0
DecentralizedEldervip
· 07-19 19:01
Yine hacklendim, gerçekten ders almıyorum.
View OriginalReply0
WhaleWatchervip
· 07-19 18:54
Bir başka yarım kalmış proje ağır bir darbe aldı.
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)