1 روز پیش
زمان مطالعه : 8
آیا حملاتِ Coldcard یعنی همه کیفپولهای سختافزاری ناامن شدهاند؟
این اتفاق نشان نمیدهد همه کیفپولهای سختافزاری ناامن شدهاند؛ چون مشکل Coldcard یک نقصِ مشخص در پیادهسازیِ تولید آنتروپی بوده، نه شکستِ کلیِ بیتکوین یا رمزنگاری اصلی.
این نقصِ تولیدِ آنتروپی در Coldcard باعث یک بحرانِ اعتماد نسبت به کیفپولهای سختافزاری شد. در ادامه جزئیاتی را میبینید که قبل از اینکه لجر، ترزور یا Foundation را برای بیت کوین تان به کار بگیرید باید بدانید. همین که فکر کردید اوضاعِ روحی بازار کریپتو نمیتواند از این بدتر شود، این باگِ آنتروپی Coldcard میآید تا نشان دهد اشتباه میکردید.
کشف یک نقص در یکی از قدیمیترین کیفپولهای سختافزاریِ این صنعت که طی جمعه گذشته افشا شد، یادآوری است که هیچ جای کاملاً امنی برای نگهداری تمام بیتکوینتان وجود ندارد.
Coldcard روز ۳۱ ژوئیه نقصِ تولیدِ آنتروپی را که روی چندین مدل از Coldcard اثر میگذاشت افشا کرد. از آن زمان، پژوهشگرانِ Galaxy Digital میگویند مهاجمان توانستهاند در چندین حمله هماهنگ بیش از ۱,۵۹۶ بیتکوین به ارزش حداقل ۱۰۰ میلیون دلار بدزدند.
در این رابطه بخوانید : سی دیفای CeDeFi چیست؟
سازندگان کیفپولها حالا مجبور میشوند درباره فرایندی توضیح بدهند که اکثر کاربران حتی به آن فکر هم نمیکنند: کیفپول چگونه کلید خصوصی را تولید میکند تا بیتکوینتان را محافظت کند.
مایکل تانگوما، مدیر محصول در شرکت نگهداری بیتکوین Onramp Bitcoin، به Magazine میگوید:
مدلِ کامل بر پایهی این اعتماد است که فروشنده درست انجام داده باشد تقریباً هیچ فردی نمیتواند کل سختافزار، میانافزار (firmware) و تولید آنتروپیِ زیرِ دستگاهشان را بررسی کند.
شرکت Coinkite، سازندهی Coldcard، وصلههای میانافزار منتشر کرده و به کاربرانِ آسیبدیده گفته است وجوهشان را به کیفپولهای جدید منتقل کنند، اما این رخداد اعتمادِ هولدرهای بیتکوین را بههم زده است و یک سؤال ناراحتکننده ایجاد میکند:
اگر کیفپولهای Coldcard قابل سوءاستفاده باشند، آیا این یعنی همه کیفپولهای سختافزاری ناامن هستند؟
یک باگ پنهان در پایهها
آسیبپذیری Coldcard خودش بیتکوین را هک نکرد و الگوریتمهای رمزنگاریِ اصلی را هم نشکست؛ مشکل در تصادفیبودن بود. کیفپول بیتکوین برای ساخت کلیدهای خصوصی، از یک عبارت seed که از اعداد تصادفی ساخته میشود شروع میکند.
اگر این بخش تصادفی واقعاً تصادفی نباشد یا ضعیف شود، مهاجم میتواند احتمالهای ممکنِ کلیدها را کمتر کند. در نتیجه، شاید بتواند بعداً به یک کلید درست برسد (یا کار حدسزدن را خیلی آسانتر کند).
پس مشکل این بود که کیفپول بهجای تولید تصادفیِ کافی، تصادفیِ ضعیف تولید کرده بود و این همان پایهای است که امنیت کیفپول روی آن بنا شده است.
هر کیفپول بیتکوین با تولید یک عبارت seed از استخر دادههای تصادفی شروع میشود؛ یعنی تصادفیبودن باید آنقدر غیرقابل پیشبینی باشد که کلیدهای خصوصیِ حاصل اساساً قابل حدسزدن نباشند. آنتروپی یعنی میزان تصادفی بودن. اگر به هر دلیلی این تصادفیبودن ضعیف شود، مهاجمان میتوانند تعداد کلیدهای ممکنِ قابل تولید را کم کنند و در نهایت راهی پیدا کنند که آنها را بازتولید کنند.
Coinkite ابتدا در ۳۱ ژوئیه به کاربران هشدار داد کیفپولهایی که با میانافزار آسیبدیده ساخته شدهاند باید در معرض خطر در نظر گرفته شوند و به مشتریان گفت وجوه را به کیفپولهای جدید که با نسل جدید تولید شدهاند منتقل کنند. وقتی پژوهشگران طی روزهای بعد جزئیات بیشتری بررسی کردند، توجهشان سریع به این سمت رفت که چطور نقص در چنین بخش حیاتیای بیش از پنج سال از چشمها پنهان مانده است.
دوسین دیتمر، توسعهدهندهی Core Lightning، پیشنهاد داد شاید منشاء آن در تغییرات میانافزار در سال ۲۰۲۱ بوده باشد. او معتقد است کدی که قرار بوده با مولد شمارهتصادفی سختافزار ارتباط برقرار کند، غیرفعال شده و باعث شده تولید کلیدها به سراغ مولد شبهتصادفی ضعیفتر Yasmarang در MicroPython برود.
همچنین بخوانید : برنامه معاملاتی چیست؟ و یک برنامه معاملاتی خوب چه ویژگی هایی دارد؟
این نظریه به یکی از مطرحترین توضیحها درباره اینکه چطور این باگ وارد میانافزارِ تولید شده است تبدیل شده است، هرچند Coinkite تأیید نکرده که دقیقاً چنین اتفاقی رخ داده باشد و گفته است بهزودی یک postmortem فنی کامل منتشر میکند. سخنگوی Coinkite گفت:
برخی نسخههای میانافزار یک مسیر جایگزین (fallback) در تولید seed داشتند که میتوانست آنتروپیِ ضعیف تولید کند، وقتی همان آنتروپی روی میانافزارِ دستگاه خودِ دستگاه تولید میشد.
سخنگو میگوید دستگاههایی که کاربران آنتروپی خودشان را از طریق رولینگ تاس یا روشهای دستی مشابه تولید کرده بودند، تحت تأثیر همین مسیر جایگزینِ خاص نبودند.
تولید ضعیفِ اعداد تصادفی (RNG) چیز تازهای نیست، اما برخلاف بسیاری از دیگر حفرههای امنیتی، تشخیصش دشوار است.
جیمسون لوپ، کارشناس امنیت بیتکوین، اشاره کرد که آسیبپذیریهای RNG پیشتر روی فهرست بلندی از کیفپولها و کتابخانههای ارزهای کریپتو اثر گذاشتهاند؛ از کیفپول اندروید Blockchain.com تا Trust Wallet.

