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

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

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

في 2 فبراير 2023، تعرض OrionProtocol لهجوم إعادة دخول بسبب ثغرة في العقد على شبكة Ethereum وسلسلة Binance الذكية، حيث بلغت الخسائر الإجمالية حوالي 2.9 مليون دولار. استغل المهاجمون عقد Token الذي أنشأوه للقيام باستدعاء، متجاوزين بنجاح آلية الأمان للعقد.

تحليل عملية الهجوم

قام المهاجم أولاً بإنشاء عقد توكن مخصص، ثم قام بمجموعة من التحضيرات. بعد ذلك، اقترض المهاجم من خلال طريقة swap الخاصة بأحد منصات التداول اللامركزية، واستدعى طريقة swapThroughOrionPool الخاصة بـ OrionProtocol لتبادل التوكنات. تحتوي مسار التبادل على عنوان عقد التوكن الذي أنشأه المهاجم.

خلال عملية الصرف، استخدم المهاجم طريقة transfer لتوكن خاص به لاستدعاء رد الاتصال، ثم استدعى مرة أخرى طريقة depositAsset لبروتوكول أوريون. وهذا أدى إلى احتساب المبلغ المودع مرتين، مما مكن المهاجم من سحب أموال تتجاوز المبلغ الفعلي المودع.

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

اتجاهات الأموال

أموال المهاجم الأولية تأتي من المحفظة الساخنة لمنصة تداول معينة. من بين 1651 ETH التي حصل عليها المهاجم، لا يزال 657.5 في عنوان محفظة المهاجم، وتم نقل الباقي من خلال خدمة خلط.

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

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

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

! [تحليل هجوم إعادة دخول 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(

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

إعادة إنتاج الهجوم

قدم الباحثون جزءًا من كود POC، والذي يوضح كيفية استغلال هذا الثغرة للهجوم. تتطابق نتائج الاختبار مع مكدس الاستدعاءات للهجمات الفعلية، مما يؤكد وجود الثغرة وقابليتها للاستغلال.

! [تحليل هجوم إعادة الدخول OrionProtocol مع 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(

نصائح الأمان

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

تؤكد هذه الحادثة مرة أخرى على أهمية التركيز على الأمان في تطوير العقود الذكية، خاصة عند التعامل مع تدفقات الأموال. ينبغي على فرق المشاريع تعزيز تدقيق الشيفرة، والنظر في إدخال فرق أمان بلوكشين محترفة لإجراء تقييم شامل، لتقليل المخاطر المحتملة إلى أقصى حد.

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