تعرض Jarvis Network لهجوم إعادة الدخول للقروض السريعة وخسارة 66.3 ألف MATIC

robot
إنشاء الملخص قيد التقدم

تحليل هجوم إعادة الإدخال للقروض السريعة على مشروع Jarvis Network

في 15 يناير 2023، تعرض مشروع Jarvis_Network لهجوم على شبكة Polygon، مما أدى إلى خسارة حوالي 663,000 MATIC. أظهرت التحليلات أن المهاجمين استغلوا القروض السريعة وثغرات إعادة الدخول لتنفيذ الهجوم.

تحليل حادثة هجوم إعادة إدخال القروض السريعة لشبكة جارفيز

يظهر تحليل مكدس استدعاء المعاملات للهجمات أنه أثناء إعادة الإدخال، عند استدعاء نفس الوظيفة لنفس العقد، تكون المعلمات المدخلة متشابهة ولكن القيم العائدة تختلف بشكل ملحوظ. تكون القيم العائدة قبل وبعد إعادة الإدخال على النحو التالي:

  • إعادة الدخول قبل: 1002157321772769944
  • إعادة الدخول بعد: 10091002696492234934

تحليل حدث هجوم إعادة الدخول على القروض السريعة Jarvis Network

تحدث إعادة الدخول في دالة remove_liquidity. تقوم هذه الدالة بإرجاع الرموز المميزة التي أضافها المستخدم عند إزالة السيولة. نظرًا لأن Polygon متوافق مع EVM، تم تنشيط إعادة الدخول عند نقل MATIC إلى العقد.

تحليل حدث هجوم إعادة الإدخال على القروض السريعة Jarvis Network

أظهرت التحليلات المتعمقة أن المشكلة تكمن في تنفيذ دالة getUnderlyingPrice. تتضمن هذه الدالة سلسلة من الحسابات الداخلية والاستدعاءات الخارجية، حيث أن القيمة المرجعة من دالة get_virtual_price هي المفتاح. تتأثر القيمة المرجعة لهذه الدالة بالمتغير self.D، في حين أن تحديث self.D يحدث بعد تحويل الرمز.

تحليل حدث هجوم إعادة إدخال القروض السريعة لشبكة جارفيز

عند إزالة السيولة، قام المهاجم بنقل MATIC إلى عقد الهجوم، ثم استعلم من خلال الاستدعاء عن سعر الرمز. نظرًا لأن self.D لم يتم تحديثه بعد، أدى ذلك إلى الحصول على سعر خاطئ. استغل المهاجم هذا الفارق الزمني، وعند إعادة الدخول، رفع سعر الاقتراض بنحو 10 أضعاف.

تحليل حادثة هجوم إعادة الدخول على القروض السريعة Jarvis Network

على الرغم من أن دالة remove_liquidity تستخدم الزخرفة @nonreentrant('lock') لمنع إعادة الدخول، إلا أن المهاجمين تجاوزوا هذه الآلية للحماية من خلال إعادة الدخول عبر العقود.

تحليل حادثة هجوم إعادة دخول القروض السريعة لشبكة جارفس

كشفت هذه الهجمة عن عدد من القضايا الرئيسية:

  1. منطق تعديل المتغيرات يقع بعد الاستدعاء الخارجي، مما يؤدي إلى استرجاع الأسعار بشكل غير طبيعي.
  2. إعادة الدخول عبر العقود تجعل قفل إعادة الدخول غير فعال.
  3. لم يتم اتباع نمط "التحقق - التأثير - التفاعل" (Checks-Effects-Interactions).

تحليل حدث هجوم إعادة الإدخال على القروض السريعة Jarvis Network

لمنع هجمات مماثلة، يُنصح الأطراف المعنية بالمشروع بـ:

  • إجراء تدقيق أمني صارم
  • ضع تعديل المتغيرات قبل الاستدعاء الخارجي
  • استخدام طريقة متعددة المصادر للحصول على الأسعار
  • اتبع معيار الترميز "التحقق - السريان - التفاعل"

من خلال هذه التدابير، يمكن تعزيز أمان المشروع واستقراره بشكل كبير.

تحليل حدث هجوم إعادة الدخول على القروض السريعة Jarvis Network

تحليل حادثة هجوم إعادة إدخال القروض السريعة لشبكة جارفي

تحليل حادثة هجوم إعادة دخول القروض السريعة لشبكة جارفس

تحليل حادثة هجوم إعادة إدخال القروض السريعة لشبكة جارفيز

تحليل حادثة هجوم إعادة إدخال القروض السريعة لشبكة جارفس

شاهد النسخة الأصلية
قد تحتوي هذه الصفحة على محتوى من جهات خارجية، يتم تقديمه لأغراض إعلامية فقط (وليس كإقرارات/ضمانات)، ولا ينبغي اعتباره موافقة على آرائه من قبل Gate، ولا بمثابة نصيحة مالية أو مهنية. انظر إلى إخلاء المسؤولية للحصول على التفاصيل.
  • أعجبني
  • تعليق
  • إعادة النشر
  • مشاركة
تعليق
0/400
لا توجد تعليقات
  • تثبيت