تولید ضعیفِ اعداد تصادفی یک مشکل جدید نیست. منبع: Jameson Lopp
ونسان بوژون، مدیر امنیت محصول در Ledger، به Magazine میگوید تصادفیبودنِ ضعیف اعداد از آزمونهای خروجی (output tests) عبور میکند یعنی مولدهای اعداد تصادفیِ بهخطر افتاده هنوز میتوانند مقادیری تولید کنند که تصادفی به نظر میرسند و همین باعث میشود تشخیص نقصها دشوار شود.
فرضهای متفاوت درباره تصادفیبودن در کیفپولهای مختلف
سازندگان کیفپول سختافزاری همنظرند که تولید آنتروپی امن چیزی نیست که بشود از آن گذشت، اما روشهای متفاوتی برای رسیدن به آن دارند.
فلسفهی Ledger بر سختافزار امنیتیِ اختصاصی تکیه دارد. بوژون میگوید دستگاههای Ledger seedها را با استفاده از یک مولد عدد تصادفیِ واقعی (true random number generator) که داخل یک Secure Element صدورگواهیشده تعبیه شده تولید میکنند. منبع آنتروپی تحت استاندارد AIS-31 PTG.2 گواهی میشود و Secure Element هم تحت گواهی Common Criteria قرار میگیرد. او میگوید:
این اتفاقِ Coldcard یک شکست در یک پیادهسازی بود، نه یک حکم علیه امنیت سلف کاستودی امن، تولیدِ آن آنتروپی باید به سختافزار امن متصل و لنگر شود.

