نکات مهم خبر

  • یک کاربر قدیمی اتریوم در اثر باگ رابط کیف پول Safe، ۱۰۰ توکن اتریوم را برای چند ساعت از دست داد.
  • توسعه‌دهندگان شرکت Protofire که قبلا نسخه‌ای محافظتی از کیف پول را راه‌اندازی کرده بودند، دارایی را بازیابی کردند.
  • این اتفاق هشداری جدی برای کاربران کریپتو است: همیشه کیف پول خود را به‌روز نگه دارید و قبل از انتقال‌های بزرگ، تست انجام دهید.

ماجرا از آنجا شروع شد که کاربری به نام khalo_0x در شبکه اجتماعی ایکس، قصد داشت ۱۰۰ اتریوم (ETH) را از شبکه اصلی اتریوم به بلاک‌چین Base منتقل کند. او از رابط رسمی Safe Wallet Bridge استفاده کرده بود.

با این حال، بدون آنکه خودش متوجه باشد، یک باگ مهم در رابط کاربری این ابزار، باعث شد تا انتقال به یک کیف پول قرارداد هوشمند انجام شود که به نظر می‌رسید متعلق به خودش است – اما در واقع کنترل آن در دست فرد یا نهادی دیگر بود.

ریشه این مشکل، استفاده کاربر از نسخه قدیمی Safe (نسخه 1.1.1 منتشرشده در سال ۲۰۲۰) بود. این نسخه پیش از آن منتشر شده بود که قابلیت‌های چندزنجیره‌ای (multichain) رایج شود و در نتیجه از ویژگی‌های محافظتی که در نسخه‌های جدیدتر وجود دارد، بی‌بهره بود.

در نتیجه، مهاجم (یا آن‌طور که ابتدا به نظر می‌رسید) نسخه‌ای مشابه از کیف پول این کاربر را در شبکه Base – با تنظیمات مالکیتی متفاوت – نصب کرد و به‌محض اینکه انتقال انجام شد، آن فرد توانست اتریوم‌ها را تصاحب کند.

این کاربر در توییتی نوشت:

تمام پس‌انداز زندگی‌ام را فقط با یک کلیک از دست دادم. آن هم بعد از ۸ سال نگهداری ETH و دوری از هر نوع کلاهبرداری. باگ رابط کاربری در ابزار رسمی Bridge این تصور را ایجاد کرد که آدرس مقصد، کیف پول من در Base است – اما این‌طور نبود.

اتریوم
خرید و فروش آسان اتریوم در بیت‌پین
  • معامله بیش‌از ۳۰۰ کوین دیگر
  • دریافت وام و اعتبار معاملاتی
  • سرعت بالا در تکمیل سفارشات
  • بات‌های معامله‌گر متنوع
  • پشتیبانی ۲۴ ساعته
خرید اتریوم

سوءاستفاده از نسخه قدیمی

این توییت واکنش‌های زیادی را در جامعه کریپتو برانگیخت و توجه تیم Safe را جلب کرد. توسعه‌دهنده‌ای به نام Tschubotz.eth وارد عمل شد و متوجه شد که آدرس مقصد در شبکه Base در واقع توسط یک مهاجم ایجاد نشده، بلکه متعلق به شرکت Protofire است.

این شرکت، توسعه‌دهنده کلاه‌سفید (white-hat) است که برای جلوگیری از سوءاستفاده‌های احتمالی، صدها کیف پول Safe نسخه 1.1.1 را در شبکه Base مستقر کرده بود.

بنیانگذار Safe در این مورد گفت:

برخلاف حساب‌های عادی، کیف پول‌های هوشمند مثل Safe با کد قرارداد هوشمند مشخص کنترل می‌شوند. از نظر فنی ممکن است کسی بتواند همان کیف پول را با همان ساختار امضا، روی زنجیره‌های مختلف در یک آدرس مشابه مستقر کند. اما در این مورد، نسخه قدیمی کیف پول (1.1.1) اصلاً برای چندزنجیره‌ای طراحی نشده بود و این یعنی هرکسی می‌توانست در یک شبکه دیگر، با تنظیمات متفاوت، کیف‌پولی با همان آدرس مستقر کند.

بعد از تأیید هویت Khalo، شرکت Protofire بلافاصله تمام ۱۰۰ اتریوم را به او بازگرداند. این انتقال بعد از یک تراکنش آزمایشی با موفقیت انجام شد و مشکل پس از چند ساعت حل شد.

درسی برای آینده کیف پول‌های چندزنجیره‌ای

این حادثه نشان می‌دهد که چقدر ویژگی‌های محافظتی قوی‌تر برای کاربران در کیف پول‌های جدید ضروری است.

نسخه جدید Safe (نسخه 1.2.0) دارای مکانیزم‌های محافظتی است که مانع این نوع سوءاستفاده می‌شود، از جمله تغییر در نحوه محاسبه salt برای مستقرکردن قرارداد با CREATE2.

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

هرچند این اتفاق برای Khalo یک شوک بزرگ بود، اما داستان او با بازگرداندن دارایی‌ها به‌خوبی تمام شد.