تسببت الحالة المسروقة لاتفاق Cetus ، والتي صدمت صناعة العملة المشفرة قبل بضعة أيام ، مناقشات من جميع مناحي الحياة. أصدر فريق الأمن البطيء أيضًا القصة الكاملة للحادث بأكملهتقرير، قال فريق الضباب البطيء أن هذا الهجوم أظهر قوة ثغرة في الفائض الرياضي. يستخدم المهاجم حسابات دقيقة لتحديد معلمات محددة ، ويستخدم عيوب وظيفة checked_shlw للحصول على مليارات السيولة بتكلفة الرمز المميز 1. هذا هجوم رياضي متطور للغاية ويوصى به أن يتحقق المطورون تمامًا من الشروط الحدودية لجميع الوظائف الرياضية في تطوير العقود الذكية.
الضباب البطيء: جوهر الحدث هو ضعف في التدقيق في التدفق
قال فريق Mist البطيء أن جوهر هذا الحادث هو أن المهاجم قام ببناء المعلمات بعناية لجعل الفائض يحدث ولكن يمكن أن يتخطى الكشف ، وتبادل في النهاية كمية رمزية صغيرة جدًا للأصول السائلة الضخمة. بما يتوافق مع التحليل السابق من قبل neeksec.
(من نقاط الضعف البروتوكول إلى الجدال اللامركزية: شرح مفصل للقصة الكاملة لحادث Cetus ، هل اهتزت أمان اللغة؟)
استعار المهاجم لأول مرة 10.02 مليون hasui من خلال قرض البرق ، مما تسبب بسرعة في انخفاض السعر في مجموعة Hasui/Sui بنسبة 99.9 ٪. ثم أضف السيولة إلى نطاق قيم القراد 300000 ~ 300200 ، وهو 1 ٪ فقط من عرض الفاصل الزمني.
ثم هناك الضعف الرئيسي للحدث. ادعى المهاجم أنه يضيف كمية هائلة من السيولة (أكثر من 10 إلى قوة 27) ، ولكن بسبب الخطأ الترميز لوظيفة checked_shlw ، فإن العقد يتقاضى فقط 1 hasui منه.
يمكن للمهاجمين تحليل الضباب البطيء تبادل 1 رمز للسيولة الضخمة. السبب الأساسي هو أن هناك ثغرة في checked_shlw في وظيفة get_delta_a. هذا هو ما يستفيد منه المهاجم ، مما يسبب انحرافات شديدة في النظام عند حساب عدد hasuis الذي يجب إضافته بالفعل. نظرًا لعدم اكتشاف الفائض ، فقد أسيء النظام لعدد Hasuis المطلوب ، مما أدى إلى أن يكون المهاجم قادرًا على تبادل عدد كبير من الأصول السائلة مع رمز صغير جدًا فقط.
أي قيمة إدخال أقل من 0xfffffffffffffff << 192 سوف تتجاوز فحص الفائض. ومع ذلك ، عندما يتم تحويل هذه القيم إلى اليسار بمقدار 64 بت ، ستتجاوز النتيجة نطاق التمثيل لـ U256. في هذا الوقت ، يتم اقتطاع بيانات البتات العالية ، مما يؤدي إلى أن تكون النتيجة أصغر بكثير من القيمة النظرية. وبهذه الطريقة ، يقلل النظام من العدد المطلوب من hasuis في الحسابات اللاحقة.
قام المهاجم بإزالة السيولة في ثلاث جلسات ، وحصل على ما مجموعه 20.04 مليون حاسوي وأكثر من 5.76 مليون سوي. في النهاية ، أعاد المهاجم قرض Lightning وحقق ربحًا صافًا لأكثر من 230 مليون دولار.
رمز Cetus الثابت
تم إصلاحه بعد ذلك بعد ذلكشفرة،يشمل:
- تصحيح 0xffffffffffffffffff << 192 إلى العتبة الصحيحة 1 << 192.
- تصحيح شرط الحكم من N> Mask إلى N> = قناع.
- تأكد من أنه عندما يتسبب التحول الأيسر البالغ 64 بت في تدفق فائض ، يمكن اكتشاف علامة الفائض وإعادتها بشكل صحيح.
فريق الضباب البطيء: يجب على المطورين التحقق الصارم من الشروط الحدودية لجميع الوظائف الرياضية
يشير الضباب البطيء إلى أن المهاجم كان جاهزًا لرسوم الغاز قبل يومين ، وكانت هناك محاولة أخرى قبل الهجوم ، لكنها فشلت. في الوقت الحاضر ، تم تجميد صناديق العنوان SUI للمهاجم ، وتم إدراج عنوان EVM في القائمة السوداء من خلال الضباب البطيء للتتبع.
قال فريق الضباب البطيء أن هذا الهجوم أظهر قوة ثغرة في الفائض الرياضي. يستخدم المهاجم حسابات دقيقة لتحديد معلمات محددة ، ويستخدم عيوب وظيفة checked_shlw للحصول على مليارات السيولة بتكلفة الرمز المميز 1. هذا هجوم رياضي متطور للغاية ، ويوصي فريق أمان الضباب البطيء بالتحقق من المطورين بصرامة من الشروط الحدودية لجميع الوظائف الرياضية في تطوير العقود الذكية.
تحذير المخاطر
استثمارات العملة المشفرة محفوفة بالمخاطر للغاية ، وقد تتقلب أسعارها بشكل كبير وقد تفقد كل مديرك. يرجى تقييم المخاطر بحذر.