▼ Bear
اثرگذاری
82 · زیاد
کارتهای سرد، پس از آسیبپذیریهای مربوط به کلیدهای خصوصی، نیازمند وارد کردن رمز عبور به تعداد 65 بار هستند... کاربران کیف پولهای قدیمی باید به کیف پولهای جدید منتقل شوند
BTC
CryptoSlate · 20h agoمشاهده منبع ↗
شرکت کوینکایت (Coinkite)، تولیدکننده کیف پولهای سختافزاری بیتکوین، در تاریخ 20 آگوست، نسخه جدیدی از نرمافزار اصلی (فریمور) دستگاه Coldcard را منتشر کرد. این بهروزرسانی، تمرکز اصلی خود را بر این گذاشته است که کاربر را ملزم کند تا در فرآیند تولید کلید، به طور مستقیم و با استفاده از روشهای تصادفی فیزیکی، اطلاعات را وارد کند. کاربران باید یکی از موارد زیر را به اجبار انجام دهند: وارد کردن حداقل 65 بار کلید با فواصل غیرقابل پیشبینی، پرتاب یک تاس 6 وجهی 50 بار، یا پرتاب یک سکه 128 بار. این اقدام، به منظور کاهش ریسک وابستگی کیف پول به مولد اعداد تصادفی (RNG) آن انجام شده است.
نسخههایی که تحت پوشش این توصیهها قرار میگیرند، بسیار متنوع هستند. برای مدلهای Mk2 و Mk3، این نسخهها شامل فریمورهای 4.0.1 تا 4.1.9 میشوند. برای مدلهای Mk4 و Mk5، این نسخهها شامل فریمورهای استاندارد پایینتر از 5.6.0 و همچنین فریمورهای Edge پایینتر از 6.6.0X هستند. برای دستگاههای Q، این نسخهها شامل فریمورهای استاندارد پایینتر از 1.5.0Q و همچنین فریمورهای Edge پایینتر از 6.6.0QX میشوند. تحلیلهای مستقل انجام شده توسط شرکت Block نشان دادهاند که این توصیهها باید دامنه گستردهتری داشته باشند و حتی نسخههای 4.0.0 مدلهای Mk2 و Mk3 را نیز شامل شوند. این تحلیلها هشدار میدهند که تنها تکیه بر استانداردهای ایمنی ارائه شده توسط سازنده، کافی نیست.
علت اصلی این آسیبپذیری، در کد پشتیبان (fallback) MicroPython نهفته است. طبق تحلیل Block، یک پرچم (flag) که به عنوان صفر تعریف شده بود، به اشتباه به عنوان "وجود داشتن" تلقی شد، که این امر باعث میشد درخواستهای تولید اعداد تصادفی به یک مکانیزم پشتیبان قطعی هدایت شوند. در نتیجه، در مواردی که بدون داشتن مقدار کافی از دادههای تصادفی خارجی، یک کلید (seed) تولید میشد، امنیت به شدت کاهش مییافت. استفاده از ورودی فیزیکی اجباری، با هدف محدود کردن خسارات است، حتی اگر تولید اعداد تصادفی دستگاه در آینده نیز با شکست مواجه شود، اما این روش قابل اعمال بر کلیدهایی است که قبلاً تولید شدهاند.
این بهروزرسانی، علاوه بر تولید کلید، شامل موارد امنیتی متعددی نیز میشود. این نسخه، بررسیهای USB را به چکسامهای مرحلهای PSBT مرتبط میکند، بایتهای تراکنش را قبل از امضا مجدداً بررسی میکند و حالت SIGHASH_SINGLE را به صورت پیشفرض غیرفعال میکند. همچنین، دانلود از طریق USB به نتایج رمزگذاریشده فعلی محدود شده است، و قابلیتهایی مانند بررسی طول فایلهای Firmware، توقف مشکلات مداوم RNG و بررسی اتصال سختافزاری RNG در هنگام بوت شدن نیز به آن اضافه شده است.
انتقال (مهاجرت) اجباری، یک استثنا دارد. کاربرانی که در حال استفاده از یک فریمور آسیبپذیر بودند و تاسها را به صورت منصفانه، مستقل و در شرایط محرمانه بیش از 50 بار پرتاب کردهاند، از این انتقال معاف میشوند. با این حال، در صورتی که تعداد دفعات پرتاب کافی نباشد یا کاربر از رعایت شرایط اطمینان نداشته باشد، باید یک کلید جدید ایجاد کرده و وجوه خود را منتقل کند. راهنمای رسمی CoinKite، مراحل زیر را برای ایجاد یک کلید جدید، پشتیبانگیری و بررسی اثر انگشت کیف پول، تأیید آدرس دریافت از طریق دستگاه، انتقال یک مبلغ کم به عنوان تست، و در نهایت انتقال کل موجودی، توصیه میکند. کپیبرداری یا بازیابی کیف پول، به عنوان ایجاد یک کلید جدید تلقی نمیشود.
شرکت CoinKite اعلام کرد که برخی از مشتریان متحمل خسارات جدی شدهاند و مقامات قضایی در حال بررسی این موضوع هستند. با این حال، این شرکت تعداد دقیق آسیبدیدگان و میزان کل خسارات را اعلام نکرده است. همچنین، این شرکت تاکید کرد که بررسیهای فعلی که شامل بررسی کد، آزمایش مسیر تصادفی دستگاههای فیزیکی، و ردیابی مسیرهای قابل تکرار هستند، یک بررسی کامل از کل نرمافزار اصلاحشده محسوب نمیشوند.
محتوای خلاصهشده با هوش مصنوعی. مقاله کامل را در منبع بخوانید.