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

اما یک سؤال مهم وجود دارد که کمتر کسی هنگام راه‌اندازی کیف پول به آن فکر می‌کند:

از کجا معلوم کلماتی که دستگاه برای بازیابی کیف پول تولید کرده، واقعاً تصادفی هستند؟

فرض کنید تمام نکات امنیتی را رعایت کرده‌اید. عبارت بازیابی را روی کاغذ نوشته‌اید، هیچ تصویری از آن نگرفته‌اید، به هیچ وب‌سایتی متصل نشده‌اید و حتی کیف پولتان را به اینترنت وصل نکرده‌اید.

بااین‌حال، یک روز متوجه می‌شوید بیت‌کوین‌های شما به آدرس ناشناسی منتقل شده‌اند.

در چنین شرایطی، طبیعی است به دنبال بدافزار، دسترسی غیرمجاز یا حمله فیشینگ بگردید. اما در حادثه امنیتی Coldcard در تابستان ۲۰۲۶، مشکل در نقطه‌ای بسیار بنیادی‌تر قرار داشت: فرآیند ساخت عبارت بازیابی.

نقصی در Firmware بعضی دستگاه‌های Coldcard باعث شده بود کلماتی که باید با استفاده از اعداد تصادفی و غیرقابل پیش‌بینی تولید می‌شدند، از میزان تصادفی‌بودن کافی برخوردار نباشند.

مهاجمان توانستند از این ضعف برای بازسازی کلیدهای خصوصی و انتقال غیرمجاز بیت‌کوین استفاده کنند؛ بدون اینکه لزوماً به خود دستگاه دسترسی فیزیکی داشته باشند.

شرکت Ledger در ۲ اوت ۲۰۲۶ گزارشی تحلیلی از این حادثه منتشر کرد. چارلز گیومه، مدیر ارشد فناوری لجر، در این گزارش توضیح داد که چرا کیفیت تولید اعداد تصادفی یکی از بنیادی‌ترین بخش‌های امنیت ارزهای دیجیتال است.

در ادامه، ماجرای هک Coldcard، جزئیات آسیب‌پذیری، نقش تولیدکننده اعداد تصادفی یا RNG، مدل‌های تحت تأثیر و مهم‌ترین درس‌های امنیتی این حادثه را بررسی می‌کنیم.

 

هک کیف پول Coldcard در سال ۲۰۲۶؛ چگونه ضعف در تولید عبارت بازیابی باعث سرقت بیت‌کوین شد؟

ماجرای هک Coldcard در سال ۲۰۲۶ چه بود؟

Coldcard یکی از کیف پول‌های سخت‌افزاری تخصصی بیت‌کوین است که توسط شرکت Coinkite توسعه داده می‌شود.

این برند در میان کاربران حرفه‌ای بیت‌کوین شناخته شده است؛ به‌ویژه افرادی که به نگهداری بلندمدت دارایی، امضای آفلاین تراکنش‌ها و مدیریت مستقل کلیدهای خصوصی اهمیت می‌دهند.

برخی مدل‌های Coldcard قابلیت‌هایی مانند استفاده از کارت حافظه microSD، ارتباط QR، تراکنش‌های PSBT و روش‌های پیشرفته پشتیبان‌گیری دارند.

چنین ویژگی‌هایی باعث شده‌اند این دستگاه‌ها نزد بخشی از جامعه بیت‌کوین به‌عنوان ابزارهای حرفه‌ای نگهداری دارایی شناخته شوند.

بااین‌حال، در ۳۱ ژوئیه ۲۰۲۶، شرکت Coinkite درباره نقصی امنیتی در فرآیند تولید عبارت بازیابی اطلاعیه منتشر کرد.

مشکل به بعضی نسخه‌های Firmware مربوط بود که هنگام ایجاد Seed جدید، به‌جای استفاده صحیح از منبع تصادفی سخت‌افزاری، از مسیر نرم‌افزاری نامناسبی استفاده می‌کردند.

نتیجه آن بود که بعضی عبارات بازیابی، برخلاف انتظار کاربران، از نظر رمزنگاری به‌اندازه کافی غیرقابل پیش‌بینی نبودند.

گزارش‌های منتشرشده در روزهای بعد نشان دادند مهاجمان از این نقص سوءاستفاده کرده و مقادیر قابل‌توجهی بیت‌کوین را از کیف پول‌های آسیب‌پذیر خارج کرده‌اند.

این حادثه از آن جهت اهمیت داشت که بسیاری از قربانیان، ظاهراً اصول متداول امنیتی را رعایت کرده بودند.

آن‌ها ممکن بود عبارت بازیابی خود را کاملاً آفلاین نگهداری کرده باشند، اما ضعف از همان لحظه تولید عبارت وجود داشت.

