زیلیکا اعلام کرد نقصی پنجساله در اپلیکیشن این پروژه روی کیفپول سختافزاری Ledger، عامل اصلی سرقت 683,130,969.66 توکن ZIL طی 66 تراکنش بوده است. بر اساس گزارش پسارخداد تیم زیلیکا، این باگ از سال 2019 در کد امضای تراکنشها وجود داشته و باعث میشده اپلیکیشن بهجای استفاده از 40 بایت تصادفی تولیدشده، هشت بایت صفر باقیمانده را در بافر امضا کپی کند و همان مقدار از آنتروپی واقعی را دور بریزد. نتیجه این خطا نشت حدود 64 بیت اطلاعات از کلید خصوصی در هر امضای آسیبدیده بوده؛ بهطوریکه با در اختیار داشتن تنها چهار تا پنج امضای عمومی روی بلاکچین، مهاجم میتوانسته در عرض چند ثانیه و با سختافزار معمولی، کلید خصوصی کاربر را بازسازی کند.
بازسازی تاریخی زیلیکا نشان میدهد اولین سرقت اثباتشده به تاریخ 4 مارس بازمیگردد، اما این موضوع تا 19 ژوئیه که صرافی KuCoin از تراکنشهای خروجی غیرعادی در یکی از کیفپولهای سرد خود خبر داد، کشف نشده بود. طبق گزارشها، 6,772 حساب کاربری در معرض این آسیبپذیری قرار داشتهاند. آخرین تراکنش مهاجم در 20 ژوئیه و ساعت 09:19:09 به وقت جهانی ثبت شد و تیم زیلیکا کمتر از چهار ساعت بعد، تراکنشهای نسخه قدیمی (legacy) شبکه را غیرفعال کرد.
در حال حاضر تراکنشهای legacy همچنان متوقف است و انتقال کامل کاربران به نسخه سازگار با اتریوم (Zilliqa EVM) منوط به انجام یک ممیزی امنیتی مستقل اعلام شده است. این حادثه بار دیگر ریسکهای پنهان در پیادهسازی نرمافزاری کیفپولهای سختافزاری را برجسته میکند؛ حتی دستگاههایی که بهطور کلی امن تلقی میشوند، در صورت باگ در لایه اپلیکیشن مخصوص هر بلاکچین میتوانند کلیدهای خصوصی را افشا کنند. برای معاملهگرانی که از Ledger یا کیفپولهای مشابه استفاده میکنند، این خبر یادآوریای است که بهروزرسانی منظم فریمور و اپلیکیشنها و پرهیز از نگهداری دارایی روی نسخههای قدیمی نرمافزار، اهمیت بالایی دارد.
این خبر ترجمه و بازنویسی گزارشی از cryptoslate با عنوان اصلی «Zilliqa points to hardware wallet flaw discarding entropy to expose crypto keys, enabling 683M ZIL theft» است. تحلیل و جمعبندی فارسی از تریدیار است.