تعرض OrionProtocol لهجوم إعادة الدخول وخسارة 2.9 مليون دولار أمريكي USDT و BUSD

تحليل حادثة هجوم إعادة الدخول على OrionProtocol

في 2 فبراير 2023 ، تعرض OrionProtocol لهجوم إعادة دخول على شبكة الإيثريوم وسلسلة Binance الذكية ، حيث بلغت الخسائر الإجمالية حوالي 2.9 مليون دولار. استغل المهاجمون ثغرة في العقد لسرقة 2,844,766 USDT على شبكة الإيثريوم و 191,606 BUSD على سلسلة Binance الذكية.

عملية الهجوم

قام المهاجم أولاً بنشر عقد توكن مخصص، وأجرى عمليات النقل والتفويض ذات الصلة، استعدادًا للهجوم اللاحق. بعد ذلك، اقترض المهاجم من خلال طريقة swap الخاصة بـ UNI-V2، واستدعى طريقة swapThroughOrionPool لعقد ExchangeWithAtomic لتبادل التوكنات.

تم تعيين مسار الصرف إلى [USDC، توكن المهاجم، USDT]. المفتاح هو أن عقد التوكن الذي أنشأه المهاجم يحتوي على وظيفة استدعاء. خلال عملية الصرف، استخدم المهاجم طريقة Token.Transfer لاستدعاء وظيفة ExchangeWithAtomic.depositAsset، مما أدى إلى هجوم إعادة الدخول، مما تسبب في تراكم مستمر لمبلغ الإيداع. في النهاية، تمكن المهاجم من تحقيق الربح من خلال عملية السحب.

! [تحليل هجوم إعادة دخول OrionProtocol باستخدام PoC](https://img-cdn.gateio.im/webp-social/moments-730464b2d4d7f6e0ff21a0289a2d5d68.webp0192837465674839201

تدفق الأموال

أموال المهاجم الأولية تأتي من حساب المحفظة الساخنة على منصة تداول معينة. من بين 1,651 إيثريوم التي تم تحقيق الربح منها، لا يزال 657.5 إيثريوم في عنوان محفظة المهاجم، بينما تم تحويل الباقي من خلال خدمة خلط العملات.

![تحليل هجوم إعادة الإدخال بروتوكول أوريون مع PoC])https://img-cdn.gateio.im/webp-social/moments-caac189901b7aaad5abd8be30bb4361a.webp(

تحليل الثغرات

تتمثل المشكلة الأساسية في وظيفة doSwapThroughOrionPool لعقد ExchangeWithAtomic. تقوم هذه الوظيفة، عند تنفيذ عملية _doSwapTokens، أولاً بإجراء التحويل، ثم تحديث متغير curBalance. قام المهاجم بإضافة منطق رد الاتصال في وظيفة transfer للرمز المخصص، مما أدى إلى تحديث غير صحيح لـ curBalance. وهذا سمح للمهاجم بسحب الأموال الزائدة من خلال وظيفة withdraw بعد سداد القرض الفوري.

! [تحليل هجوم إعادة دخول OrionProtocol مع PoC])https://img-cdn.gateio.im/webp-social/moments-7e21c34158a85d4c387fcdbec136d31b.webp(

! [تحليل هجوم إعادة دخول OrionProtocol باستخدام PoC])https://img-cdn.gateio.im/webp-social/moments-24819b5154419e86ea523a25a9101f67.webp(

! [تحليل هجوم إعادة دخول OrionProtocol مع PoC])https://img-cdn.gateio.im/webp-social/moments-7c4bde9d6a35da4304844a3bbb934fae.webp(

! [تحليل هجوم إعادة دخول OrionProtocol باستخدام PoC])https://img-cdn.gateio.im/webp-social/moments-7239f8886fe83c1da8b1b42545185811.webp(

![تحليل هجوم إعادة الدخول بروتوكول أوريون مع PoC])https://img-cdn.gateio.im/webp-social/moments-e5042932f0e1b7fa96e3f6e749231957.webp(

! [تحليل هجوم إعادة دخول OrionProtocol باستخدام PoC])https://img-cdn.gateio.im/webp-social/moments-4bd31735de09c63c490488e887118038.webp(

! [تحليل هجوم إعادة دخول OrionProtocol باستخدام PoC])https://img-cdn.gateio.im/webp-social/moments-cd401091e63ab21864f39cd650014b97.webp(

! [تحليل هجوم إعادة دخول OrionProtocol باستخدام PoC])https://img-cdn.gateio.im/webp-social/moments-e010d0f0c02fb8bbc648f755b0ac464c.webp(

! [تحليل هجوم إعادة الدخول OrionProtocol باستخدام PoC])https://img-cdn.gateio.im/webp-social/moments-f3c5f9416cfb9b7b791d86eeffb933be.webp(

نصائح للوقاية

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

  2. تنفيذ آلية قفل إعادة الدخول وغيرها من آليات منع إعادة الدخول.

  3. بالنسبة للوظائف المتعلقة بتبادل الرموز، يجب مراعاة جميع أنواع الرموز ومسارات التبادل التي قد تشكل مخاطر أمنية.

  4. تعزيز تدقيق الكود، مع التركيز بشكل خاص على الوظائف الرئيسية المتعلقة بعمليات الأموال.

  5. النظر في إدخال قيود على مبلغ المعاملة أو تدابير أمان إضافية مثل القفل الزمني.

  6. إجراء تقييمات أمان واختبارات اختراق دورية لاكتشاف وإصلاح الثغرات المحتملة في الوقت المناسب.

تُبرز هذه الواقعة مرة أخرى أهمية أمان العقود الذكية. يجب على فريق المشروع أن يستمر في التركيز على أمان العقود، واتخاذ تدابير حماية متعددة لتقليل مخاطر الأمان إلى الحد الأدنى.

شاهد النسخة الأصلية
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.
  • أعجبني
  • 6
  • مشاركة
تعليق
0/400
NewPumpamentalsvip
· 07-11 03:48
يتم الهجوم عليّ كل يوم وRug Pull
شاهد النسخة الأصليةرد0
HodlBelievervip
· 07-08 12:16
المخاطر النموذجية للعقود
شاهد النسخة الأصليةرد0
0xSoullessvip
· 07-08 08:06
إعادة الدخول دائمًا هي نقطة ألم
شاهد النسخة الأصليةرد0
PaperHandSistervip
· 07-08 08:03
فوّت الفرصة姐 اليوم بكت بشدة
شاهد النسخة الأصليةرد0
AirdropHunterXMvip
· 07-08 08:02
مرة أخرى حادث هجوم إعادة الدخول
شاهد النسخة الأصليةرد0
ChainWatchervip
· 07-08 07:55
مرة أخرى تم اقتطاف القسائم
شاهد النسخة الأصليةرد0
  • تثبيت