هک ۲۱۰۰ کیف پول با یک باگ قدیمی؛ آسیب‌پذیری «Ill Bloom» میلیون‌ها دلار رمزارز را به باد داد!

۱۸ مرداد ۱۴۰۵

یک آسیب‌پذیری قدیمی در کتابخانه برنامه‌نویسی CryptoJS به هکرها اجازه داده با استفاده از رایانه‌های معمولی، عبارت بازیابی برخی کیف پول‌های را حدس بزنند و دارایی کاربران را تخلیه کنند. این آسیب‌پذیری که «Ill Bloom» نام گرفته، تاکنون بیش از ۲۱۰۰ آدرس در شبکه‌های بیت کوین، اتریوم، ترون، روت‌استاک و پالیگان را تحت

یک آسیب‌پذیری قدیمی در کتابخانه برنامه‌نویسی CryptoJS به هکرها اجازه داده با استفاده از رایانه‌های معمولی، عبارت بازیابی برخی کیف پول‌های را حدس بزنند و دارایی کاربران را تخلیه کنند. این آسیب‌پذیری که «Ill Bloom» نام گرفته، تاکنون بیش از ۲۱۰۰ آدرس در شبکه‌های بیت کوین، اتریوم، ترون، روت‌استاک و پالیگان را تحت تاثیر قرار داده و خسارت آن از ۵.۷ میلیون دلار فراتر رفته است. خطر اصلی این حمله در این است که مشکل صرفاً به یک کیف پول یا یک شبکه خاص محدود نمی‌شود. CryptoJS سال‌ها به‌عنوان یکی از اجزای پنهان صدها نرم‌افزار و کتابخانه دیگر مورد استفاده قرار گرفته و برخی توسعه‌دهندگان کیف پول نیز از قابلیت تولید اعداد تصادفی آن برای ساخت عبارت بازیابی استفاده کرده‌اند؛ قابلیتی که در نسخه‌های آسیب‌پذیر، امنیت لازم را نداشته است. باگ CryptoJS چگونه عبارت بازیابی کیف پول‌ها را آسیب‌پذیر کرد؟ یک عبارت بازیابی ۱۲ کلمه‌ای معمولاً از نظر رمزنگاری آن‌قدر ایمن است که شکستن آن با روش آزمون و خطای معمولی عملاً غیرممکن محسوب می‌شود. اما در برخی نسخه‌های ۳.x کتابخانه CryptoJS، از جمله نسخه ۳.۱.۲ و نسخه‌های پس از آن به‌جز ۳.۲.۰ و ۳.۲.۱، تابع تولید اعداد تصادفی دچار نقص بوده. به زبان ساده، این تابع به‌جای تولید اعداد کاملاً تصادفی، الگوهایی قابل پیش‌بینی ایجاد می‌کرد. در نتیجه، تعداد حالت‌های احتمالی برای عبارت بازیابی کیف پول‌ها به‌شدت کاهش می‌یافت و مهاجمان می‌توانستند با قدرت پردازشی رایانه‌های معمولی، گزینه‌های محتمل را یکی پس از دیگری بررسی کنند. مشکل زمانی جدی‌تر شد که CryptoJS در بسیاری از نرم‌افزارها به‌صورت مستقیم قابل مشاهده نبود و به‌عنوان یک وابستگی نرم‌افزاری در پس‌زمینه مورد استفاده قرار می‌گرفت. در نتیجه، ممکن بود توسعه‌دهندگان کیف پول از وجود این نقص در زیرساخت مورد استفاده خود اطلاع نداشته باشند. نخستین موج سرقت؛ ۳.۱۴ میلیون دلار در یک روز نخستین موج گسترده سرقت‌ها در تاریخ ۲۷ مه ۲۰۲۶ رخ داد. مهاجمان در تنها یک روز ۴۳۱ حساب را هدف قرار دادند و حدود ۳.۱۴ میلیون دلار از آنها خارج کردند. بیت کوین بیشترین سهم از این خسارت را به خود اختصاص داد و حدود ۲.۵۷ میلیون دلار از دارایی‌های سرقت‌شده مربوط به این شبکه بود. اتریوم با حدود ۲۸۶ هزار دلار، روت‌استاک با ۱۷۷ هزار دلار، ترون با ۸۱ هزار دلار و پالیگان با ۲۳ هزار دلار در رتبه‌های بعدی قرار داشتند. با ادامه بررسی‌ها، تعداد کیف پول‌ها و نرم‌افزارهای احتمالی تحت تأثیر نیز افزایش یافت. چرا آپدیت کیف پول برای نجات دارایی‌ها کافی نیست؟ یکی از مهم‌ترین نکات درباره آسیب‌پذیری Ill Bloom این است که به‌روزرسانی نرم‌افزار لزوماً دارایی‌های کاربران را نجات نمی‌دهد. اگر عبارت بازیابی یک کیف پول در زمانی تولید شده باشد که نرم‌افزار از نسخه آسیب‌پذیر CryptoJS استفاده می‌کرده، آن عبارت بازیابی از همان ابتدا از نظر رمزنگاری ضعیف بوده است. بنابراین حتی اگر توسعه‌دهنده بعدها باگ را برطرف کند، عبارت بازیابی قبلی همچنان قابل پیش‌بینی خواهد بود. تا ماه آگوست، نام چند کیف پول از جمله آر‌والت (RWallet)، بکسیو (Bexo Wallet)، نَن‌چت (NanChat)، بیت کوین لیبره (Bitcoin Libre) و مایلو ولت (Milo Wallet) در میان نرم‌افزارهای تحت تأثیر قرار گرفته مطرح شده است. برخی از این پروژه‌ها، از جمله مایلو و آر‌والت، حتی فعالیت خود را متوقف کرده‌اند. البته توسعه‌دهندگان بیت کوین لیبره نقص موجود در نسخه‌های قدیمی را برطرف کرده‌اند و نَن‌چت نیز یک پچ امنیتی جدیدی منتشر کرده است. در مورد بکسیو ولت نیز به‌روزرسانی جدید همچنان در انتظار تأیید اپ استورها قرار دارد. کاربران کیف پول‌های قدیمی چه کاری انجام دهند؟ کارشناسان توصیه می‌کنند کاربرانی که احتمال می‌دهند عبارت بازیابی کیف پول آنها با نسخه آسیب‌پذیر CryptoJS تولید شده باشد، صرفاً به نصب آخرین نسخه نرم‌افزار اکتفا نکنند. ابتدا باید آدرس‌های عمومی مرتبط با کیف پول بررسی شود و در صورت مشاهده نشانه‌های خطر، دارایی‌ها به یک کیف پول کاملاً جدید منتقل شوند. نکته مهم این است که برای انتقال دارایی‌ها نباید منتظر وقوع سرقت ماند. اگر عبارت بازیابی قبلی به دلیل ضعف موجود در فرایند تولید اعداد تصادفی قابل حدس باشد، مهاجم می‌تواند در هر زمان به کلید خصوصی مربوط به آن دست پیدا کند. به همین دلیل، کارشناسان توصیه می‌کنند از نگهداری مبالغ قابل‌توجه در کیف پول‌هایی که عبارت بازیابی آنها داخل مرورگر یا با استفاده از زیرساخت‌های نرم‌افزاری نامطمئن تولید شده است، خودداری شود. یک نقص قدیمی، تهدیدی برای امنیت کیف پول‌های امروزی ماجرای Ill Bloom بار دیگر نشان می‌دهد امنیت یک کیف پول فقط به کدهای اختصاصی آن وابسته نیست. استفاده از یک کتابخانه شخص ثالث که در ظاهر ارتباط مستقیمی با مدیریت دارایی ندارد، می‌تواند امنیت کلیدهای خصوصی میلیون‌ها کاربر را تحت تأثیر قرار دهد. از سوی دیگر، این حمله یک تفاوت مهم با بسیاری از هک‌های رایج دارد: در اینجا لزوماً نیازی به نفوذ مستقیم به سرور صرافی یا دستگاه کاربر وجود ندارد. اگر عبارت بازیابی از ابتدا به شکل ناامن تولید شده باشد، مهاجم می‌تواند با بازسازی احتمالات و بدون دسترسی فیزیکی به دستگاه، به دارایی‌های کاربر برسد. برای کاربران نیز پیامد روشن است؛ در صورتی که کیف پولی از زیرساخت آسیب‌پذیر برای تولید عبارت بازیابی استفاده کرده باشد، ساخت یک کیف پول کاملاً جدید و انتقال دارایی‌ها به آن، امن‌ترین راه برای کنار گذاشتن کلیدهای مشکوک خواهد بود
هک ۲۱۰۰ کیف پول با یک باگ قدیمی؛ آسیب‌پذیری «Ill Bloom» میلیون‌ها دلار رمزارز را به باد داد! | اخبار تریدیار | تریدیار