چگونه یک کیف پول آفلاین بدون اتصال به اینترنت هک شد؟

این پرسش، مهم‌ترین بخش ماجراست.

بسیاری از کاربران تصور می‌کنند اگر کیف پولشان هرگز به اینترنت متصل نشود، امکان سرقت دارایی از طریق حمله راه دور وجود ندارد.

واقعیت کمی پیچیده‌تر است.

بیت‌کوین روی دستگاه سخت‌افزاری ذخیره نمی‌شود. موجودی و تراکنش‌ها در شبکه بلاکچین ثبت می‌شوند و کیف پول، کلیدهای لازم برای کنترل آن دارایی‌ها را مدیریت می‌کند.

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

در حالت عادی، حدس‌زدن کلید خصوصی که به‌درستی و با تصادفی‌بودن کافی تولید شده، از نظر محاسباتی غیرعملی است.

اما اگر فرآیند تولید کلید دچار ضعف شود، شرایط تغییر می‌کند.

مشکل اصلی، قابل پیش‌بینی شدن کلیدها بود

در حادثه Coldcard، مهاجم لازم نبود مستقیماً به دستگاه قربانی نفوذ کند.

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

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

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

به بیان ساده، مهاجم قفل دستگاه را باز نکرده بود؛ بلکه از ایراد موجود در فرآیند ساخت کلید استفاده کرده بود.

همین موضوع باعث می‌شود این حادثه با روش‌هایی مانند فیشینگ، بدافزار یا سرقت فیزیکی دستگاه تفاوت اساسی داشته باشد.

 

هک کیف پول Coldcard در سال ۲۰۲۶؛ چگونه ضعف در تولید عبارت بازیابی باعث سرقت بیت‌کوین شد؟

عبارت بازیابی یا Seed Phrase چگونه ساخته می‌شود؟

هنگام راه‌اندازی بسیاری از کیف پول‌های ارز دیجیتال، مجموعه‌ای از ۱۲ یا ۲۴ کلمه نمایش داده می‌شود.

این کلمات را معمولاً با عنوان Seed Phrase، Recovery Phrase یا عبارت بازیابی می‌شناسیم.

کاربرد عبارت بازیابی این است که اگر دستگاه خراب یا گم شد، بتوان کلیدها و حساب‌های مربوط را دوباره ایجاد کرد.

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

در استاندارد رایج BIP-39، ابتدا مقداری داده تصادفی با طول مشخص تولید می‌شود. سپس با افزودن اطلاعات کنترلی و تبدیل داده به گروه‌های بیت، کلمات متناظر از فهرست استاندارد انتخاب می‌شوند.

در واقع، آنچه امنیت عبارت بازیابی را تعیین می‌کند، کیفیت داده تصادفی اولیه است.

آنتروپی (Entropy) چیست؟

آنتروپی در رمزنگاری معیاری برای بیان میزان عدم قطعیت و غیرقابل پیش‌بینی بودن اطلاعات است.

برای مثال، فرض کنید یک عدد از میان چهار مقدار ممکن انتخاب شود.

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

در تولید عبارت بازیابی نیز موضوع مشابه است.

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

یک عبارت بازیابی ۲۴ کلمه‌ای BIP-39 معمولاً براساس ۲۵۶ بیت آنتروپی ساخته می‌شود.

این یعنی اگر داده اولیه واقعاً با کیفیت مناسب تولید شده باشد، تعداد حالت‌های ممکن برابر با ۲ به توان ۲۵۶ است.

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

اما اگر مولد تصادفی به‌درستی کار نکند، داشتن ۲۴ کلمه لزوماً به معنای برخورداری از ۲۵۶ بیت امنیت واقعی نخواهد بود.

ممکن است عبارت نهایی کاملاً طبیعی به نظر برسد، درحالی‌که تعداد حالت‌هایی که واقعاً امکان تولیدشان وجود داشته، بسیار کمتر از مقدار مورد انتظار باشد.

چرا تعداد کلمات بازیابی به‌تنهایی امنیت را تضمین نمی‌کند؟

بسیاری از کاربران تصور می‌کنند عبارت بازیابی ۲۴ کلمه‌ای همیشه و تحت هر شرایطی امن‌تر از عبارت ۱۲ کلمه‌ای است.

در یک پیاده‌سازی صحیح، عبارت ۲۴ کلمه‌ای می‌تواند سطح آنتروپی بالاتری ارائه دهد.

اما امنیت واقعی صرفاً به تعداد کلمات وابسته نیست.

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

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

کاربر هیچ تفاوت ظاهری مشاهده نمی‌کند.

عبارت بازیابی روی صفحه ظاهر می‌شود، دستگاه آن را می‌پذیرد و کیف پول نیز به‌درستی آدرس تولید می‌کند.

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

