SharkTeam: تحليل الإعصار مبدأ هجوم الاقتراح النقدي

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

** بقلم: SharkTeam **

في 20 مايو 2023 ، بتوقيت بكين ، تعرض Tornado.Cash لهجوم مقترح ، وحقق المهاجم ربحًا بنحو 680 ألف دولار أمريكي. أجرى SharkTeam تحليلًا تقنيًا لهذه الحادثة لأول مرة ، ولخص الاحتياطات الأمنية ، على أمل أن تتعلم المشاريع اللاحقة منه وبناء خط دفاع أمني لصناعة blockchain.

1. تحليل الأحداث

عنوان المهاجم:

0x092123663804f8801b9b086b03B98D706f77bD59

0x592340957eBC9e4Afb0E9Af221d06fDDDF789de9

عقد الهجوم:

0xAF54612427d97489707332efe0b6290F129DbAcb

0x03ecf0d22f9ccd21144a7d492cf63b471916497a

0x7dc86183274b28e9f1a100a0152dac975361353d (عقد النشر)

0xc503893b3e3c0c6b909222b45f2a3a259a52752d (عقد اقتراح مزيف)

العقد المهاجم:

0x5efda50f22d34F262c29268506C5Fa42cB56A1Ce

بدء صفقة اقتراح:

0x34605f1d6463a48b818157f7b26d040f8dd329273702a0618e9e74fe350e6e0d

هجوم المعاملات:

0x3274b6090685b842aca80b304a4dcee0f61ef8b6afee10b7c7533c32fb75486d

عملية الهجوم:

(1) أولاً ، يبدأ المهاجم (0x08e80ecb) باقتراح للعقد المهاجم (0x5efda50f) ، مدعيًا أن هذا الاقتراح مكمل للمقترح 16

(2) ولكن هناك في الواقع وظيفة إضافية للتدمير الذاتي في الاقتراح.

(3) لسوء الحظ ، لم يجد المجتمع أي مشاكل في هذا الاقتراح ، وصوت معظم الأعضاء لتمرير هذا الاقتراح.

(4) أنشأ المهاجم العديد من العقود لتنفيذ نقل الرموز

(5) يدمر المهاجم (0x08e80ecb) عقد الاقتراح (0xc503893b) وعقد الإنشاء (0x7dc86183). تمت إعادة نشر عقد الهجوم (0xc503893b) لاحقًا على نفس العنوان.

(6) بعد تعديل عقد الاقتراح ، يقوم المهاجم (0x08e80ecb) بتنفيذ الاقتراح وتعديل مبلغ قفل الرمز المميز لعنوان العقد تحت سيطرته إلى 10000.

(7) بعد تنفيذ الاقتراح ، يقوم المهاجم (0x08e80ecb) بنقل الرموز المميزة إلى عنوانه الخاص ويحصل على ملكية العقد المهاجم.

تحليل الضعف: منذ نشر عقد الإنشاء (0x7dc86183) لعقد الاقتراح (0xc503893b) من خلال Creat2 ، بعد تدمير العقدين ، يمكن نشر عقد منطقي جديد على نفس العنوان ، ويتم استدعاء تنفيذ الاقتراح في النموذج استدعاء مفوض. يمكن للعقد المهاجم تعديل القيمة في العقد المهاجم بشكل تعسفي.

ملخص الحادث: كان سبب هذا الحادث هو أن المجتمع فشل في اكتشاف المخاطر في العرض عند التحقق من العرض ، ولم يتحقق بعناية مما إذا كان كود العقد المقترح به ثغرات أمنية.

2. توصيات أمنية

ردًا على هذا الهجوم ، يجب اتباع الاحتياطات التالية أثناء عملية التطوير:

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