تولید تصادفیبودنِ باکیفیت همان جایی است که کل ماجرا یا میمیرد یا زنده میماند. منبع: Charles Guillemet
از سوی دیگر، Trezor آنتروپیِ تولیدشده داخل دستگاه را با آنتروپیای که از کامپیوتر میزبان میآید ترکیب میکند، نه اینکه به یک منبع واحدِ آنتروپی تکیه کند و مدلهای جدیدتر نیز منابع سختافزاری اضافی را هم در خود دارند.
این شرکت همچنین چکهای آنتروپی را اضافه کرده تا تأیید کند دستگاه واقعاً در زمان ساخت کیفپول، تصادفیبودنِ غیرقابلپیشبینی تولید کرده است. توماش سوشانکا، مدیر ارشد فنی Trezor، به Magazine میگوید:
جمعبندی برای کل صنعت این است که تصادفیبودن نمیتواند به یک منبع واحد یا به یک خط کدِ درست بودنِ واحد وابسته باشد.
کیفپول Passport متعلق به Foundation هم به چندین منبع آنتروپی متکی است و همزمان روی شفافیت تأکید میکند. مدیرعامل زَک هربرت میگوید Passport ترکیبی از آنتروپی را که توسط اجزای سختافزاری جدا تولید شده، پیش از ساخت کیفپول کنار هم میگذارد.
میانافزار هم به شکل نرمافزار رایگان و متنباز منتشر میشود و builds قابلِ بازتولید دارد، تا پژوهشگران مستقل بتوانند بررسی کنند نرمافزاری که روی دستگاه اجرا میشود با کدی که منتشر شده مطابقت دارد. هربرت میگوید:
خودِ باگ مشخصِ Coldcard بود هشدار بزرگتر این است که این موضوع بیش از پنج سال دیده نشد، در حالی که مردم محصول را با مقدارهایی از پول که میتوانست زندگی را تغییر دهد به اعتماد سپرده بودند.
اعتماد، شفافیت و راستیآزمایی
شکاف واقعی بین Ledger، Trezor و Foundation نه درباره اهمیت آنتروپی، بلکه درباره این است که کاربران چطور مطمئن میشوند واقعاً دارد درست کار میکند.
Ledger استدلال میکند که گواهینامه مستقل قویترین تضمین است. Foundation روی توسعه متنباز، builds قابلِ بازتولید و پذیرش پژوهشگران بیرونی تکیه میکند و Trezor هم بین open firmware و چند لایه منبع آنتروپی ترکیب میکند تا مجبور نشود به هیچ جزء واحدی تکیه کند.
رویکرد Coinkite به افشای امنیتی هم زیر سؤال رفته؛ با اینکه چند توسعهدهندهی بیتکوین به خاطر پاسخهای گذشتهی شرکت به گزارشهای آسیبپذیری و نبود یک برنامهی سنتی bug bounty آن را نقد کردهاند.
هربرت میگوید پذیرش پژوهشگران بیرونی خودش بخشی از ساخت محصولات امن است، درست در کنار توسعه متنباز و ممیزیهای مستقل.
نیک پرکوکو، افسر امنیتی ارشد Kraken و پیشتر افسر امنیتی ارشد Uptake، حادثهی Coldcard را فرصتی برای صنعت میبیند تا استانداردهای قویتری را صرفنظر از فلسفه طراحی که سازندگان انتخاب میکنند اتخاذ کند.
شکستِ آنتروپی در Coldcard باید زنگ بیدارباش برای کل صنعت کیفپول سختافزاری باشد، او گفت و استدلال کرد که طرحهای گواهی امروز اغلب اجزای جداگانه را اعتبارسنجی میکنند، بدون اینکه تأیید کنند میانافزارِ تولیدی واقعاً از آنها درست و به شکل صحیح استفاده میکند.