پس امنیت عبارت بازیابی به دو موضوع وابسته است: طول مناسب داده تصادفی و کیفیت واقعی تولید آن.

این همان تفاوتی است که در حادثه Coldcard اهمیت پیدا کرد.

نقص فنی Coldcard دقیقاً چه بود؟

براساس گزارش فنی لجر و تحلیل‌های مستقل، منشأ حادثه به یک اشتباه در مسیر انتخاب مولد اعداد تصادفی در Firmware مربوط می‌شد.

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

اما تغییراتی در ساختار نرم‌افزار باعث شده بود در بعضی نسخه‌ها مسیر دیگری فعال شود.

به‌جای استفاده از خروجی مناسب سخت‌افزار، فرآیند به مولد نرم‌افزاری جایگزین متکی می‌شد.

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

تفاوت وجود داشتن یک تنظیم با فعال بودن آن

یکی از نکات فنی مهم این پرونده، اشتباه در بررسی یک گزینه پیکربندی بود.

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

اما تعریف‌شدن یک گزینه به این معنی نیست که مقدار آن فعال است.

ممکن است گزینه در فایل تنظیمات وجود داشته باشد، ولی مقدار آن نشان دهد که نباید استفاده شود.

اگر کد میان این دو وضعیت تفاوت نگذارد، ممکن است مسیر اجرایی اشتباهی انتخاب شود.

در Coldcard، چنین خطایی باعث شد فرآیند تولید عبارت بازیابی به مسیر نرم‌افزاری نامناسب منتقل شود.

این اشتباه ظاهراً کوچک، پیامد امنیتی بسیار بزرگی داشت.

چرا مولد جایگزین مشکل‌ساز شد؟

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

چنین مولدی الزاماً ناامن نیست.

بسیاری از سامانه‌های رمزنگاری از مولدهای شبه‌تصادفی امن استفاده می‌کنند.

مسئله این است که مولد باید به‌درستی طراحی و با داده‌ای دارای آنتروپی کافی مقداردهی اولیه شود.

در حادثه Coldcard، مسیر جایگزین به اطلاعاتی مانند شناسه سخت‌افزاری و زمان‌بندی دستگاه وابسته بود.

این اطلاعات، منبع مطمئنی برای تولید عبارت بازیابی با سطح امنیت مورد انتظار نبودند.

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

گزارش‌های فنی درباره میزان دقیق آنتروپی باقی‌مانده برای نسل‌های مختلف دستگاه، برآوردهای یکسانی ارائه نکرده‌اند؛ اما همگی بر کاهش شدید فضای احتمالات و امکان حمله عملی به کلیدها تأکید دارند.

 

هک کیف پول Coldcard در سال ۲۰۲۶؛ چگونه ضعف در تولید عبارت بازیابی باعث سرقت بیت‌کوین شد؟

 

تفاوت RNG، PRNG و TRNG چیست؟

برای درک اهمیت حادثه Coldcard، باید سه اصطلاح فنی را بشناسیم.

RNG؛ مولد اعداد تصادفی

RNG مخفف Random Number Generator است.

این اصطلاح به‌صورت کلی به سازوکاری اشاره می‌کند که اعداد تصادفی یا شبه‌تصادفی تولید می‌کند.

در کاربردهای امنیتی، مهم است که خروجی برای مهاجم غیرقابل پیش‌بینی باشد.

PRNG؛ مولد شبه‌تصادفی

PRNG مخفف Pseudo-Random Number Generator است.

این مولد با استفاده از یک الگوریتم و یک وضعیت اولیه، دنباله‌ای از اعداد تولید می‌کند.

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

البته PRNGهای رمزنگاری امن یا CSPRNG، اگر به‌درستی طراحی و مقداردهی اولیه شوند، ابزارهایی معتبر و پرکاربرد در امنیت اطلاعات هستند.

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

TRNG؛ مولد تصادفی واقعی

TRNG مخفف True Random Number Generator است.

این نوع مولد از پدیده‌های فیزیکی برای تولید داده تصادفی استفاده می‌کند.

برای مثال، بعضی تراشه‌ها از نویز الکترونیکی یا رفتارهای فیزیکی غیرقابل پیش‌بینی بهره می‌برند.

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

صرف وجود یک قطعه با عنوان TRNG روی برد، تضمین نمی‌کند نرم‌افزار دستگاه واقعاً از آن استفاده کرده یا خروجی آن همیشه کیفیت مناسب داشته است.

این موضوع، یکی از درس‌های اصلی حادثه Coldcard است.

آیا فقط کیف پول Coldcard Mk3 آسیب‌پذیر بود؟

خیر.

در گزارش اولیه لجر توجه زیادی به Coldcard Mk3 شده بود، اما اطلاعیه‌های بعدی سازنده نشان دادند موضوع به این مدل محدود نیست.

