BlockSec تشارك نتائج تدقيق Neo X، حل ثلاث ثغرات أمنية – اقرأ الآن!
كشفت شركة BlockSec عن نتائج عملية التدقيق الأخيرة الخاصة بـ Neo X، السلسلة الجانبية المتوافقة مع EVM التي تم إطلاقها مؤخرًا بواسطة Neo. وقد تعرفت عملية التدقيق على ثلاث نقاط ضعف محتملة تم تصحيحها جميعًا.
المنهجية
ركز التدقيق على تنفيذ عقدة Neo X، لاسيما التعديلات التي أُجريت على Geth (go-ethereum)، التي تنبثق منها عقدة Neo X. لم يتم تضمين بروتوكول التوافق dBFT في نطاق التدقيق.
استخدمت BlockSec مجموعة من محللات الأكواد المؤتمتة، وأدوات التحليل العشوائي، والتحليل الدلالي لاكتشاف نقاط الضعف. كما قامت بالتحقق المتقاطع من ناقلات الهجوم المحتملة مع عمليات تدقيق مستقلة للتأكد من نتائجها قبل تقديم توصيات الإصلاح.
النتائج
حدد التدقيق مشكلة واحدة شديدة الخطورة ومشكلتين متوسطتي الخطورة، تم حلها جميعًا من قبل فريق Neo X.
- كانت المشكلة الأكثر خطورة هي نقص التحقق الكافي من العناوين التي ترسل رسائل الشبكة P2P المهمة لبروتوكول dBFT. تم تخفيف هذه الثغرة عن طريق تنفيذ فحوصات ضمن عقد الحوكمة لضمان الأذونات المناسبة.
- تم العثور على المشكلتين متوسطتي الخطورة ضمن نظام الحوكمة. الأولى تتعلق بناقل محتمل لهجوم حجب الخدمة داخل عقد الحوكمة. كان العقد يسمح لأي مستخدم بدفع رسوم تسجيل ليصبح مرشحًا للتحقق حتى الوصول إلى السعة القصوى.
يمكن للفاعلين الضارين استغلال هذا باستخدام وظيفةexitCandidate لاسترداد رسوم التسجيل بالكامل، ما عدا رسوم المعاملات، مما يسمح لهم بشغل فتحات المرشحين دون تكلفة طويلة الأجل. حل فريق Neo X هذه المشكلة عن طريق ضمان عدم استرداد كامل الرسوم، مما يجعل هذه الهجمات مكلفة للغاية.
كانت المشكلة الثانية متعلقة بعدم وجود قفل زمني في آلية التصويت المستخدمة للعمليات المميزة داخل عقد الحوكمة. كان يمكن أن يمكن ذلك من استيلاء عدائي على قائمة المدققين الحاليين. قدم إدخال القفل الزمني نافذة إنقاذ حاسمة لإحباط الهجمات المحتملة من المقترحات الخبيثة.