یک قرارداد قدیمی Aztec Connect یک ریسک آشنای دیفای را دوباره به کانون توجه بازگردانده است: زیرساخت رها شده فقط به این دلیل که یک محصول دیگر فعال نیست، خطرناک بودن را متوقف نمیکند.
یک پست محقق امنیتی از یک اکسپلویت احتمالی مؤثر بر Aztec Connect پرده برداشت، با گزارش از انتقال حدود ۲.۱ میلیون دلار از یک قرارداد هوشمند تغییرناپذیر. جزئیات هنوز نیاز به بررسی دقیق دارند، زیرا منبع اول یک افشاگری محقق است نه یک گزارش کامل پس از حادثه. اما مسئله کلی به اندازه کافی روشن است: قراردادهای قدیمی دیفای میتوانند مدتها پس از اینکه اکثر کاربران دیگر به آنها فکر نمیکنند، فعال، دارای وجه و قابل حمله باقی بمانند.
در نرمافزارهای معمولی، یک محصول منسوخ معمولاً محو میشود. کاربران دانلود آن را متوقف میکنند، شرکتها پشتیبانی آن را قطع میکنند و در نهایت در پسزمینه ناپدید میشود.
دیفای اینگونه عمل نمیکند. یک قرارداد هوشمند میتواند بهطور نامحدود روی زنجیره باقی بماند. اگر وجوهی نگه دارد یا هر مسیری به وجوه داشته باشد، همچنان میتواند هدف قرار گیرد. ممکن است فرانتاند رفته باشد. تیم ممکن است پیش رفته باشد. مستندات ممکن است به کاربران بگویند برداشت کنند. هیچکدام از اینها برای مهاجمی که به خود قرارداد نگاه میکند اهمیتی ندارد.
پرونده Aztec Connect بهویژه ناراحتکننده است، زیرا قرارداد بهعنوان تغییرناپذیر توصیف شده بود. در دیفای، تغییرناپذیری اغلب بهعنوان یک ویژگی تلقی میشود. این به این معناست که کاربران نباید به یک تیم اعتماد کنند تا از تغییر قوانین در آینده اجتناب کنند.
اما تغییرناپذیری همچنین گزینههای اضطراری را از بین میبرد.
اگر یک قرارداد فعال مشکلی داشته باشد و هیچ کنترل مدیریتی باقی نمانده باشد، تیم ممکن است نتواند آن را متوقف، ارتقا یا وصلهگذاری کند. این میتواند کاربران را وابسته به این کند که آیا وجوه قبلاً برداشت شدهاند و آیا هر ارزش باقیماندهای میتواند از طریق سایر روشها محافظت شود.
این مبادلهای است که دیفای هنوز با آن دستوپنجه نرم میکند. قابلیت ارتقا ریسک اعتماد و حاکمیت ایجاد میکند. تغییرناپذیری ریسک پاسخگویی ایجاد میکند.
درس اینجا صرفاً "قراردادهای قدیمی بد هستند" نیست. درس این است که توقفها باید مانند رویدادهای امنیتی مورد رسیدگی قرار گیرند.
یک خاموشسازی مسئولانه باید شامل هشدارهای مکرر به کاربران، مهلتهای برداشت در صورت امکان، نظارت پس از توقف، مستندات واضح و ارتباط عمومی کنترل ریسک باشد. اگر وجوه قابل توجهی در قراردادهای قدیمی باقی بمانند، تیمها باید فرض کنند که مهاجمان هنوز در حال نظارت هستند.
این بهویژه برای سیستمهای حریم خصوصی، پل، رولآپ و فناوری میان زنجیرهای صادق است، جایی که منطق قرارداد میتواند پیچیدهتر باشد و حالتهای خرابی برای کاربران عادی کمتر آشکار باشد.
برای کاربران، قانون ساده است: وجوه را در قراردادهای منسوخ رها نکنید مگر اینکه دلیل بسیار روشنی وجود داشته باشد.
اگر یک پروتکل به کاربران میگوید برداشت کنند، آن را جدی بگیرید. اگر یک فرانتاند خاموش شد، فرض نکنید که ریسک پایان یافته است. اگر یک قرارداد قدیمی، در وضعیت فعلی حسابرسی نشده یا دیگر تحت نظارت نباشد، ممکن است امنتر باشد که آن را بهعنوان زیرساخت خصمانه تلقی کنید.
حادثه Aztec Connect یادآور دیگری است که ریسک دیفای دنباله بلندی دارد. محصولات میتوانند از مکالمات بازار ناپدید شوند در حالی که قراردادهایشان روی زنجیره باقی میمانند و منتظرند کسی ضعف بعدی را پیدا کند.