شکست آنتروپی در Coldcard باید زنگ بیدارباش باشد. منبع: Nick Percoco
پرکوکو پیشنهاد داد یک استاندارد تضمینِ مخصوص صنعت لازم است که شامل اعتبارسنجی مستقل منابع آنتروپی، بررسی اینکه میانافزار فراخوانیِ مولد شماره تصادفیِ سختافزارِ موردنظر را انجام میدهد و همچنین گواهیای که به نسخههای مشخصِ سختافزار و میانافزار وصل باشد.
اما بحث فقط به پیادهسازی فنی محدود نمیشود؛ افرادی مثل هربرت میگویند توسعهی متنباز روی فرهنگ امنیت هم اثر میگذارد. او به bug bounty programها و تعامل سازنده با پژوهشگران مستقل بهعنوان بخشهای ضروریِ توسعه محصول امن اشاره میکند.
دارندگان بیتکوین الان چه کار باید بکنند؟
برای کاربران Coldcard، اولویت فوری این است که راهنمای مهاجرت Coinkite را دنبال کنند اگر فکر میکنند کیفپولهایشان با میانافزار آسیبدیده ساخته شدهاند.
در بلندمدت، دارندگان بیتکوین بهطور کلی باید این ماجرا را بهعنوان یک لحظهی یادگیری ببینند؛ متخصصانی مثل تانگوما هم روی این نیاز تأکید میکنند که از معماریهای طراحیای پرهیز شود که هر شکستِ تکنفرهای میتواند وجوه را به خطر بیندازد. او میگوید:
امروز به صورت واقعبینانه میخواهید مولتی سیگ و آنتروپیِ تولیدشده به شکل مستقل داشته باشید راهکاری که واقعاً مقیاسپذیر است، چیدمانی که در آن هیچ دستگاه، فروشنده یا نهادِ واحدی نتواند اشتباه کند و باعث از دست رفتن وجوه شود.
پس فعلاً پاسخ این است: نه؛ همه کیفپولهای سختافزاری ناامن نیستند.
حادثهی Coldcard یک شکست در یک پیادهسازی را افشا کرد، اما همچنین باعث شد سازندگان پرده را کنار بزنند و فرایندِ قلب خودحضانتی را نشان بدهند: تولید یک راز که هیچکس دیگری نتواند پیشبینیاش کند.
نتیجهگیری
این اتفاق نشان نمیدهد همه کیفپولهای سختافزاری ناامن شدهاند؛ چون مشکل Coldcard یک نقصِ مشخص در پیادهسازیِ تولید آنتروپی بوده، نه شکستِ کلیِ بیتکوین یا رمزنگاری اصلی.
با این حال، کل ماجرا یک هشدار جدی است: امنیت سلف کاستودی فقط به الگوریتمها وابسته نیست، بلکه به صحت فرایندهای داخلی مثل تولید تصادفی و اینکه میانافزار واقعاً از سختافزارِ امن استفاده میکند یا نه هم وابسته است.
اختلاف اصلی بین Ledger/Trezor/Foundation در این است که چطور کاربران بتوانند به تولید تصادفی اعتماد کنند: گواهیهای مستقل، متنباز بودن و builds قابلتکرار، یا چندمنبع آنتروپی و چکهای داخلی.
درس مهم برای دارندگان بیت کوین این است که در بلندمدت بهتر است معماریهایی داشته باشند که یک نقطه شکست کل دارایی را به خطر نیندازد؛ مثلاً مولتی سیگ و تولید مستقل آنتروپی. برای کاربران Coldcard هم طبق راهنمای مهاجرت Coinkite باید عمل شود؛ چون اگر کیفپول با میانافزار آسیبدیده ساخته شده باشد، ریسک وجود دارد.
خرید و فروش ارزهای دیجیتال از امروز شروع کنید
ممکن است علاقه مند باشید
ثبت دیدگاه
لیست نظرات (0)
انتخاب سردبیر
مفاهیم پایه
بیشتر بخوانید
