شرکت Coldcard دامنه نسخه‌های نیازمند بررسی را برای چند نسل از دستگاه‌ها مشخص کرده است.

براساس اطلاعات امنیتی رسمی که تا اکتبر ۲۰۲۶ به‌روزرسانی شده‌اند، نسخه‌های اصلاح‌شده به شرح زیر هستند:

مدل Coldcard حداقل نسخه اصلاح‌شده Firmware
Mk2 و Mk3 4.2.0
Mk4 و Mk5 5.6.0
Q 1.5.0Q
Mk4/Mk5 Edge 6.6.0X
Q Edge 6.6.0QX

برای نسخه‌های استاندارد Mk4 و Mk5، نسخه 5.6.3 و برای Coldcard Q، نسخه 1.5.3Q تا آخرین اطلاعات رسمی بررسی‌شده از نسخه‌های توصیه‌شده هستند.

نکته مهم این است که این جدول فقط حداقل نسخه‌های اصلاح‌شده را نشان می‌دهد.

اگر عبارت بازیابی شما در گذشته با Firmware آسیب‌پذیر تولید شده باشد، نصب نسخه جدید به‌تنهایی آن عبارت را امن نمی‌کند.

همچنین برای تعیین اینکه یک عبارت بازیابی خاص در معرض خطر بوده یا خیر، باید نسخه مورد استفاده در زمان ایجاد همان عبارت بررسی شود، نه صرفاً نسخه‌ای که امروز روی دستگاه نصب است.

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

آیا به‌روزرسانی Firmware می‌تواند مشکل را برطرف کند؟

پاسخ به این سؤال دو بخش دارد.

به‌روزرسانی می‌تواند نقص نرم‌افزاری مربوط به ساخت عبارت‌های بازیابی جدید را برطرف کند.

اما عبارتی که قبلاً با مولد آسیب‌پذیر تولید شده، همچنان همان عبارت قبلی است.

فرض کنید یک کیف پول با استفاده از داده تصادفی ضعیف ساخته شده باشد.

پس از مدتی، شرکت سازنده نسخه اصلاح‌شده Firmware را منتشر می‌کند و شما دستگاه را به‌روزرسانی می‌کنید.

از این لحظه، نرم‌افزار دستگاه ممکن است بتواند عبارت‌های جدید را به‌درستی تولید کند.

ولی کلیدهای خصوصی مربوط به حساب قبلی تغییر نکرده‌اند.

اگر مهاجم پیش از این توانایی بازسازی آن کلیدها را داشته، به‌روزرسانی دستگاه لزوماً این توانایی را از او نمی‌گیرد.

تفاوت به‌روزرسانی دستگاه با مهاجرت دارایی

برای برطرف‌کردن خطر یک عبارت بازیابی آسیب‌پذیر، معمولاً لازم است کیف پول جدیدی با داده تصادفی سالم ساخته شود.

سپس دارایی‌های باقی‌مانده از حساب قدیمی به آدرس‌هایی منتقل شوند که با عبارت جدید کنترل می‌شوند.

این فرآیند را می‌توان مهاجرت کیف پول یا Seed Migration نامید.

تغییر PIN، نصب Firmware جدید یا حتی انتقال همان عبارت بازیابی به دستگاه دیگر، عبارت قبلی را از نظر رمزنگاری اصلاح نمی‌کند.

شرکت Coldcard نیز در راهنمای رسمی خود دقیقاً بر همین موضوع تأکید کرده است.

راهنمای اقدامات ضروری برای دارندگان Coldcard

اگر از دستگاه Coldcard استفاده می‌کنید، مهم‌ترین کار این است که وضعیت عبارت بازیابی و Firmware زمان ایجاد آن را مشخص کنید.

مرحله اول: مدل دستگاه را شناسایی کنید

مشخص کنید دستگاه شما Mk2، Mk3، Mk4، Mk5، Q یا یکی از نسخه‌های Edge است.

دامنه نسخه‌های تحت تأثیر برای هر مدل یکسان نیست.

مرحله دوم: نسخه Firmware زمان ساخت کیف پول را بررسی کنید

فقط مشاهده نسخه فعلی کافی نیست.

باید تا حد امکان مشخص کنید عبارت بازیابی فعلی در چه زمانی و با کدام Firmware تولید شده است.

اگر از نسخه استفاده‌شده اطمینان ندارید، نباید صرفاً به جدیدبودن دستگاه نتیجه بگیرید که Seed امن است.

مرحله سوم: اطلاعیه رسمی را بررسی کنید

به صفحه امنیتی Coldcard مراجعه کنید.

در این صفحه، وضعیت نسخه‌ها، استثناهای مربوط به استفاده از تاس فیزیکی و راهنمای مهاجرت توضیح داده شده است.

مرحله چهارم: در صورت مشمول‌بودن، عبارت بازیابی جدید بسازید

