هل انتهيت من قراءة تقرير تدقيق عقودك الذكية ثم رميته؟ هذا ما كنت تفوته حقًا

تقوم كل الفرق تقريبًا بتدقيق العقود الذكية. أغلب الفرق بعد قراءة التقرير، تُصلح القضايا الحرجة/العالية، ثم تضع التقرير جانبًا. هذا خطأ كبير.

🔍 ما يفعله معظم الفرق فعلًا:
- استلام تقرير التدقيق
- إصلاح مشكلات critical/high
- وضع medium و low على أنها "غير قابلة للإصلاح"
- حفظ التقرير في الأرشيف ثم نسيانه
- وبعد 6 أشهر يتم اختراقهم

🔍 ما يفوتهم فعلًا:

1. مشاكل Medium و Low عند جمعها
- تبدو كمشكلات صغيرة إذا نظرنا إليها منفردة
- لكنها تتكامل لتصبح مسار هجوم
- يقوم المهاجمون بربط عدة مشاكل صغيرة معًا
- أغلب الهجمات الكبيرة ليست ناتجة عن خطأ critical واحد

2. غياب مراجعة المعمارية
- التدقيق يراجع الكود ولا يراجع المعمارية
- ربط التصميم، واستخدام الـ oracles، وأنماط التحكم بالصلاحيات
- هذه هي نقاط الضعف الحقيقية
- معظم المهاجمين لا يهاجمون داخل منطق العقد مباشرةً—بل في طبقة التكامل

3. فترة ما بعد التدقيق خطرة
- يعتقد الفريق أن التدقيق يعني الأمان
- يبدأون بإضافة ميزات جديدة
- لا تتم إعادة تدقيق عند إضافة الميزات الجديدة
- يصبح التدقيق قديمًا خلال أسابيع

4. يتم تجاهل أمن التشغيل
- التدقيق لا يشمل إدارة المفاتيح
- لا يشمل عملية الترقية
- لا يشمل المراقبة والاستجابة للحوادث
- 80% من الاختراقات ليست بسبب أخطاء في العقود الذكية—بل بسبب فشل تشغيلي

5. يتم التقليل من مخاطر الاعتماديات
- OpenZeppelin وChainlink وUniswap وغيرها من الاعتماديات
- هذه الاعتماديات ستتحدث/تُحدّث
- يتم اكتشاف ثغرات داخل الاعتماديات باستمرار
- لا يتابع الفريق ذلك بعد التدقيق

الحقيقة هي: تقرير التدقيق هو لقطة Snapshot وليس ضمانًا للأمان. الفريق الذي يحافظ على الأمان هو الفريق الذي يعتبر الأمان عملية مستمرة، لا فريقًا يكتفي بعلامة ✔ لمرة واحدة.

لقد رأينا ذلك كثيرًا: فريق ينفق 50 ألف دولار على التدقيق، ثم يُخترق لأنه تجاهل مشاكل medium أو غيّر المعمارية دون إعادة مراجعتها.