في الآونة الأخيرة، تعرض بروتوكول Cork داخل السلسلة لايثر لهجوم، حيث حقق المهاجمون أرباحًا قدرها 12 مليون دولار من خلال ثغرة منطقية في عقد المشروع (عدم التحقق من المعلمات الأساسية). تقدم هذه المقالة تحليلًا مفصلًا لهذا الحادث وتتبع الأموال.
الكاتب: Beosin
مؤخراً، تعرض بروتوكول Cork داخل السلسلة للاختراق، حيث حقق المهاجمون أرباحاً قدرها 12 مليون دولار من خلال ثغرة منطقية في عقد المشروع (عدم التحقق من المعلمات الأساسية). قامت فريق أمان Beosin بتحليل مفصل للحادثة وتتبع الأموال، وشاركت النتائج كما يلي:
خطوات الهجوم التفصيلية
قبل تحليل الهجوم ، نحتاج إلى فهم منطق الأعمال الخاص ب Cork Protocol. يقدم آلية مقايضة التخلف عن السداد الائتماني مشابهة للتمويل التقليدي (تسمى Depeg Swap) ، والتي تعمل على ترميز مخاطر إلغاء ربط الأصول المربوطة (مثل stETH) ، ويمكن للمستخدمين التحوط أو التداول في مخاطر فك الربط للأصول المربوطة. أنواع الرموز هي:
أصول الاسترداد (Redemption Asset, RA): الأصول الأساسية (مثل ايثر)
الأصول المرتبطة (Pegged Asset, PA): الأصول المرتبطة بالأصول الأساسية (مثل stETH)
صفقات فك الارتباط (DS): مشابهة لخيارات البيع، للتحوط من انخفاض الأسعار
تغطية الرموز (Cover Token, CT) — مشابهة لخيار الشراء، لم يحدث فك الارتباط، يمكن كسب العوائد؛ إذا حدث فك الارتباط، يتعين تحمل الخسائر
عندما يقوم المستخدم بإيداع RA، يقوم بروتوكول Cork بصك رموز DS و CT، يمكن للمستخدمين إجراء المعاملات أو استردادها للمراهنة أو التحوط ضد المخاطر.
الهجوم الحالي يتضمن سوق رموز حقيقية وسوق مزيف تم إنشاؤه بواسطة المهاجمين:
!
(1) قام المهاجم أولاً بإنشاء سوق زائف، حيث كان RA هو رمز weETH8DS-2 و PA هو wstETH. يمكن ملاحظة أن weETH8DS-2 كان من المفترض أن يكون DS في السوق الحقيقي، لكنه يمكن أن يكون RA في السوق الزائف، وكان من المفترض أن يتم حظر ذلك من خلال التحقق من الرموز عبر الأسواق.
!
(2) المهاجمون يشترون weETH8CT-2 من السوق الحقيقي.
!
استغل (3) المهاجم الافتقار إلى التحكم الصحيح في الوصول إلى وظيفة beforeSwap في وظيفة CorkHook لإرسال بيانات Hook مخصصة إلى وظيفة CorkCall ، مما أجبرها على تقسيم weETH8DS-2 إلى مزيفة \ _DS ومزيفة \ _CT. هذا ممكن لأن weETH8DS-2 هو RA للسوق المزيف ، وتعتبر الوظيفة المزيفة _DS والمزيفة _CT تنتمي إلى المهاجمين.
!
(4) تم نقل رموز fake_DS و fake_CT إلى المهاجم، وفقًا لقواعد بروتوكول Cork: يمكن استبدال رموز DS و CT برموز RA. قام المهاجم بتحويل رموز fake_DS و fake_CT المستلمة إلى weETH8DS-2 من خلال السوق الافتراضي.
(5) حالياً يمتلك المهاجم weETH8CT-2 الذي تم شراؤه من الخطوة 2 و weETH8DS-2 المعاد تجميعه، والذي يمكن استبداله في السوق الحقيقي بـ RA (أي wstETH).
من هنا، يمكن للمهاجمين تحويل سيولة DS من السوق الحقيقي إلى سوق آخر (السوق المزيف المُنشأ) كـ RA لاستردادها، مما يسمح لهم بسحب السيولة من RA في السوق الحقيقي. سرق المهاجمون خلال هذه الحادثة 3761 wstETH وقاموا بتحويلها إلى ETH بقيمة حوالي 12 مليون دولار.
تحليل الثغرات
من خلال عملية الهجوم المذكورة أعلاه، يمكننا أن نرى أن أسباب استغلال الثغرات في الحدث بالكامل تتلخص في النقاط الثلاث التالية:
نقص التحقق: لم يتم فحص ما إذا كانت DS المستخدمة كـ RA قد تم استخدامها في أسواق أخرى.
CorkCall بيانات الاسترجاع المقدمة من مستخدم موثوق به دون تحقق مناسب.
تتيح هذه الاتفاقية إنشاء أسواق غير مرخصة وغير محدودة.
على الرغم من أن بروتوكول ك Cork قد مر بعدة تدقيقات أمنية ومسابقات تدقيق، إلا أن هذه الثغرة على المستوى المنطقي قد تم تجاهلها. وإذا تم إجراء فحص أكثر صرامة لإعادة استخدام الرموز، والتحقق الدقيق من بيانات الاستدعاء، وتطبيق رقابة أكثر صرامة على إنشاء السوق، كان من الممكن تجنب هذا الهجوم.
تتبع الأموال المسروقة
اكتشف Beosin Trace تتبع الأموال المسروقة: عنوان المهاجم 0xea6f30e360192bae715599e15e2f765b49e4da98 حقق ربحًا قدره حوالي 3761 wstETH، ثم قام بتحويل wstETH إلى ETH من خلال بروتوكولات DeFi مثل Uniswap و1inch، بإجمالي قدره 4530.6.
لم يتم نقل الأموال المسروقة حتى الآن. لقد أضافت Beosin Trace العناوين المرتبطة بالهاكر إلى قاعدة بيانات العناوين السوداء، وسيتواصلون في تتبعها لاحقاً.
!
وفقًا لتحليل Beosin Trace، لا تزال جميع الأموال المسروقة محفوظة في عنوان المهاجم.
ملخص
كان في قلب الهجوم ثغرة أمنية في منطق الأعمال الأساسي في Cork Protocol ، مما أدى إلى سرقة المهاجم لكمية كبيرة من wstETH من خلال الرموز المزيفة. تتطلب بروتوكولات DeFi المعقدة مثل Cork Protocol اختبارا مفصلا ومراجعة لمنطق الأعمال للعقد من خلال عمليات تدقيق أمنية متعددة الأوجه ومتعددة الطبقات. في السابق ، أكمل فريق أمان Beosin عمليات تدقيق أمنية للعديد من بروتوكولات DeFi (على سبيل المثال ، Surf Protocol و SyncSwap و LeverFi و Owlto Finance) ، مع التركيز على العثور على عيوب منطق العقد وحالات الحافة التي قد يتم تجاهلها ، مما يضمن اختبار البروتوكول بالكامل.
شاهد النسخة الأصلية
المحتوى هو للمرجعية فقط، وليس دعوة أو عرضًا. لا يتم تقديم أي مشورة استثمارية أو ضريبية أو قانونية. للمزيد من الإفصاحات حول المخاطر، يُرجى الاطلاع على إخلاء المسؤولية.
تحليل الثغرات|تحليل حادثة سرقة 12 مليون دولار من بروتوكول Cork Protocol وق تتبع الأموال
الكاتب: Beosin
مؤخراً، تعرض بروتوكول Cork داخل السلسلة للاختراق، حيث حقق المهاجمون أرباحاً قدرها 12 مليون دولار من خلال ثغرة منطقية في عقد المشروع (عدم التحقق من المعلمات الأساسية). قامت فريق أمان Beosin بتحليل مفصل للحادثة وتتبع الأموال، وشاركت النتائج كما يلي:
خطوات الهجوم التفصيلية
قبل تحليل الهجوم ، نحتاج إلى فهم منطق الأعمال الخاص ب Cork Protocol. يقدم آلية مقايضة التخلف عن السداد الائتماني مشابهة للتمويل التقليدي (تسمى Depeg Swap) ، والتي تعمل على ترميز مخاطر إلغاء ربط الأصول المربوطة (مثل stETH) ، ويمكن للمستخدمين التحوط أو التداول في مخاطر فك الربط للأصول المربوطة. أنواع الرموز هي:
أصول الاسترداد (Redemption Asset, RA): الأصول الأساسية (مثل ايثر)
الأصول المرتبطة (Pegged Asset, PA): الأصول المرتبطة بالأصول الأساسية (مثل stETH)
صفقات فك الارتباط (DS): مشابهة لخيارات البيع، للتحوط من انخفاض الأسعار
تغطية الرموز (Cover Token, CT) — مشابهة لخيار الشراء، لم يحدث فك الارتباط، يمكن كسب العوائد؛ إذا حدث فك الارتباط، يتعين تحمل الخسائر
عندما يقوم المستخدم بإيداع RA، يقوم بروتوكول Cork بصك رموز DS و CT، يمكن للمستخدمين إجراء المعاملات أو استردادها للمراهنة أو التحوط ضد المخاطر.
الهجوم الحالي يتضمن سوق رموز حقيقية وسوق مزيف تم إنشاؤه بواسطة المهاجمين:
!
(1) قام المهاجم أولاً بإنشاء سوق زائف، حيث كان RA هو رمز weETH8DS-2 و PA هو wstETH. يمكن ملاحظة أن weETH8DS-2 كان من المفترض أن يكون DS في السوق الحقيقي، لكنه يمكن أن يكون RA في السوق الزائف، وكان من المفترض أن يتم حظر ذلك من خلال التحقق من الرموز عبر الأسواق.
!
(2) المهاجمون يشترون weETH8CT-2 من السوق الحقيقي.
!
استغل (3) المهاجم الافتقار إلى التحكم الصحيح في الوصول إلى وظيفة beforeSwap في وظيفة CorkHook لإرسال بيانات Hook مخصصة إلى وظيفة CorkCall ، مما أجبرها على تقسيم weETH8DS-2 إلى مزيفة \ _DS ومزيفة \ _CT. هذا ممكن لأن weETH8DS-2 هو RA للسوق المزيف ، وتعتبر الوظيفة المزيفة _DS والمزيفة _CT تنتمي إلى المهاجمين.
!
(4) تم نقل رموز fake_DS و fake_CT إلى المهاجم، وفقًا لقواعد بروتوكول Cork: يمكن استبدال رموز DS و CT برموز RA. قام المهاجم بتحويل رموز fake_DS و fake_CT المستلمة إلى weETH8DS-2 من خلال السوق الافتراضي.
(5) حالياً يمتلك المهاجم weETH8CT-2 الذي تم شراؤه من الخطوة 2 و weETH8DS-2 المعاد تجميعه، والذي يمكن استبداله في السوق الحقيقي بـ RA (أي wstETH).
من هنا، يمكن للمهاجمين تحويل سيولة DS من السوق الحقيقي إلى سوق آخر (السوق المزيف المُنشأ) كـ RA لاستردادها، مما يسمح لهم بسحب السيولة من RA في السوق الحقيقي. سرق المهاجمون خلال هذه الحادثة 3761 wstETH وقاموا بتحويلها إلى ETH بقيمة حوالي 12 مليون دولار.
تحليل الثغرات
من خلال عملية الهجوم المذكورة أعلاه، يمكننا أن نرى أن أسباب استغلال الثغرات في الحدث بالكامل تتلخص في النقاط الثلاث التالية:
نقص التحقق: لم يتم فحص ما إذا كانت DS المستخدمة كـ RA قد تم استخدامها في أسواق أخرى.
CorkCall بيانات الاسترجاع المقدمة من مستخدم موثوق به دون تحقق مناسب.
تتيح هذه الاتفاقية إنشاء أسواق غير مرخصة وغير محدودة.
على الرغم من أن بروتوكول ك Cork قد مر بعدة تدقيقات أمنية ومسابقات تدقيق، إلا أن هذه الثغرة على المستوى المنطقي قد تم تجاهلها. وإذا تم إجراء فحص أكثر صرامة لإعادة استخدام الرموز، والتحقق الدقيق من بيانات الاستدعاء، وتطبيق رقابة أكثر صرامة على إنشاء السوق، كان من الممكن تجنب هذا الهجوم.
تتبع الأموال المسروقة
اكتشف Beosin Trace تتبع الأموال المسروقة: عنوان المهاجم 0xea6f30e360192bae715599e15e2f765b49e4da98 حقق ربحًا قدره حوالي 3761 wstETH، ثم قام بتحويل wstETH إلى ETH من خلال بروتوكولات DeFi مثل Uniswap و1inch، بإجمالي قدره 4530.6.
لم يتم نقل الأموال المسروقة حتى الآن. لقد أضافت Beosin Trace العناوين المرتبطة بالهاكر إلى قاعدة بيانات العناوين السوداء، وسيتواصلون في تتبعها لاحقاً.
!
وفقًا لتحليل Beosin Trace، لا تزال جميع الأموال المسروقة محفوظة في عنوان المهاجم.
ملخص
كان في قلب الهجوم ثغرة أمنية في منطق الأعمال الأساسي في Cork Protocol ، مما أدى إلى سرقة المهاجم لكمية كبيرة من wstETH من خلال الرموز المزيفة. تتطلب بروتوكولات DeFi المعقدة مثل Cork Protocol اختبارا مفصلا ومراجعة لمنطق الأعمال للعقد من خلال عمليات تدقيق أمنية متعددة الأوجه ومتعددة الطبقات. في السابق ، أكمل فريق أمان Beosin عمليات تدقيق أمنية للعديد من بروتوكولات DeFi (على سبيل المثال ، Surf Protocol و SyncSwap و LeverFi و Owlto Finance) ، مع التركيز على العثور على عيوب منطق العقد وحالات الحافة التي قد يتم تجاهلها ، مما يضمن اختبار البروتوكول بالكامل.