اگر عبارت فعلی در دامنه آسیب‌پذیر قرار دارد، باید طبق دستورالعمل رسمی از مسیر امن برای تولید عبارت جدید استفاده کنید.

اطمینان حاصل کنید نسخه اصلاح‌شده و معتبر Firmware نصب شده است.

همچنین باید نسخه پشتیبان جدید را به‌شکل مناسب نگهداری کنید.

مرحله پنجم: دارایی‌ها را به حساب جدید منتقل کنید

پس از آماده‌سازی کیف پول جدید و بررسی درست‌بودن آدرس‌ها، دارایی‌های باقی‌مانده باید مطابق راهنمای سازنده به حساب‌هایی تحت کنترل Seed جدید منتقل شوند.

اگر احتمال سوءاستفاده فعال از عبارت قبلی وجود دارد، موضوع فوریت پیدا می‌کند.

در مبالغ قابل‌توجه یا ساختارهای پیچیده مانند Multisig، بهتر است پیش از اقدام از راهنمای تخصصی معتبر استفاده شود.

مرحله ششم: Seed قبلی را دوباره استفاده نکنید

اگر عبارت بازیابی قدیمی مشمول آسیب‌پذیری بوده، واردکردن همان عبارت در دستگاه دیگر مشکل را حل نمی‌کند.

مسئله، کیفیت داده‌ای است که کلیدها از آن ایجاد شده‌اند؛ نه فقط دستگاهی که آن‌ها را نگهداری می‌کند.

آیا تولید عبارت بازیابی با تاس فیزیکی می‌توانست جلوی حمله را بگیرد؟

برخی کیف پول‌های تخصصی بیت‌کوین امکان واردکردن آنتروپی از منابع فیزیکی مانند تاس را فراهم می‌کنند.

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

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

در حادثه Coldcard نیز سازنده برای بعضی کاربران که از روش مشخصی با تعداد کافی پرتاب مستقل تاس استفاده کرده بودند، استثنایی در ارزیابی خطر در نظر گرفته است.

طبق اطلاعیه رسمی، دست‌کم ۵۰ پرتاب مستقل، منصفانه و محرمانه تاس شش‌وجهی در مسیر تعیین‌شده می‌تواند بیش از ۱۲۸ بیت آنتروپی اضافه فراهم کند.

اما این موضوع چند شرط مهم دارد.

اول اینکه تاس باید واقعاً منصفانه باشد و نتایج آن قابل پیش‌بینی نباشد.

دوم اینکه ترتیب نتایج نباید در اختیار دیگران قرار گرفته باشد.

سوم اینکه فرآیند مورد استفاده باید مطابق روش مستند و امن دستگاه باشد.

به همین دلیل، نمی‌توان به هر کاربری که چند بار تاس انداخته توصیه کرد عبارت بازیابی قدیمی خود را بدون بررسی، امن فرض کند.

آیا کاربران باید خودشان عبارت بازیابی بسازند؟

خیر؛ چنین نتیجه‌ای از این حادثه به دست نمی‌آید.

ساخت دستی عبارت بازیابی بدون شناخت دقیق استانداردهای رمزنگاری می‌تواند خطرناک باشد.

انتخاب کلمات براساس حافظه، الگوهای شخصی، تاریخ تولد یا ترتیب دلخواه، جایگزین یک مولد تصادفی امن نیست.

حتی روش‌های فیزیکی نیز باید با ابزارها و فرآیندهای معتبر اجرا شوند.

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

آیا استفاده از Passphrase می‌توانست از دارایی‌ها محافظت کند؟

در استاندارد BIP-39 می‌توان علاوه بر عبارت بازیابی، از یک Passphrase مستقل استفاده کرد.

این عبارت اضافی با عبارت بازیابی ترکیب می‌شود و به ساخت کیف پول متفاوتی منجر می‌شود.

اگر مهاجم فقط Seed اصلی را به دست آورده باشد، اما Passphrase قوی و مستقل را نداند، ممکن است نتواند حساب محافظت‌شده با آن را بازسازی کند.

اما یک نکته بسیار مهم وجود دارد:

Passphrase قوی، نقص موجود در تولید Seed اولیه را اصلاح نمی‌کند.

این قابلیت می‌تواند لایه‌ای دفاعی ایجاد کند، ولی نباید آن را جایگزین مهاجرت از عبارت آسیب‌پذیر دانست.

خود شرکت Coldcard نیز در اطلاعیه امنیتی‌اش توصیه کرده کاربران دارای Seed آسیب‌پذیر، حتی در صورت استفاده از Passphrase مناسب، موضوع مهاجرت را جدی بگیرند.

از سوی دیگر، اگر Passphrase فراموش شود، ممکن است بازیابی دارایی برای مالک واقعی نیز غیرممکن شود.

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

