Skip to content
Blockchain

چرا ارتقای قرارداد هوشمندم به من اجازه می‌دهد حافظه‌ای را که حسابرسان قبلاً تأیید کرده‌اند، بی‌سروصدا خراب کنم؟

82

فرصت

الگوهای پروکسی قابل ارتقا (UUPS، Transparent Proxy، Diamond) در DeFi تولیدی استاندارد هستند، اما یک محدودیت سخت دارند: چیدمان حافظه یک پیاده‌سازی جدید باید با هر اسلات تخصیص‌یافته توسط پیاده‌سازی قبلی سازگار باشد. یک متغیر حالت جدید را در موقعیت اشتباه قرار دهید تا هر اسلات بعدی بی‌سروصدا خراب شود، بدون هیچ خطایی روی زنجیره. بررسی‌کننده‌های خودکار مانند پلاگین ارتقای OpenZeppelin موارد ساده را شناسایی می‌کنند، اما فضای نام‌گذاری‌شده ERC-7201 با بسته‌بندی سفارشی، تخصیص اسلات در سطح اسمبلی، و تصادم متقاطع فاست Diamond که در آن دو فاست یک ناحیه حافظه یکسان را ادعا می‌کنند را از دست می‌دهند. یک مطالعه همتا-ارزیابی‌شده در ژانویه ۲۰۲۶ (ProxyLens) یک دسته قابل توجه از آسیب‌پذیری‌های تصادم بین‌فاستی را یافت که ابزارهای موجود آن‌ها را تشخیص نمی‌دهند. حسابرسان قراردادهای پیاده‌سازی را به‌صورت مجزا بررسی می‌کنند و نمی‌توانند نقشه کامل حافظه یک پروکسی با چندین فاست تفویض‌شده را بازسازی کنند.

چرا اهمیت دارد

ابزاری که نقشه ذخیره‌سازی کامل و دارای تفاوت نسخه‌ای را در تمامی قراردادهای پراکسی و پیاده‌سازی می‌سازد، یک دسته از خرابی‌های بی‌صدای داده را به یک استقرار مسدودشده تبدیل می‌کند.

نحوه امتیازدهی به فرصت

امتیاز فرصت برداشت شخصی من است، نه یک سنجش دقیق: چقدر درد ایجاد می‌کند، چند بار گریبان می‌گیرد، و چقدر راه‌حل کمی برای آن وجود دارد. امتیاز بالاتر یعنی فکر می‌کنم ساختنش بیشتر ارزش دارد.

شدت9/10

چقدر وقتی ظاهر می‌شود دردسر ایجاد می‌کند.

تکرار6/10

چند بار مردم واقعاً با آن مواجه می‌شوند.

فضای خالی8/10

چقدر ابزار مناسب برای آن امروز کمیاب است.

مشکلات بیشتری که ارزش حل کردن دارند