تم اختراق بروتوكول Truebit بقيمة 26.44 مليون دولار بسبب ثغرة تجاوز الأعداد الصحيحة

iconOdaily
مشاركة
Share IconShare IconShare IconShare IconShare IconShare IconCopy
AI summary iconملخص

expand icon
تعرض بروتوكول Truebit للاستغلال بقيمة 26.44 مليون دولار في 8 يناير 2026 بسبب ثغرة تجاوز عدد صحيح في منطق شراء الرموز. استغل المهاجم عيبًا في الوظيفة 0x1446، باستخدام حلقة للعبث بقيم إدخال كبيرة وإثارة حسابات ETH غير الدقيقة. تعود الثغرة إلى Solidity ^0.6.10، والتي تفتقر إلى فحوصات التجاوز. تسلط هذه الحادثة الضوء على الحاجة إلى تحديث البروتوكول وتعزيز عجلة معالجة أخبار الثغرات في DeFi. تحذير فريق الأمان ExVul أن الهجمات الموجهة بالذكاء الاصطناعي على البروتوكولات القديمة قد ترتفع، وتشير إلى ضرورة إجراء الفرق للفحوصات وتطبيق المراقبة.

في 8 يناير 2026، تم اختراق بروتوكول Truebit Protocol، مما أدى إلى خسارة 8,535.36 ETH (حوالي 26.44 مليون دولار أمريكي)، وقد أصدر فريق Truebit Protocol الرسمي بيانًا في صباح اليوم التالي لتأكيد الحادثة. وقد قام فريق الأمان ExVul بتحليل تفصيلي للثغرة في هذا الهجوم، والنتائج كما يلي:

التدفق الهجومي

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

0x6c8ec8f14be7c01672d31cfa5f2cefeab2562b50

هاش المعاملة المهاجمة:

0xcd4755645595094a8ab984d0db7e3b4aabde72a5c87c4f176a030629c47fb014

أكمل المهاجم الهجوم من خلال معاملة تُكرر استدعاء getPurchasePrice→0xa0296215→0xc471b10b عبر أربع دورات. نأخذ الدورة الأولى كمثال للتحليل.

1. يقوم المهاجم أولاً بدعوة الدالة getPurchasePrice(240442509453545333947284131) والتي تُرجع 0.

2. استدعى المهاجم الدالة 0xa0296215(c6e3ae8e2cbab1298abaa3) مع قيمة msg.value تساوي 0. وأخيراً نجح في تشكيل 240442509453545333947284131 من TRU.

3. يقوم المهاجم بتشغيل الدالة 0xc471b10b(c6e3ae8e2cbab1298abaa3). في النهاية تُدمَر 240442509453545333947284131 وحدة من TRU، ويحصل على 5105.06 وحدة من ETH.

تحليل منطق الهجوم

من خلال فهم عملية الهجوم المذكورة أعلاه، يمكن ملاحظة بوضوح وجود مشكلة منطقية في وظيفة getPurchasePrice وفي وظيفة 0xa0296215. سنبدأ الآن بالتحليل العميق (نظراً لعدم كشف العقدة المصدرية، فإن الشيفرات التالية هي شيفرات معاد تجميعها).

من خلال مقارنة نقاط التشابه بين الدالتين، يمكننا اكتشاف أن الوظيفة 0x1446 تُستخدم لحساب كمية ETH المطلوبة لشراء كمية معينة من TRU. من الواضح أن هناك مشكلة منطقية في وظيفة 0x1446 تؤدي إلى خطأ في حساب ETH. سيتم تحليل منطق وظيفة 0x1446 بالتفصيل أدناه.

يرجى ملاحظة منطق الدالة 0x1446، نظرًا لأن الناتج النهائي من الحساب v13 == 0، فهذا يعني بالتأكيد أن هناك مشكلة في منطق الحساب المذكور أعلاه. من المهم معرفة أن الوظيفة 0x18ef تشبه _SafeMul، وبالتالي فإن المشكلة تكمن في استخدام الإضافة الأصلية v12 + v9 (النسخة العقدية هي ^0.6.10، وبالتالي لا توجد فحوصات لحدوث تجاوز القيم).

v12 وv9 تشير على التوالي إلى:

من خلال التحليل المذكور أعلاه، فإن فكرته الهجومية للمهاجم هي إدخال قيمة _amountIn كبيرة جدًا، مما يؤدي إلى تجاوز (overflow) قيمة v12 + v9 إلى قيمة صغيرة جدًا، وأخيرًا تصبح (v12 + v9) / v6 == 0.

ملخص

السبب الجذري وراء الهجوم على بروتوكول Truebit هو وجود ثغرة خطيرة في منطق حساب سعر شراء الرمز المميز، تتعلق بحدوث تجاوز عدد صحيح (integer overflow). نظرًا لاعتماد العقد على إصدار Solidity ^0.6.10 ولم يتم تنفيذ أي فحوصات أمان لعمليات الحسابات الحاسمة، فقد تسبب ذلك في خسارة كبيرة تقدر بـ 8,535.36 ETH. في الوقت الحالي، تم تخفيف مشكلة تجاوز الأعداد الصحيحة في إصدارات Solidity الجديدة. من المرجح أن يكون هذا الهجوم ناتجًا عن قراصنة يستخدمون الذكاء الاصطناعي بشكل تلقائي لفحص بروتوكولات DeFi القديمة التي تم نشرها بالفعل (بما في ذلك هجوم Balancer و yETH في وقت سابق). نعتقد أن هذا النوع من الهجمات باستخدام الذكاء الاصطناعي على بروتوكولات DeFi القديمة سيزداد في المستقبل القريب. لذلك ننصح مطوري المشاريع بإجراء تدقيق أمان جديد على رموز العقود، وإذا تم اكتشاف أي ثغرات، يجب الترقية السريعة للعقود أو نقل الأصول، مع تنفيذ مراقبة سلسلة الكتل للكشف عن أي استثناءات بشكل فوري وتقليل الخسائر إلى الحد الأدنى.

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