لجر درباره حادثه Coldcard چه گفت؟

در ۲ اوت ۲۰۲۶، چارلز گیومه، مدیر ارشد فناوری Ledger، مقاله‌ای درباره این حادثه منتشر کرد.

محور اصلی تحلیل او این بود که امنیت رمزنگاری از تولید داده‌های تصادفی باکیفیت آغاز می‌شود.

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

لجر در این گزارش توضیح داد که معماری تولید عبارت بازیابی در دستگاه‌های این شرکت با استفاده از تراشه امنیتی Secure Element و مولد تصادفی سخت‌افزاری انجام می‌شود.

طبق توضیحات لجر، خروجی منبع فیزیکی پس از پردازش رمزنگاری در Ledger OS برای تولید داده موردنیاز استفاده می‌شود.

این شرکت همچنین به ارزیابی‌هایی مانند AIS-31، گواهی‌های Common Criteria و بررسی‌های امنیتی مرتبط با محصولات خود اشاره کرد.

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

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

نقش Ledger Donjon در کشف آسیب‌پذیری‌های مشابه

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

در گزارش لجر به یک حادثه مشابه در افزونه مرورگر Trust Wallet اشاره شده است.

طبق توضیحات این شرکت، پژوهشگران Ledger Donjon در اواخر سال ۲۰۲۲ ضعفی در تولید عبارت بازیابی Trust Wallet شناسایی کردند.

این نقص می‌توانست باعث شود کلیدهای بعضی کیف پول‌ها از فضای بسیار محدودی قابل بازسازی باشند.

پس از گزارش مسئولانه آسیب‌پذیری، به تیم Trust Wallet فرصت داده شد مشکل را اصلاح کند و کاربران در معرض خطر را برای انتقال دارایی راهنمایی کند.

این پرونده نشان می‌دهد ضعف در تولید کلید، تنها محدود به کیف پول‌های سخت‌افزاری نیست و در نرم‌افزارهای کیف پول نیز ممکن است رخ دهد.

چرا کیف پول ایرگپ هم می‌تواند آسیب‌پذیر باشد؟

یکی از برداشت‌های اشتباه پس از حادثه Coldcard این است که اگر دستگاهی کاملاً آفلاین باشد، دیگر نمی‌تواند از نظر امنیتی مشکلی داشته باشد.

ایرگپ یا Air Gap به جداسازی مسیر ارتباطی دستگاه از شبکه اشاره دارد.

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

چنین معماری‌ای می‌تواند برخی مسیرهای حمله از راه دور را محدود کند.

اما تولید عبارت بازیابی یک موضوع متفاوت است.

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

در حادثه Coldcard، مهاجم می‌توانست خارج از دستگاه و با استفاده از اطلاعات عمومی بلاکچین، کلیدهای احتمالی را بررسی کند.

بنابراین برای ارزیابی امنیت یک کیف پول سخت‌افزاری باید چند موضوع را جداگانه در نظر گرفت: امنیت تولید کلید، نگهداری کلید، فرآیند امضای تراکنش، ارتباطات دستگاه و کیفیت Firmware.

اگر می‌خواهید با مفهوم جداسازی ارتباطی بیشتر آشنا شوید، مقاله کیف پول ایرگپ چیست و امضای Air-Gapped چگونه کار می‌کند؟ را در تهران ولت مطالعه کنید.

آیا متن‌باز بودن Firmware به‌تنهایی امنیت کیف پول را تضمین می‌کند؟

یکی از بحث‌های مهم پس از این حادثه، رابطه متن‌باز بودن و امنیت نرم‌افزار بود.

بخشی از کدهای مرتبط با Coldcard به‌صورت عمومی در دسترس قرار داشتند و نقص مورد بحث نیز برای مدتی طولانی در مسیر توسعه نرم‌افزار باقی مانده بود.

این موضوع نشان می‌دهد دسترسی عمومی به کد، به‌تنهایی به معنای بررسی کامل آن نیست.

متن‌باز بودن مزایای مهمی دارد.

پژوهشگران مستقل می‌توانند کد را بررسی کنند، درباره رفتار برنامه سؤال بپرسند و مشکلات را گزارش دهند.

اما صرف انتشار کد تضمین نمی‌کند کسی آن را با دقت کافی بررسی کرده است.

از سوی دیگر، بسته‌بودن کد نیز به‌خودی‌خود اثبات امنیت بیشتر نیست.

در هر دو حالت، کیفیت طراحی، آزمون‌های امنیتی، بررسی‌های مستقل و فرآیند پاسخ‌گویی به آسیب‌پذیری اهمیت دارند.

در حادثه Coldcard، نکته تعیین‌کننده این بود که یک خطای ظریف در پیکربندی و اتصال اجزای نرم‌افزار، در خروجی نهایی تأثیر امنیتی شدیدی ایجاد کرده بود.

