الكود ليس قانوناً إذا احتوى على أخطاء
يَعِد DeFi بأن العقود الذكية تُنفَّذ تلقائياً ودون ثقة وسيط. والواقع أن العقود الذكية برامج يكتبها البشر، والبشر يكتبون كوداً به أخطاء. ولأن بروتوكولات DeFi تحتفظ بأصول قيمتها ملايين أو مليارات الدولارات، فإن الأخطاء كارثية مالياً. فقد ضاع أكثر من 3 مليارات دولار بسبب استغلال smart contract منذ أن بدأ DeFi، والرقم يستمر في النمو.
فئات مخاطر العقود الذكية
تُعد هجمات إعادة الدخول (Reentrancy) من بين أقدم الهجمات وأشهرها. فقد استغل اختراق DAO عام 2016 ثغرة إعادة دخول لاستنزاف ما يقارب 60 مليون دولار (بأسعار ETH في 2016). ويتضمن نمط الهجوم عقداً يستدعي دالة خارجية تقوم بدورها بالعودة إلى استدعاء العقد الأصلي قبل اكتمال الاستدعاء الأول، ما يسمح بسحوبات متكررة.
التلاعب بالأوراكل يتزايد شيوعاً. يعتمد كثير من بروتوكولات DeFi على أوراكل الأسعار (Chainlink، Uniswap TWAP) لتحديد قيم الأصول. فإذا تمكن مهاجم من التلاعب مؤقتاً بسعر الأوراكل، يستطيع خداع البروتوكول لتنفيذ صفقات أو تصفيات بأسعار خاطئة. وكثيراً ما تستغل هجمات القروض الفورية التلاعب بالأوراكل لأن المهاجم يستطيع اقتراض مبالغ ضخمة من رأس المال، والتلاعب بسعر ما، واستغلال بروتوكول، وسداد القرض في معاملة واحدة.
أخطاء المنطق هي أخطاء في منطق عمل العقد. يتم تجميع الكود ويعمل دون أن ينهار، لكنه لا يفعل ما قصده المطورون في ظروف edge معينة. وهذه أصعب الثغرات اكتشافاً لأنها تتطلب فهم كلٍّ من الكود والسلوك المقصود.
تحدث هجمات الحوكمة عندما يُراكم مهاجم ما عدداً كافياً من رموز الحوكمة لتمرير اقتراح خبيث. فإذا كانت حوكمة البروتوكول تستطيع تغيير معلمات رئيسية (هياكل الرسوم، نسب الضمانات، إنفاق treasury)، فإن التحكم بالحوكمة يعادل التحكم بالبروتوكول.
كيفية تقييم المخاطر
حالة التدقيق ضرورية لكنها غير كافية. فالبروتوكول الذي دُقّق من قِبل شركة موثوقة (Trail of Bits، OpenZeppelin، Consensys Diligence) أكثر أماناً من البروتوكول الذي لم يُدقَّق، لكن عمليات التدقيق لا تضمن الأمان. فكثير من البروتوكولات التي جرى استغلالها كانت قد دُقّقت.
الوقت في الإنتاج مهم. فبروتوكول احتفظ بـ500 مليون دولار من TVL لمدة عامين دون حوادث أكثر أماناً بشكل واضح من بروتوكول أُطلق الشهر الماضي، بصرف النظر عن حالة التدقيق. فمرور الوقت دون استغلال دليل (لا برهان) على أن متجهات الهجوم الرئيسية قد غُطيت.
تعقيد الكود عامل مخاطرة. فالبروتوكولات الأبسط التي تحتوي على أسطر كود أقل وتبعيات خارجية أقل تمتلك أسطح هجوم أصغر. أما البروتوكولات التي تدمج بروتوكولات أخرى متعددة (تكديس العوائد عبر ثلاث أو أربع طبقات DeFi) فتُضاعف المخاطر لأن ثغرة في أي طبقة يمكن أن تؤثر على المكدس بأكمله.
تحديد حجم تعرضك لـDeFi
الأثر العملي هو أن عوائد DeFi يجب أن تُقيَّم في مواجهة مخاطر العقود الذكية، لا بمعزل عنها. فعائد 5% على Aave (مُجرَّب، بعدة عمليات تدقيق، وسنوات من التشغيل، ومليارات في TVL) يمثل مقترحاً مخاطرياً مختلفاً جداً عن عائد 50% على بروتوكول جديد غير مدقق بـ2 مليون دولار في TVL. اضبط المخاطر في تقييمك، وحدد أحجام مراكزك في DeFi وفقاً لذلك.