بنابراین بررسی امنیت باید فراتر از خواندن کد باشد و رفتار واقعی Firmware منتشرشده روی دستگاه را نیز پوشش دهد.

نقش هوش مصنوعی در کشف آسیب‌پذیری Coldcard چه بود؟

در تحلیل لجر، به احتمال استفاده مهاجمان از ابزارهای هوش مصنوعی برای یافتن ضعف‌های نرم‌افزاری نیز اشاره شده است.

مدل‌های زبانی و ابزارهای تحلیل کد می‌توانند به پژوهشگران کمک کنند حجم زیادی از کد را بررسی کنند، مسیرهای اجرایی مشکوک را پیدا کنند و درباره اشکالات احتمالی سؤال بپرسند.

چنین ابزارهایی ممکن است زمان لازم برای یافتن بعضی آسیب‌پذیری‌ها را کاهش دهند.

اما درباره این حادثه مشخص، نباید استفاده مهاجمان از هوش مصنوعی را یک واقعیت قطعی و اثبات‌شده معرفی کرد.

آنچه با اطمینان بیشتری می‌دانیم، وجود نقص در فرآیند تولید Seed و سوءاستفاده عملی از آن است.

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

تفاوت حادثه Coldcard با هک لجر ۲۰۲۶ چیست؟

در سال ۲۰۲۶ دو حادثه مهم مرتبط با کیف پول‌های سخت‌افزاری مورد توجه قرار گرفتند.

یکی از آن‌ها نقص تولید عبارت بازیابی Coldcard بود.

حادثه دیگر به دستکاری فیزیکی برخی دستگاه‌های اصلی لجر در مسیر توزیع مربوط می‌شد.

اگرچه هر دو حادثه می‌توانند به سرقت دارایی منجر شوند، اما سازوکار آن‌ها یکسان نیست.

ویژگی حادثه Coldcard حمله سخت‌افزاری به لجر
نوع آسیب‌پذیری ضعف تولید عبارت بازیابی دستکاری فیزیکی دستگاه
نقطه آغاز حمله Firmware و RNG زنجیره توزیع
نیاز به دسترسی فیزیکی به دستگاه قربانی برای بهره‌برداری نهایی الزامی نبود در مرحله دستکاری دستگاه ضروری بود
هدف مهاجم بازسازی کلیدهای قابل حدس دستیابی به اطلاعات بازیابی
راهکار اصلی ساخت Seed جدید با Firmware اصلاح‌شده و انتقال دارایی توقف استفاده از دستگاه مشکوک و بررسی امکان افشای Seed
درس اصلی کیفیت تولید کلید حیاتی است اصالت و سلامت مسیر تأمین حیاتی است

این مقایسه نشان می‌دهد امنیت کیف پول سخت‌افزاری تنها با یک ویژگی تعیین نمی‌شود.

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

برای آشنایی با پرونده دوم، مقاله هک لجر ۲۰۲۶؛ ماجرای CryptoBilis و اطلاعیه رسمی تهران ولت را مطالعه کنید.

هنگام خرید کیف پول سخت‌افزاری به چه نکاتی توجه کنیم؟

پس از حادثه Coldcard، شاید این سؤال پیش بیاید که چگونه می‌توان دستگاهی با امنیت قابل‌اعتماد انتخاب کرد.

هیچ محصولی را نمی‌توان صرفاً براساس یک ویژگی کاملاً امن دانست.

وجود Secure Element، متن‌باز بودن، ارتباط ایرگپ یا استفاده از یک برند شناخته‌شده، هرکدام بخشی از تصویر امنیتی هستند.

برای انتخاب دستگاه مناسب، چند عامل اهمیت دارد.

معماری تولید کلید

بررسی کنید سازنده درباره تولید عبارت بازیابی چه اطلاعاتی ارائه کرده است.

وجود مستندات درباره RNG، منابع آنتروپی و آزمون‌های امنیتی می‌تواند در ارزیابی محصول کمک‌کننده باشد.

کیفیت Firmware و به‌روزرسانی‌ها

دستگاهی که از نظر سخت‌افزاری مناسب طراحی شده، همچنان به Firmware قابل‌اعتماد نیاز دارد.

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

سابقه پاسخ‌گویی به مشکلات امنیتی

هیچ تولیدکننده‌ای نمی‌تواند نبود تمام آسیب‌پذیری‌ها را تضمین کند.

اما نحوه واکنش شرکت به مشکلات، سرعت انتشار اصلاحیه و شفافیت درباره دامنه خطر، اطلاعات مهمی درباره بلوغ امنیتی آن ارائه می‌کند.

مسیر تأمین معتبر

تهدیدهای مربوط به زنجیره تأمین، مستقل از کیفیت تولید عبارت بازیابی هستند.

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

سازگاری با نیازهای کاربر

بهترین کیف پول برای تمام کاربران یکسان نیست.

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

برای بررسی گزینه‌های مختلف می‌توانید مقاله بهترین کیف پول سخت‌افزاری در سال ۲۰۲۶ را مطالعه کنید.

پرسش‌های متداول درباره هک Coldcard و امنیت Seed Phrase

آیا کیف پول Coldcard در سال ۲۰۲۶ هک شد؟

بله. در تابستان ۲۰۲۶ نقصی در فرآیند تولید عبارت بازیابی بعضی نسخه‌های Firmware شناسایی شد که مهاجمان توانستند از آن برای بازسازی کلیدهای خصوصی و سرقت بیت‌کوین استفاده کنند.

آیا تمام مدل‌های Coldcard آسیب‌پذیر بودند؟

دامنه اطلاعیه رسمی شامل نسخه‌های مشخصی از Firmware مدل‌های Mk2، Mk3، Mk4، Mk5 و Q و بعضی شاخه‌های Edge است. وضعیت هر دستگاه باید براساس مدل و نسخه هنگام ایجاد Seed بررسی شود.

آیا نصب Firmware جدید کافی است؟

خیر. به‌روزرسانی، تولید Seedهای جدید را در نسخه اصلاح‌شده بهبود می‌دهد، اما Seed آسیب‌پذیر قبلی را تغییر نمی‌دهد. در موارد مشمول اطلاعیه، مهاجرت به عبارت جدید ضروری است.

آیا Coldcard Mk4 و Mk5 هم تحت تأثیر بودند؟

بله. اطلاعیه رسمی دامنه آسیب‌پذیری را به مدل‌های قدیمی محدود نکرده است. نسخه‌های معینی از Firmware این دستگاه‌ها نیز باید بررسی شوند.

آیا عبارت بازیابی ۲۴ کلمه‌ای همیشه امن است؟

خیر. امنیت به کیفیت آنتروپی اولیه و نحوه تولید عبارت بستگی دارد. اگر خروجی مولد قابل پیش‌بینی باشد، ۲۴ کلمه بودن به‌تنهایی امنیت مورد انتظار را تضمین نمی‌کند.

آیا کیف پول ایرگپ در برابر این حمله مصون است؟

خیر. ایرگپ مسیرهای ارتباطی دستگاه را محدود می‌کند، اما نمی‌تواند ضعف موجود در فرآیند تولید کلید را اصلاح کند.

آیا Passphrase می‌تواند از Seed ضعیف محافظت کند؟

یک Passphrase قوی و مستقل ممکن است لایه دفاعی مهمی ایجاد کند، اما ضعف Seed اصلی را اصلاح نمی‌کند. برای عبارت‌های مشمول اطلاعیه Coldcard، باید راهنمای مهاجرت سازنده دنبال شود.

آیا دستگاه‌های Ledger به همین نقص Coldcard مبتلا بودند؟

لجر در گزارش ۲ اوت ۲۰۲۶ اعلام کرد دستگاه‌هایش تحت تأثیر این آسیب‌پذیری مشخص Coldcard نیستند. این موضوع به معنی تضمین نبود تمام آسیب‌پذیری‌های احتمالی در محصولات لجر نیست.

آیا هکر برای سرقت بیت‌کوین باید عبارت بازیابی را ببیند؟

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

آیا خودمان می‌توانیم عبارت بازیابی امن بسازیم؟

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

جمع‌بندی؛ امنیت کیف پول از اولین عدد تصادفی آغاز می‌شود

حادثه Coldcard در سال ۲۰۲۶ یکی از نمونه‌های مهمی بود که نشان داد امنیت کیف پول سخت‌افزاری تنها به آفلاین‌بودن دستگاه یا محافظت از کلید خصوصی محدود نمی‌شود.

گاهی مشکل در همان لحظه‌ای ایجاد می‌شود که کیف پول برای نخستین بار ساخته می‌شود.

اگر داده تصادفی اولیه کیفیت کافی نداشته باشد، تمام کلیدهایی که بعداً از آن تولید می‌شوند ممکن است در معرض خطر قرار بگیرند.

در چنین شرایطی، قوی‌بودن الگوریتم رمزنگاری، داشتن PIN یا حتی نگهداری آفلاین عبارت بازیابی نمی‌تواند ضعف بنیادی Seed را جبران کند.

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

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

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

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

مهم‌ترین درس این پرونده را می‌توان در یک جمله خلاصه کرد:

کلید خصوصی تنها زمانی واقعاً امن است که از ابتدا با روشی امن و غیرقابل پیش‌بینی تولید شده باشد.


منابع مقاله

دسته‌بندی‌ها: اخبار کریپتو